@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.p.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_53b9c1a8-module__akxa-W__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_53b9c1a8-module__akxa-W__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(../media/53e45098eac42afb-s.p.1uklb5el4zgvl.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(../media/85ea1b3aadcead52-s.05i4gb4p0piv4.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:400;font-display:swap;src:url(../media/3c285486269019b7-s.p.2g-0we2o5_ngd.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(../media/8ffc259da9d23054-s.p.10uaeld2xxvpt.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9e486ba39c38fb8a-s.2bbpeapf-lbjw.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-weight:700;font-display:swap;src:url(../media/6f42e0a3b0519c4d-s.p.13y-iz2lazqtb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro Fallback;src:local(Arial);ascent-override:90.61%;descent-override:24.01%;line-gap-override:0.0%;size-adjust:110.36%}.be_vietnam_pro_2f50c9c3-module__Rt6_Fa__className{font-family:Be Vietnam Pro,Be Vietnam Pro Fallback;font-style:normal}.be_vietnam_pro_2f50c9c3-module__Rt6_Fa__variable{--font-be-vietnam-pro:"Be Vietnam Pro", "Be Vietnam Pro Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_8836b474-module__J2rXwW__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_8836b474-module__J2rXwW__variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#fff;--color-text:#1a1a1a;--color-text-light:#555;--color-text-muted:#888;--color-accent:#c9a96e;--color-accent-dark:#b08d4f;--color-overlay:#0009;--color-overlay-light:#0000004d;--color-glass:#ffffffd9;--color-glass-border:#ffffff4d;--color-card-bg:#f9f8f6;--color-border:#e8e5e0;--color-error:#d32f2f;--color-success:#2e7d32;--font-heading:var(--font-fraunces), "Fraunces", Georgia, serif;--font-body:var(--font-be-vietnam-pro), "Be Vietnam Pro", "Segoe UI", sans-serif;--font-nav:var(--font-inter), "Inter", "Helvetica Neue", sans-serif;--font-size-hero:clamp(42px, 5.5vw, 67px);--font-size-heading:clamp(32px, 4vw, 52px);--font-size-subheading:clamp(20px, 2.5vw, 28px);--font-size-body:clamp(16px, 1.5vw, 22px);--font-size-small:clamp(12px, 1vw, 14px);--font-size-nav:clamp(15px, 1.3vw, 21px);--font-size-badge:7px;--spacing-xs:8px;--spacing-sm:16px;--spacing-md:32px;--spacing-lg:64px;--spacing-xl:96px;--spacing-2xl:128px;--header-height:40px;--max-width:1400px;--content-padding:clamp(20px, 5vw, 80px);--transition-fast:.2s ease;--transition-base:.3s ease;--transition-slow:.6s cubic-bezier(.16, 1, .3, 1);--shadow-sm:0 2px 8px #0000000f;--shadow-md:0 4px 20px #0000001a;--shadow-lg:0 12px 40px #00000026;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-full:50%}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-text);background-color:var(--color-bg);line-height:1.7;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}ul,ol{list-style:none}.header{z-index:1000;width:100%;padding:0 var(--content-padding);height:var(--header-height);transition:background var(--transition-base), backdrop-filter var(--transition-base), box-shadow var(--transition-base), transform var(--transition-base);justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0}.header--hidden{transform:translateY(-100%)}.header-hover-zone{z-index:1001;width:100%;height:30px;position:fixed;top:0;left:0}.header--scrolled{background:var(--color-glass);-webkit-backdrop-filter:blur(20px)saturate(180%);box-shadow:0 1px 0 var(--color-glass-border), var(--shadow-sm)}.header__logo{align-items:center;gap:var(--spacing-xs);display:flex}.header__logo-img{width:35px;height:35px;transition:transform var(--transition-base)}.header__logo-img:hover{transform:scale(1.05)}.header__nav{align-items:center;gap:var(--spacing-md);display:flex}.header__nav-link{font-family:var(--font-nav);font-size:var(--font-size-nav);color:#fff;transition:color var(--transition-fast);padding:4px 0;font-weight:500;position:relative}.header--scrolled .header__nav-link{color:var(--color-text)}.header__nav-link:after{content:"";background:var(--color-accent);width:0;height:2px;transition:width var(--transition-base);position:absolute;bottom:-2px;left:0}.header__nav-link:hover:after,.header__nav-link--active:after{width:100%}.header__hamburger{cursor:pointer;z-index:1001;flex-direction:column;gap:5px;padding:8px;display:none}.header__hamburger-line{width:24px;height:2px;transition:all var(--transition-base);background:#fff;border-radius:2px}.header--scrolled .header__hamburger-line{background:var(--color-text)}.header__hamburger--open .header__hamburger-line:first-child{transform:rotate(45deg)translate(5px,5px)}.header__hamburger--open .header__hamburger-line:nth-child(2){opacity:0}.header__hamburger--open .header__hamburger-line:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.header__mobile-nav{-webkit-backdrop-filter:blur(30px);justify-content:center;align-items:center;gap:var(--spacing-lg);z-index:999;background:#fffffff7;flex-direction:column;width:100%;height:100dvh;display:none;position:fixed;top:0;left:0}.header__mobile-nav--open{display:flex}.header__mobile-nav-link{font-family:var(--font-heading);color:var(--color-text);opacity:0;font-size:clamp(28px,5vw,36px);animation:.4s forwards mobileNavFadeIn;transform:translateY(20px)}.header__mobile-nav-link:first-child{animation-delay:.1s}.header__mobile-nav-link:nth-child(2){animation-delay:.2s}@keyframes mobileNavFadeIn{to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.header__nav{display:none}.header__hamburger{display:flex}.header__logo-img{width:50px;height:50px}}.hero{width:100%;height:100dvh;min-height:600px;position:relative;overflow:hidden}.hero__image-wrapper{z-index:0;position:absolute;inset:0}.hero__image{object-fit:cover;object-position:center 30%;width:100%;height:100%}@media (max-width:768px){.hero__image{object-position:center 20%}}.hero__overlay{z-index:1;background:linear-gradient(#0000 30%,#00000026 60%,#0000008c 100%);position:absolute;inset:0}.hero__content{z-index:2;padding:var(--spacing-lg) var(--content-padding) var(--spacing-lg);justify-content:space-between;align-items:flex-end;display:flex;position:absolute;bottom:0;left:0;right:0}.hero__text{color:#fff}.hero__text-small{font-family:var(--font-body);font-size:var(--font-size-small);text-transform:uppercase;letter-spacing:3px;margin-bottom:var(--spacing-xs);opacity:.85}.hero__text-name{font-family:var(--font-heading);font-size:var(--font-size-hero);color:#fff;font-weight:400;line-height:1.05}.hero__badge{text-align:right;color:#fff}.hero__badge-title{font-family:var(--font-heading);font-size:var(--font-size-hero);color:#fff;font-weight:400;line-height:1.05}.hero__badge-list{margin-top:var(--spacing-xs);text-align:right}.hero__badge-item{font-family:var(--font-nav);font-size:var(--font-size-badge);text-transform:uppercase;letter-spacing:2px;opacity:.75;color:#fff;line-height:1.8}@media (max-width:768px){.hero__content{align-items:flex-start;gap:var(--spacing-md);padding-bottom:var(--spacing-md);flex-direction:column}.hero__badge,.hero__badge-list{text-align:left}}.quote-section{background:var(--color-bg);padding:var(--spacing-2xl) var(--content-padding);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:70vh;display:flex}.quote-section__title{font-family:var(--font-heading);font-size:var(--font-size-hero);color:var(--color-text);margin-bottom:var(--spacing-md);font-weight:400;line-height:1.2}.quote-section__subtitle{font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-text);max-width:700px;line-height:2}.section-chon{padding:var(--spacing-xl) var(--content-padding);background:var(--color-bg)}.section-chon__grid{max-width:var(--max-width);gap:20px;margin:0 auto;display:flex}.section-chon__card{border-radius:var(--radius-md);cursor:pointer;aspect-ratio:3/4;flex:1;position:relative;overflow:hidden}.section-chon__card-image{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.16,1,.3,1)}.section-chon__card:hover .section-chon__card-image{transform:scale(1.08)}.section-chon__card-overlay{padding:var(--spacing-md);transition:background var(--transition-base);background:linear-gradient(#0000 0%,#0000001a 50%,#0009 100%);align-items:flex-end;display:flex;position:absolute;inset:0}.section-chon__card:hover .section-chon__card-overlay{background:linear-gradient(#0000 0%,#0003 40%,#000000b3 100%)}.section-chon__card-text{font-family:var(--font-heading);font-size:var(--font-size-heading);color:#fff;white-space:pre-line;line-height:1.3}.section-chon__card--active{ring:3px solid var(--color-accent);box-shadow:0 0 0 3px var(--color-accent), 0 8px 24px #0000004d}.section-chon__card--active .section-chon__card-overlay{background:linear-gradient(#0000 0%,#00000026 50%,#c9a96eb3 100%)}@media (max-width:768px){.section-chon__grid{flex-direction:column;gap:16px}.section-chon__card{aspect-ratio:16/9}}.chapter-header{padding:var(--spacing-xl) var(--content-padding);text-align:center;background:var(--color-bg)}.chapter-header__title{font-family:var(--font-heading);font-size:var(--font-size-hero);color:var(--color-text);margin-bottom:var(--spacing-sm);font-weight:400}.chapter-header__subtitle{font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-text-light);max-width:600px;margin:0 auto}.chapter-header__divider{background:var(--color-accent);width:60px;height:1px;margin:var(--spacing-md) auto 0}.gallery{background:var(--color-bg);width:100%}.gallery__grid{grid-template-columns:repeat(12,1fr);gap:0;width:100%;display:grid}.gallery__item{cursor:pointer;grid-column:span 4;position:relative;overflow:hidden}.gallery__item--wide{grid-column:span 8}.gallery__item--full{grid-column:span 12}.gallery__item--half{grid-column:span 6}.gallery__item--third{grid-column:span 4}.gallery__item--quarter{grid-column:span 3}.gallery__item--two-thirds{grid-column:span 8}.gallery__item--tall{grid-row:span 2}.gallery__item-image{object-fit:cover;width:100%;height:100%;transition:transform 1s cubic-bezier(.16,1,.3,1);display:block}.gallery__item:hover .gallery__item-image{transform:scale(1.04)}.gallery__item--landscape{aspect-ratio:3/2}.gallery__item--portrait{aspect-ratio:2/3}.gallery__item--square{aspect-ratio:1}.gallery__text-panel{padding:var(--spacing-lg) var(--spacing-md);background:var(--color-bg);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.gallery__text-panel--dark{background:var(--color-text);color:#fff}.gallery__text-panel-title{font-family:var(--font-heading);font-size:var(--font-size-hero);margin-bottom:var(--spacing-sm);color:inherit;font-weight:400}.gallery__text-panel-body{font-family:var(--font-body);font-size:var(--font-size-body);color:inherit;opacity:.8;max-width:400px;line-height:1.8}@media (max-width:768px){.gallery__grid{grid-template-columns:repeat(6,1fr)}.gallery__item,.gallery__item--wide,.gallery__item--full,.gallery__item--half,.gallery__item--third{grid-column:span 6}.gallery__item--quarter{grid-column:span 3}.gallery__item--two-thirds{grid-column:span 6}.gallery__item--tall{grid-row:span 1}}.lightbox{z-index:9999;opacity:0;visibility:hidden;transition:opacity var(--transition-base), visibility var(--transition-base);background:#000000f2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox--open{opacity:1;visibility:visible}.lightbox__image-wrapper{justify-content:center;align-items:center;max-width:90vw;max-height:90vh;display:flex;position:relative;overflow:hidden}.lightbox__image{object-fit:contain;max-width:90vw;max-height:90vh;transition:transform var(--transition-base);-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.lightbox__close{color:#fff;border-radius:var(--radius-full);width:48px;height:48px;transition:background var(--transition-fast);z-index:10001;background:#ffffff1a;justify-content:center;align-items:center;font-size:28px;display:flex;position:absolute;top:20px;right:20px}.lightbox__close:hover{background:#ffffff40}.lightbox__nav{color:#fff;border-radius:var(--radius-full);width:56px;height:56px;transition:background var(--transition-fast);z-index:10001;background:#ffffff1a;justify-content:center;align-items:center;font-size:24px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox__nav:hover{background:#ffffff40}.lightbox__nav--prev{left:20px}.lightbox__nav--next{right:20px}.lightbox__counter{color:#ffffffb3;font-family:var(--font-nav);letter-spacing:2px;z-index:10001;font-size:14px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.music-player{z-index:900;position:fixed;bottom:24px;right:24px}.music-player__btn{border-radius:var(--radius-full);background:var(--color-text);color:#fff;width:56px;height:56px;box-shadow:var(--shadow-lg);transition:transform var(--transition-base), background var(--transition-base);cursor:pointer;justify-content:center;align-items:center;gap:3px;display:flex}.music-player__btn:hover{transform:scale(1.1)}.music-player__btn:active{transform:scale(.95)}.music-player__bar{width:3px;transition:height var(--transition-fast);background:#fff;border-radius:2px}.music-player__bar--1{height:8px}.music-player__bar--2{height:16px}.music-player__bar--3{height:12px}.music-player__bar--4{height:20px}.music-player--playing .music-player__bar--1{animation:.6s ease-in-out infinite alternate musicBar1}.music-player--playing .music-player__bar--2{animation:.5s ease-in-out infinite alternate musicBar2}.music-player--playing .music-player__bar--3{animation:.7s ease-in-out infinite alternate musicBar3}.music-player--playing .music-player__bar--4{animation:.4s ease-in-out infinite alternate musicBar4}.music-player--paused .music-player__bar{animation:none;height:3px!important}@keyframes musicBar1{0%{height:8px}to{height:22px}}@keyframes musicBar2{0%{height:16px}to{height:10px}}@keyframes musicBar3{0%{height:12px}to{height:24px}}@keyframes musicBar4{0%{height:20px}to{height:6px}}@media (max-width:768px){.music-player{bottom:16px;right:16px}.music-player__btn{width:48px;height:48px}}.scroll-reveal{opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(40px)}.scroll-reveal--visible{opacity:1;transform:translateY(0)}.scroll-reveal--delay-1{transition-delay:.1s}.scroll-reveal--delay-2{transition-delay:.2s}.scroll-reveal--delay-3{transition-delay:.3s}.scroll-reveal--delay-4{transition-delay:.4s}.scroll-reveal--from-left{opacity:0;transform:translate(-40px)}.scroll-reveal--from-left.scroll-reveal--visible{opacity:1;transform:translate(0)}.scroll-reveal--from-right{opacity:0;transform:translate(40px)}.scroll-reveal--from-right.scroll-reveal--visible{opacity:1;transform:translate(0)}.scroll-reveal--scale{opacity:0;transform:scale(.9)}.scroll-reveal--scale.scroll-reveal--visible{opacity:1;transform:scale(1)}.wishes-page{padding-top:calc(var(--header-height) + var(--spacing-lg));background:var(--color-bg);min-height:100vh}.wishes-page__header{text-align:center;padding:var(--spacing-lg) var(--content-padding)}.wishes-page__title{font-family:var(--font-heading);font-size:var(--font-size-heading);color:var(--color-text);margin-bottom:var(--spacing-sm);font-weight:400}.wishes-page__subtitle{font-family:var(--font-body);font-size:var(--font-size-body);color:var(--color-text-light)}.wishes-form{max-width:640px;padding:0 var(--content-padding) var(--spacing-lg);margin:0 auto}.wishes-form__group{margin-bottom:var(--spacing-md)}.wishes-form__label{font-family:var(--font-nav);color:var(--color-text);margin-bottom:var(--spacing-xs);letter-spacing:.5px;font-size:14px;font-weight:600;display:block}.wishes-form__input,.wishes-form__textarea{width:100%;font-family:var(--font-body);color:var(--color-text);background:var(--color-card-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:14px 18px;font-size:16px}.wishes-form__input:focus,.wishes-form__textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #c9a96e26}.wishes-form__textarea{resize:vertical;min-height:140px}.wishes-form__upload{border:2px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg) var(--spacing-md);text-align:center;cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast)}.wishes-form__upload:hover,.wishes-form__upload--dragover{border-color:var(--color-accent);background:#c9a96e0a}.wishes-form__upload-icon{margin-bottom:var(--spacing-sm);opacity:.5;font-size:40px}.wishes-form__upload-text{color:var(--color-text-muted);font-size:14px}.wishes-form__upload-text strong{color:var(--color-accent)}.wishes-form__preview{gap:var(--spacing-xs);margin-top:var(--spacing-sm);flex-wrap:wrap;display:flex}.wishes-form__preview-item{border-radius:var(--radius-sm);width:80px;height:80px;position:relative;overflow:hidden}.wishes-form__preview-item img{object-fit:cover;width:100%;height:100%}.wishes-form__preview-remove{color:#fff;border-radius:var(--radius-full);background:#0009;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;display:flex;position:absolute;top:4px;right:4px}.wishes-form__submit{width:100%;font-family:var(--font-nav);letter-spacing:1px;text-transform:uppercase;color:#fff;background:var(--color-text);border-radius:var(--radius-sm);transition:background var(--transition-fast), transform var(--transition-fast);padding:16px;font-size:16px;font-weight:600}.wishes-form__submit:hover{background:#333;transform:translateY(-1px)}.wishes-form__submit:active{transform:translateY(0)}.wishes-form__submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.wishes-board{padding:var(--spacing-lg) var(--content-padding);max-width:var(--max-width);margin:0 auto}.wishes-board__title{font-family:var(--font-heading);font-size:var(--font-size-subheading);color:var(--color-text);text-align:center;margin-bottom:var(--spacing-lg);font-weight:400}.wishes-board__grid{columns:3;column-gap:var(--spacing-sm)}.wishes-board__card{break-inside:avoid;margin-bottom:var(--spacing-sm);background:var(--color-card-bg);border-radius:var(--radius-md);padding:var(--spacing-md);border:1px solid var(--color-border);transition:transform var(--transition-base), box-shadow var(--transition-base)}.wishes-board__card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.wishes-board__card-name{font-family:var(--font-nav);color:var(--color-text);margin-bottom:var(--spacing-xs);font-size:14px;font-weight:700}.wishes-board__card-message{font-family:var(--font-body);color:var(--color-text-light);margin-bottom:var(--spacing-sm);font-size:15px;line-height:1.7}.wishes-board__card-image{border-radius:var(--radius-sm);width:100%;margin-bottom:var(--spacing-xs)}.wishes-board__card-date{color:var(--color-text-muted);font-size:12px}@media (max-width:768px){.wishes-board__grid{columns:1}}.admin-page{padding-top:calc(var(--header-height) + var(--spacing-lg));background:var(--color-card-bg);min-height:100vh}.admin-page__header{padding:var(--spacing-md) var(--content-padding);background:var(--color-bg);border-bottom:1px solid var(--color-border)}.admin-page__title{font-family:var(--font-heading);font-size:var(--font-size-subheading);color:var(--color-text);font-weight:400}.admin-tabs{background:var(--color-bg);padding:0 var(--content-padding);border-bottom:1px solid var(--color-border);gap:0;display:flex}.admin-tabs__tab{font-family:var(--font-nav);color:var(--color-text-muted);transition:color var(--transition-fast), border-color var(--transition-fast);cursor:pointer;border-bottom:2px solid #0000;padding:14px 24px;font-size:14px;font-weight:600}.admin-tabs__tab:hover{color:var(--color-text)}.admin-tabs__tab--active{color:var(--color-text);border-bottom-color:var(--color-accent)}.admin-content{padding:var(--spacing-md) var(--content-padding);max-width:var(--max-width);margin:0 auto}.admin-card{background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border);padding:var(--spacing-md);margin-bottom:var(--spacing-sm);transition:box-shadow var(--transition-fast)}.admin-card:hover{box-shadow:var(--shadow-sm)}.admin-card__header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.admin-card__name{font-family:var(--font-nav);color:var(--color-text);font-size:16px;font-weight:700}.admin-card__date{color:var(--color-text-muted);font-size:12px}.admin-card__message{font-family:var(--font-body);color:var(--color-text-light);margin-bottom:var(--spacing-sm);font-size:15px;line-height:1.6}.admin-card__actions{gap:var(--spacing-xs);display:flex}.admin-card__btn{font-family:var(--font-nav);border-radius:var(--radius-sm);transition:background var(--transition-fast), color var(--transition-fast);padding:8px 16px;font-size:13px;font-weight:600}.admin-card__btn--approve{color:var(--color-success);background:#2e7d321a}.admin-card__btn--approve:hover{background:var(--color-success);color:#fff}.admin-card__btn--delete{color:var(--color-error);background:#d32f2f1a}.admin-card__btn--delete:hover{background:var(--color-error);color:#fff}.container{max-width:var(--max-width);padding:0 var(--content-padding);margin:0 auto}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page-enter{opacity:0;transform:translateY(16px)}.page-enter-active{opacity:1;transition:opacity .4s,transform .4s;transform:translateY(0)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#00000026;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#0000004d}::selection{color:var(--color-text);background:#c9a96e4d}body:after{content:"";height:100px;display:block}.wishes-page{padding-top:var(--header-height);background-color:var(--color-bg);background-image:url(/bg-wishboard.jpg);background-position:50%;background-size:cover;background-attachment:fixed;min-height:100vh;margin-bottom:-100px;padding-bottom:100px}.wishes-hero{text-align:center;padding:var(--spacing-md) var(--content-padding);margin-bottom:var(--spacing-md);background:0 0;flex-direction:column;align-items:center;display:flex}.wishes-hero h1{font-family:var(--font-heading);color:#fff;margin-bottom:4px;font-size:32px}.wishes-hero p{color:#fff;margin:0;font-size:16px}.fab-button{background:var(--color-accent);color:#fff;box-shadow:var(--shadow-md);cursor:pointer;transition:transform var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);border:none;border-radius:50px;align-items:center;gap:8px;margin-top:20px;padding:12px 24px;font-size:16px;font-weight:600;display:inline-flex}.fab-button:hover{background:var(--color-accent-dark);transform:translateY(-2px)scale(1.02);box-shadow:0 8px 24px #c9a96e66}.modal-overlay{background:var(--color-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:999;opacity:0;visibility:hidden;width:100vw;height:100vh;transition:opacity var(--transition-base), visibility var(--transition-base);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;left:0}.modal-overlay.open{opacity:1;visibility:visible}.wishes-modal{background:var(--color-bg);border-radius:var(--radius-lg);width:100%;max-width:500px;box-shadow:var(--shadow-lg);z-index:1000;transition:transform var(--transition-base), opacity var(--transition-base);opacity:0;flex-direction:column;max-height:90vh;display:flex;transform:translateY(20px)scale(.95)}.modal-overlay.open .wishes-modal{opacity:1;transform:translateY(0)scale(1)}.modal-header{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.modal-header h2{font-family:var(--font-heading);color:var(--color-text);font-size:24px}.modal-close{color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;font-size:28px;line-height:1}.modal-close:hover{color:var(--color-error)}.wishes-form{padding:var(--spacing-md);gap:var(--spacing-sm);flex-direction:column;display:flex;overflow-y:auto}.wishes-form input,.wishes-form textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:var(--color-card-bg);padding:16px;font-family:inherit;font-size:16px}.wishes-form textarea{resize:vertical;min-height:120px}.wishes-form input:focus,.wishes-form textarea:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #c9a96e33}.upload-zone{border:2px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);text-align:center;cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);background:#fdfbf9}.upload-zone:hover,.upload-zone.dragover{border-color:var(--color-accent);background:#c9a96e0d}.upload-previews{grid-template-columns:1fr;gap:12px;margin-top:8px;display:grid}.upload-preview{aspect-ratio:1;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);max-width:200px;margin:0 auto;position:relative;overflow:hidden}.upload-preview img,.upload-preview video{object-fit:cover;width:100%;height:100%}.upload-preview-remove{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:16px;line-height:1;display:flex;position:absolute;top:4px;right:4px}.upload-preview-remove:hover{background:var(--color-error)}.submit-btn{background:var(--color-text);color:#fff;border-radius:var(--radius-md);transition:background var(--transition-fast), transform var(--transition-fast);margin-top:16px;padding:16px;font-size:18px;font-weight:600}.submit-btn:hover:not(:disabled){background:var(--color-accent);transform:translateY(-2px)}.submit-btn:disabled{background:var(--color-border);color:var(--color-text-muted);cursor:not-allowed}.zoom-controls{z-index:100;flex-direction:column;gap:12px;display:flex;position:fixed;top:50%;right:20px;transform:translateY(-50%)}.zoom-controls button{border:1px solid var(--color-border);width:44px;height:44px;box-shadow:var(--shadow-md);color:var(--color-text);cursor:pointer;background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;font-size:24px;transition:all .2s;display:flex}.zoom-controls button:hover{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.shape-board-container{justify-content:center;gap:calc(4vw * var(--zoom,1));padding:0 4vw var(--spacing-xl);flex-wrap:nowrap;max-width:100%;margin:0 auto;display:flex}.shape-grid{width:calc(42vw * var(--zoom,1));max-width:calc(700px * var(--zoom,1));gap:2px;display:grid}.grid-cell{aspect-ratio:1;cursor:pointer;width:100%;transition:transform var(--transition-fast), box-shadow var(--transition-fast), z-index 0s;background-color:var(--color-border);opacity:0;border-radius:4px;animation:.6s cubic-bezier(.16,1,.3,1) forwards fadeUp;position:relative;overflow:hidden;transform:translateY(10px)scale(.9)}.grid-cell:hover{box-shadow:var(--shadow-lg);z-index:10;border:2px solid #fff;transform:scale(1.5)}.grid-cell.empty{cursor:default;opacity:1;background:0 0;animation:none;transform:none}.grid-cell.empty:hover{box-shadow:none;z-index:0;border:none;transform:none}.grid-cell-content{color:#fff;width:100%;height:100%;font-size:clamp(10px,1.5vw,16px);font-weight:700;font-family:var(--font-heading);text-transform:uppercase;justify-content:center;align-items:center;display:flex}.grid-cell-content img,.grid-cell-content video{object-fit:cover;width:100%;height:100%}.polaroid-overlay{background:var(--color-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1001;width:100vw;height:100vh;animation:fadeIn var(--transition-fast) forwards;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;left:0}.polaroid-card{background:#fff;border-radius:4px;width:100%;max-width:400px;padding:20px 20px 40px;animation:.4s cubic-bezier(.175,.885,.32,1.275) forwards popIn;position:relative;transform:rotate(-2deg);box-shadow:0 10px 40px #0000004d}.polaroid-card:after{content:"";z-index:2;background:#fff6;border:1px solid #0000000d;width:80px;height:30px;position:absolute;top:-10px;left:50%;transform:translate(-50%);box-shadow:0 1px 3px #0000001a}.polaroid-close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:40px;line-height:1;position:absolute;top:-40px;right:-20px}.polaroid-media{aspect-ratio:1;background:#000;justify-content:center;align-items:center;width:100%;margin-bottom:24px;display:flex;overflow:hidden}.polaroid-media img,.polaroid-media video{object-fit:cover;width:100%;height:100%}.polaroid-media-placeholder{color:#fff;width:100%;height:100%;font-size:64px;font-family:var(--font-heading);justify-content:center;align-items:center;display:flex}.polaroid-text{text-align:center}.polaroid-message{font-family:"Caveat", var(--font-heading);color:#333;margin-bottom:12px;font-size:24px;line-height:1.4;transform:rotate(-1deg)}.polaroid-author{font-family:var(--font-body);color:#777;text-transform:uppercase;letter-spacing:1px;font-size:14px}@keyframes popIn{0%{opacity:0;transform:scale(.8)rotate(-10deg)translateY(50px)}to{opacity:1;transform:scale(1)rotate(-2deg)translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{to{opacity:1;transform:translateY(0)scale(1)}}.highlight-section{max-width:1200px;padding:0 var(--content-padding);margin:60px auto 80px}.highlight-title{text-align:center;font-family:var(--font-heading);color:#fff;text-shadow:0 2px 4px #00000080;margin-bottom:40px;font-size:36px;position:relative}.highlight-title:after{content:"";background:var(--color-accent);border-radius:2px;width:60px;height:3px;margin:16px auto 0;display:block}.highlight-grid{flex-wrap:wrap;justify-content:center;gap:30px;display:flex}.highlight-card{background:#fff;border:1px solid #c9a96e4d;border-radius:12px;flex-direction:column;width:calc(33.333% - 20px);min-width:300px;max-width:380px;transition:transform .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000026}.highlight-card:hover{transform:translateY(-10px);box-shadow:0 15px 40px #0003}.highlight-media{object-fit:cover;border-bottom:2px solid var(--color-accent);background:#f5f5f5;width:100%;height:280px}.highlight-content{background:#fffdf9;flex-direction:column;flex:1;padding:24px;display:flex}.highlight-message{font-family:"Caveat", var(--font-heading);color:#333;flex:1;margin-bottom:24px;font-size:24px;line-height:1.5}.highlight-author{color:var(--color-accent-dark);text-align:right;text-transform:uppercase;letter-spacing:1px;border-top:1px dashed #ddd;padding-top:16px;font-size:16px;font-weight:700}.highlight-badge{background:var(--color-accent);color:#fff;z-index:10;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:700;display:flex;position:absolute;top:16px;right:16px;box-shadow:0 4px 12px #0003}@media (max-width:768px){.highlight-card{width:100%;max-width:450px}}.story-wish-cta{background:var(--color-bg);justify-content:center;padding:60px 20px 20px;display:flex}.wish-cta-button{background:var(--color-accent);color:#fff;font-family:var(--font-heading);border-radius:100px;align-items:center;gap:12px;padding:16px 32px;font-size:18px;font-weight:600;text-decoration:none;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s;display:inline-flex;box-shadow:0 10px 30px -10px #0000004d}.wish-cta-button:hover{transform:translateY(-5px)scale(1.05);box-shadow:0 15px 35px -10px #0006}.phase-tab-bar{background:var(--color-bg);z-index:90;border-bottom:1px solid var(--color-border);justify-content:center;gap:8px;padding:40px 20px 32px;display:flex;position:sticky;top:60px}.phase-tab{border:2px solid var(--color-border);background:var(--color-bg);cursor:pointer;font-family:var(--font-body);border-radius:100px;flex-direction:column;align-items:center;gap:2px;padding:12px 28px;transition:all .3s;display:flex}.phase-tab__number{font-family:var(--font-heading);color:var(--color-text-muted);font-size:22px;font-weight:700;line-height:1;transition:color .3s}.phase-tab__label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;font-size:11px;transition:color .3s}.phase-tab:hover{border-color:var(--color-accent);transform:translateY(-2px)}.phase-tab--active{background:var(--color-accent);border-color:var(--color-accent)}.phase-tab--active .phase-tab__number{color:#fff}.phase-tab--active .phase-tab__label{color:#ffffffd9}.phase-sidebar{z-index:100;flex-direction:column;gap:10px;display:flex;position:fixed;top:50%;right:16px;transform:translateY(-50%)}.phase-sidebar__btn{border:2px solid var(--color-glass-border);background:var(--color-glass);-webkit-backdrop-filter:blur(10px);width:44px;height:44px;color:var(--color-text);font-family:var(--font-heading);cursor:pointer;box-shadow:var(--shadow-md);border-radius:50%;justify-content:center;align-items:center;font-size:15px;font-weight:700;transition:all .3s;display:flex}.phase-sidebar__btn:hover{border-color:var(--color-accent);color:var(--color-accent);transform:scale(1.15)}.phase-sidebar__btn--active{background:var(--color-accent);border-color:var(--color-accent);color:#fff;box-shadow:0 4px 16px #c9a96e66}.phase-content{background:var(--color-bg);animation:.5s ease-out phaseSlideIn}@keyframes phaseSlideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.phase-tab-bar{gap:6px;padding:24px 12px 20px;top:50px}.phase-tab{padding:10px 20px}.phase-tab__number{font-size:18px}.phase-tab__label{font-size:10px}.phase-sidebar{gap:8px;right:8px}.phase-sidebar__btn{width:36px;height:36px;font-size:12px}.story-wish-cta{padding:40px 16px 16px}.wish-cta-button{gap:8px;padding:14px 24px;font-size:15px}.wish-cta-button svg{width:16px;height:16px}}
