:root{--cream:#faf8f5;--sand:#ede7dc;--blush:#d4bab0;--rose:#c2998a;--oak:#c4a47c;--ink:#2a2320;--ink-soft:#5c4f4a;--white:#fffefb;--f-serif:"Cormorant Garamond", Georgia, serif;--f-sans:"DM Sans", system-ui, sans-serif;--radius:2px;--max-w:1280px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--f-sans);background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.skip-link{background:var(--ink);color:var(--white);letter-spacing:.1em;text-transform:uppercase;z-index:9999;padding:12px 24px;font-size:13px;transition:top .2s;position:absolute;top:-100%;left:0}.skip-link:focus{top:0}.fade-in{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(24px)}.fade-in.visible{opacity:1;transform:none}.fade-in-delay-1{transition-delay:.1s}.fade-in-delay-2{transition-delay:.2s}.fade-in-delay-3{transition-delay:.3s}.section-tag{letter-spacing:.22em;text-transform:uppercase;color:var(--rose);margin-bottom:20px;font-size:11px;font-weight:500}.section-title{font-family:var(--f-serif);color:var(--ink);margin-bottom:24px;font-size:clamp(36px,4vw,54px);font-weight:300;line-height:1.15}.section-title em{color:var(--rose);font-style:italic}.section-body{color:var(--ink-soft);margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.8}.btn-primary{background:var(--ink);color:var(--white);letter-spacing:.12em;text-transform:uppercase;font-size:13px;font-family:var(--f-sans);cursor:pointer;border:none;padding:14px 36px;transition:background .25s;display:inline-block}.btn-primary:hover{background:var(--rose)}.btn-ghost{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);cursor:pointer;font-size:13px;font-family:var(--f-sans);background:0 0;border:none;align-items:center;gap:8px;transition:color .2s;display:flex}.btn-ghost:hover{color:var(--ink)}.btn-ghost:after{content:"→";font-size:16px;transition:transform .2s}.btn-ghost:hover:after{transform:translate(4px)}.btn-primary-large{background:var(--ink);color:var(--white);letter-spacing:.14em;text-transform:uppercase;font-size:13px;font-family:var(--f-sans);cursor:pointer;border:none;align-self:flex-start;margin-top:40px;padding:18px 48px;transition:background .25s;display:inline-block}.btn-primary-large:hover{background:var(--rose)}.main-nav{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#faf8f5f5;border-bottom:1px solid #c49a8a2e;justify-content:space-between;align-items:center;padding:22px 60px;transition:padding .4s,box-shadow .4s;display:flex;position:fixed;top:0;left:0;right:0}.main-nav.scrolled{padding:14px 60px;box-shadow:0 2px 24px #2a232012}.nav-logo{font-family:var(--f-serif);letter-spacing:.08em;color:var(--ink);font-size:22px;font-weight:400}.nav-logo span{color:var(--rose)}.nav-links{gap:36px;list-style:none;display:flex}.nav-links a{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-size:13px;font-weight:400;transition:color .25s}.nav-links a:hover{color:var(--ink)}.nav-cta{letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--ink);color:var(--ink);font-size:13px;font-family:var(--f-sans);cursor:pointer;background:0 0;padding:11px 26px;transition:background .25s,color .25s}.nav-cta:hover{background:var(--ink);color:var(--white)}.nav-hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.nav-hamburger span{background:var(--ink);width:24px;height:1.5px;display:block}.nav-mobile-menu{background:var(--cream);z-index:99;flex-direction:column;justify-content:center;align-items:center;gap:36px;display:none;position:fixed;inset:0}.nav-mobile-menu.open{display:flex}.nav-mobile-menu a{font-size:28px;font-family:var(--f-serif);color:var(--ink);letter-spacing:.05em;font-weight:300}.nav-mobile-close{cursor:pointer;color:var(--ink-soft);background:0 0;border:none;font-size:24px;position:absolute;top:20px;right:20px}.nav-mobile-cta{letter-spacing:.12em;text-transform:uppercase;background:var(--ink)!important;color:var(--white)!important;font-size:13px!important;font-family:var(--f-sans)!important;padding:14px 40px!important}@media (width<=1024px){.main-nav{padding:18px 36px}.main-nav.scrolled{padding:14px 36px}.nav-links,.nav-cta{display:none}.nav-hamburger{display:flex}}@media (width<=640px){.main-nav{padding:16px 20px}.main-nav.scrolled{padding:12px 20px}}.hero{grid-template-columns:1fr 1fr;height:100vh;min-height:680px;padding-top:72px;display:grid;position:relative;overflow:hidden}.hero-text{background:var(--cream);z-index:2;flex-direction:column;justify-content:flex-end;padding:120px 72px 80px;display:flex}.hero-tag{letter-spacing:.22em;text-transform:uppercase;color:var(--rose);margin-bottom:28px;font-size:11px;font-weight:500}.hero h1{font-family:var(--f-serif);color:var(--ink);margin-bottom:28px;font-size:clamp(52px,6vw,84px);font-weight:300;line-height:1.08}.hero h1 em{color:var(--rose);font-style:italic}.hero-sub{color:var(--ink-soft);max-width:400px;margin-bottom:48px;font-size:16px;font-weight:300;line-height:1.75}.hero-actions{align-items:center;gap:20px;display:flex}.hero-image{position:relative;overflow:hidden}.hero-image img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform 6s}.hero-image:hover img{transform:scale(1.03)}.hero-scroll{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:12px;font-size:11px;display:flex;position:absolute;bottom:40px;left:72px}.hero-scroll-line{background:var(--blush);width:40px;height:1px}@media (width<=1024px){.hero{grid-template-columns:1fr;height:auto;min-height:100vh;padding-top:0}.hero-text{order:1;padding:80px 36px 60px}.hero-image{order:0;height:55vw;min-height:280px;max-height:420px}.hero-scroll{left:36px}}@media (width<=640px){.hero-text{padding:48px 20px}.hero h1{font-size:44px}.hero-sub{font-size:15px}.hero-image{height:45vh}.hero-scroll{display:none}}.intro-strip{background:var(--rose);color:var(--white);flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;padding:18px 60px;display:flex;overflow:hidden}.intro-strip-group{align-items:center;gap:16px;display:flex}.intro-strip-item{letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;font-size:12px}.intro-strip-dot{background:#ffffff80;border-radius:50%;flex-shrink:0;width:4px;height:4px}@media (width<=640px){.intro-strip{justify-content:flex-start;gap:12px;padding:14px 20px;overflow-x:auto}}.about{max-width:var(--max-w);grid-template-columns:1fr 1fr;align-items:center;gap:80px;margin:0 auto;padding:120px 60px;display:grid}.about-images{height:560px;position:relative}.about-img-main{object-fit:cover;border-radius:var(--radius);width:72%;height:85%;position:absolute;top:0;left:0}.about-img-accent{object-fit:cover;border-radius:var(--radius);border:6px solid var(--cream);width:52%;height:55%;position:absolute;bottom:0;right:0}.about-label{background:var(--sand);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);writing-mode:vertical-rl;text-orientation:mixed;padding:16px 24px;font-size:11px;position:absolute;bottom:60px;left:-20px;transform:rotate(180deg)}.about-pillars{gap:32px;margin-top:40px;display:flex}.pillar{flex-direction:column;gap:6px;display:flex}.pillar-num{font-family:var(--f-serif);color:var(--blush);font-size:36px;font-weight:300;line-height:1}.pillar-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:12px}@media (width<=1024px){.about{grid-template-columns:1fr;gap:48px;padding:80px 36px}.about-images{height:400px}}@media (width<=640px){.about{padding:60px 20px}.about-images{height:320px}.about-label{display:none}.about-pillars{gap:20px}.pillar-num{font-size:28px}}.services{background:var(--sand);padding:120px 60px}.services-inner{max-width:var(--max-w);margin:0 auto}.services-header{justify-content:space-between;align-items:flex-end;margin-bottom:64px;display:flex}.services-intro{max-width:380px;color:var(--ink-soft);font-size:15px;font-weight:300;line-height:1.75}.services-split{border:1px solid #2a23201a;grid-template-columns:1fr 1fr;min-height:520px;display:grid}.services-nav{border-right:1px solid #2a23201a;flex-direction:column;display:flex}.service-nav-item{cursor:pointer;text-align:left;background:0 0;border:none;border-bottom:1px solid #2a232014;align-items:center;gap:20px;width:100%;padding:20px 32px;transition:background .25s;display:flex}.service-nav-item:last-child{border-bottom:none}.service-nav-item:hover{background:#c49a8a12}.service-nav-item.active{background:var(--ink)}.service-nav-item.active .service-num{color:#faf8f54d}.service-nav-item.active .service-nav-name{color:var(--cream)}.service-nav-item.active .service-nav-arrow{opacity:1}.service-num{font-family:var(--f-serif);color:var(--blush);letter-spacing:.06em;min-width:22px;font-size:13px;font-weight:300;transition:color .25s}.service-nav-name{font-family:var(--f-serif);color:var(--ink);flex:1;font-size:21px;font-weight:400;transition:color .25s}.service-nav-arrow{color:var(--rose);opacity:0;font-size:16px;transition:opacity .25s}.service-nav-item:hover .service-nav-arrow{opacity:.5}.services-detail{background:var(--cream);flex-direction:column;justify-content:center;padding:52px 56px;display:flex}.service-detail-panel{flex-direction:column;gap:14px;animation:.3s fadeSlide;display:flex}@keyframes fadeSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.detail-num{font-family:var(--f-serif);color:var(--sand);font-size:72px;font-weight:300;line-height:1}.detail-name{font-family:var(--f-serif);color:var(--ink);font-size:34px;font-weight:400}.detail-desc{color:var(--ink-soft);max-width:400px;font-size:15px;font-weight:300;line-height:1.85}.detail-price{letter-spacing:.1em;color:var(--rose);text-transform:uppercase;margin-top:6px;font-size:13px;font-weight:500}@media (width<=1024px){.services{padding:80px 36px}.services-split{grid-template-columns:1fr}.services-nav{border-bottom:1px solid #2a23201a;border-right:none}.services-detail{padding:36px}}@media (width<=640px){.services{padding:60px 20px}.services-header{text-align:left;flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:40px}.services-detail{padding:28px 20px}.service-nav-item{padding:16px 20px}.detail-num{font-size:48px}.detail-name{font-size:26px}}.collage{grid-template-rows:360px 240px;grid-template-columns:2fr 1fr 1fr;gap:4px;display:grid}.collage-item{overflow:hidden}.collage-item img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.collage-item:hover img{transform:scale(1.05)}.collage-item.span-col{grid-row:1/3}.collage-item.span-row{grid-column:2/4}@media (width<=1024px){.collage{grid-template-rows:280px 280px 280px;grid-template-columns:1fr 1fr}.collage-item.span-col{grid-area:1/auto/3}.collage-item.span-row{grid-column:1/3}}@media (width<=640px){.collage{grid-template-rows:260px 180px 260px}.collage-item.span-col{grid-column:1/3}}.brands{max-width:var(--max-w);text-align:center;margin:0 auto;padding:100px 60px}.brands-subtitle{max-width:560px;color:var(--ink-soft);margin:0 auto 60px;font-size:16px;font-weight:300;line-height:1.75}.brands-logos{border-top:1px solid var(--sand);border-bottom:1px solid var(--sand);flex-wrap:wrap;justify-content:center;align-items:stretch;max-width:860px;margin:0 auto;list-style:none;display:flex}.brand-item{border-right:1px solid var(--sand);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:40px 56px;transition:background .3s;display:flex}.brand-item:last-child{border-right:none}.brand-item:hover{background:var(--sand)}.brand-name{font-family:var(--f-serif);letter-spacing:.05em;color:var(--ink);text-align:center;font-size:20px;font-weight:400;line-height:1.3}.brand-tag{letter-spacing:.18em;text-transform:uppercase;color:var(--rose);font-size:10px}.brands-promise{border-top:1px solid var(--sand);flex-wrap:wrap;justify-content:center;gap:48px;margin-top:56px;padding-top:48px;list-style:none;display:flex}.promise-item{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:10px;font-size:13px;display:flex}.promise-dot{background:var(--rose);border-radius:50%;flex-shrink:0;width:6px;height:6px}@media (width<=1024px){.brands{padding:80px 36px}}@media (width<=640px){.brands{padding:60px 20px}.brands-logos{flex-direction:column}.brand-item{border-bottom:1px solid var(--sand);width:100%;padding:24px 20px;border-right:none!important}.brand-item:last-child{border-bottom:none}.brands-promise{gap:16px}.promise-item{font-size:11px}}.quote-section{background:var(--ink);text-align:center;padding:100px 60px;position:relative;overflow:hidden}.quote-section:before{content:"\"";font-family:var(--f-serif);color:#c49a8a0f;pointer-events:none;aria-hidden:true;font-size:320px;line-height:1;position:absolute;top:-60px;left:50%;transform:translate(-50%)}.quote-text{font-family:var(--f-serif);color:var(--cream);max-width:800px;margin:0 auto 24px;font-size:clamp(28px,4vw,48px);font-style:italic;font-weight:300;line-height:1.4;position:relative}.quote-author{letter-spacing:.2em;text-transform:uppercase;color:var(--rose);font-size:12px;font-style:normal}@media (width<=640px){.quote-section{padding:72px 20px}}.team{max-width:var(--max-w);margin:0 auto;padding:120px 60px}.team-header{grid-template-columns:1fr 1fr;align-items:end;gap:60px;margin-bottom:80px;display:grid}.team-intro{color:var(--ink-soft);max-width:400px;font-size:15px;font-weight:300;line-height:1.8}.team-cards{grid-template-columns:repeat(3,1fr);gap:24px;list-style:none;display:grid}.team-card-img{aspect-ratio:3/4;background:var(--sand);width:100%;margin-bottom:20px;overflow:hidden}.team-card-img img{object-fit:cover;object-position:top;filter:brightness(1.05)contrast(1.02)saturate(.88);width:100%;height:100%;transition:transform .5s}.team-card:hover .team-card-img img{transform:scale(1.03)}.team-name{font-family:var(--f-serif);color:var(--ink);margin-bottom:4px;font-size:24px;font-weight:400}.team-role{letter-spacing:.12em;text-transform:uppercase;color:var(--rose);font-size:12px}@media (width<=1024px){.team{padding:80px 36px}.team-header{grid-template-columns:1fr;gap:24px}.team-cards{grid-template-columns:repeat(3,1fr);gap:20px}}@media (width<=640px){.team{padding:60px 20px}.team-cards{grid-template-columns:repeat(2,1fr);gap:12px}}.cta-section{background:var(--sand);grid-template-columns:1fr 1fr;min-height:480px;display:grid}.cta-image{overflow:hidden}.cta-image img{object-fit:cover;width:100%;height:100%}.cta-content{flex-direction:column;justify-content:center;padding:80px;display:flex}.cta-info{flex-direction:column;gap:12px;margin-top:32px;font-style:normal;display:flex}.cta-info-row{color:var(--ink-soft);flex-wrap:nowrap;align-items:baseline;gap:16px;font-size:14px;display:flex}.cta-info a{color:var(--ink-soft);text-decoration:underline}.cta-info a:hover{color:var(--ink)}.cta-info-label{letter-spacing:.14em;text-transform:uppercase;min-width:160px;color:var(--rose);padding-top:2px;font-size:11px;font-weight:500}@media (width<=1024px){.cta-section{grid-template-columns:1fr}.cta-image{height:320px}.cta-content{padding:60px 36px}}@media (width<=640px){.cta-image{height:260px}.cta-content{padding:48px 20px}}.site-footer{background:var(--ink);color:#faf8f599;padding:64px 60px 40px}.footer-inner{max-width:var(--max-w);grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin:0 auto 48px;display:grid}.footer-logo{font-family:var(--f-serif);color:var(--cream);letter-spacing:.06em;margin-bottom:16px;font-size:24px;font-weight:300}.footer-logo span{color:var(--rose)}.footer-tagline{max-width:260px;font-size:14px;font-weight:300;line-height:1.7}.footer-col-title{letter-spacing:.2em;text-transform:uppercase;color:var(--cream);margin-bottom:20px;font-size:11px;font-weight:500}.footer-links{flex-direction:column;gap:10px;list-style:none;display:flex}.footer-links a{font-size:14px;font-weight:300;transition:color .2s}.footer-links a:hover{color:var(--cream)}.footer-bottom{max-width:var(--max-w);border-top:1px solid #faf8f51a;justify-content:space-between;margin:0 auto;padding-top:24px;font-size:12px;display:flex}.footer-bottom a{transition:color .2s}.footer-bottom a:hover{color:var(--cream)}@media (width<=1024px){.site-footer{padding:48px 36px 32px}.footer-inner{grid-template-columns:1fr 1fr;gap:36px}}@media (width<=640px){.site-footer{padding:40px 20px 24px}.footer-inner{grid-template-columns:1fr;gap:28px}.footer-bottom{text-align:center;flex-direction:column;gap:8px}}
