:root{--ink:#161c20;--navy:#171e24;--navy2:#202932;--cream:#f8f4ec;--paper:#fdfbf7;--gold:#c59a52;--goldLight:#e2c27e;--muted:#57514d;--line:#d9cbb7;--serif:Georgia,'Times New Roman',serif;--sans:ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(1200px,calc(100% - 96px));margin-inline:auto}.section-pad{padding:96px 0}.skip-link{position:absolute;top:-100px;left:10px;z-index:200;background:white;padding:12px}.skip-link:focus{top:10px}.is-hidden{display:none!important}
.site-header{position:absolute;top:0;left:0;width:100%;z-index:12;border-bottom:1px solid rgba(255,255,255,.16);background:linear-gradient(180deg,rgba(6,9,12,.63),rgba(6,9,12,.12))}.nav-wrap{display:flex;justify-content:space-between;align-items:center;min-height:100px;gap:22px}.brand{display:flex;flex-direction:column;align-items:center;width:233px;gap:8px;color:#fff;flex-shrink:0}.brand-name{font-family:var(--serif);font-size:20px;line-height:1;letter-spacing:.035em;white-space:nowrap}.brand-name span{font-size:inherit}.brand-rule{height:2px;width:122px;background:linear-gradient(90deg,transparent,var(--gold),transparent);position:relative}.brand-rule i{position:absolute;left:49%;height:10px;width:2px;top:-4px;background:var(--goldLight);box-shadow:5px 2px var(--gold),-5px 2px var(--gold)}.primary-nav{display:flex;align-items:center;gap:32px;color:#f8f5ef;font-size:13px;font-weight:600;letter-spacing:.01em}.primary-nav>a:not(.nav-button){padding:12px 0;border-bottom:1px solid transparent;transition:color .2s,border .2s}.primary-nav>a:not(.nav-button):hover,.primary-nav>a:not(.nav-button):focus-visible{color:#f0c87c;border-color:var(--gold)}.nav-button{border-radius:30px;display:inline-flex;gap:15px;padding:14px 24px;background:linear-gradient(110deg,#af813d,#d9a756);color:#fff;box-shadow:0 10px 25px rgba(6,7,7,.26);font-size:13px;white-space:nowrap}.nav-button:hover,.button-gold:hover{filter:brightness(1.11)}.menu-toggle{display:none}
.hero{position:relative;min-height:785px;min-height:min(890px,100svh);background:#14191d url('assets/hero.webp') center 44%/cover no-repeat;color:#faf7ef;display:flex;align-items:center;overflow:hidden}.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,13,19,.84) 0%,rgba(8,13,19,.57) 27%,rgba(8,13,19,.12) 67%,rgba(8,13,19,.09) 100%),linear-gradient(0deg,rgba(8,11,16,.55) 0%,transparent 25%,transparent 80%,rgba(8,11,16,.12) 100%)}.hero-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 85% 73%,rgba(193,124,48,.11),transparent 50%)}.hero-content{position:relative;z-index:1;padding-top:120px;padding-bottom:85px}.hero-copy{max-width:660px}.eyebrow,.section-kicker{font-size:11px;letter-spacing:.24em;font-weight:700}.eyebrow{display:flex;align-items:center;gap:12px;color:#e6c992;margin:0 0 33px}.small-line{display:block;width:32px;height:1px;background:var(--gold)}.hero h1{font-family:var(--serif);font-size:clamp(62px,6.25vw,109px);font-weight:400;line-height:.94;letter-spacing:.012em;margin:0;color:#fff8ec;text-shadow:0 4px 14px rgba(0,0,0,.18)}.hero h1 span{display:block}.hero h1 span+span{padding-left:70px;margin-top:6px}.gold-ornament{width:190px;display:flex;align-items:center;justify-content:center;gap:5px;margin:34px 0 25px 104px;color:var(--goldLight)}.gold-ornament span{height:1px;width:72px;background:var(--gold)}.gold-ornament b{display:block;width:15px;height:18px;border-left:2px solid var(--gold);border-right:2px solid var(--gold);position:relative}.gold-ornament b::after{content:"";position:absolute;left:5px;top:-6px;width:2px;height:30px;background:var(--goldLight)}.hero-promise{font-family:var(--serif);font-size:clamp(24px,2.35vw,36px);font-style:italic;line-height:1.36;margin:0 0 34px;color:#fff5e4;text-shadow:0 3px 10px #17110d}.hero-categories{font-size:11px;letter-spacing:.125em;font-weight:700;line-height:1.75;margin-bottom:30px}.hero-categories b{color:var(--goldLight);font-weight:400;padding:0 10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:19px;border:0;min-height:48px;padding:16px 29px;font-size:12px;font-weight:800;letter-spacing:.12em;transition:transform .2s,filter .2s}.button:hover{transform:translateY(-2px)}.button:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #f7dca2;outline-offset:5px}.button-gold{color:#fff;background:linear-gradient(110deg,#ad7f39,#d2a150);box-shadow:0 12px 35px #0003}.button span:last-child{font-size:18px;font-weight:400;letter-spacing:0}.hero-footnote{color:#e9dccc;font-family:var(--serif);font-size:14px;font-style:italic;margin:26px 0 0;opacity:.75}.scroll-cue{position:absolute;z-index:2;bottom:27px;right:max(48px,calc((100vw - 1200px)/2));font-size:10px;font-weight:600;letter-spacing:.22em;display:flex;align-items:center;gap:16px;color:#e8d9c4}.scroll-line{height:1px;width:55px;background:#c4a26c}
.intro{background:var(--cream);text-align:center}.intro-inner{max-width:820px}.section-kicker{color:#ab8448;margin:0 0 18px}.intro h2,.section-heading h2,.philosophy h2,.contact h2{font-family:var(--serif);font-size:clamp(36px,4.1vw,58px);font-weight:400;letter-spacing:-.032em;line-height:1.12;margin:0}.intro h2 em,.section-heading h2 em,.philosophy h2 em,.contact h2 em{color:#a37c48;font-weight:400}.intro-text{font-size:16px;line-height:1.94;color:#5c5550;margin:25px auto 0;max-width:760px}.section-flourish{display:flex;align-items:center;justify-content:center;gap:13px;color:#bb9052;margin-top:23px}.section-flourish span{height:1px;width:85px;background:linear-gradient(90deg,transparent,#c8a777)}.section-flourish span:last-child{transform:scaleX(-1)}
.celebrations{background:#fffdf8;border-top:1px solid #e7ded0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:0 0 37px}.section-heading h2{font-size:clamp(34px,3.5vw,52px)}.section-heading>p{width:245px;color:#73695f;font-family:var(--serif);font-size:17px;line-height:1.55;margin:0 4px 5px 0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.service-card{background:#faf7f1;box-shadow:0 14px 35px rgba(35,29,20,.05);border:1px solid #ede5d9;overflow:hidden}.service-image{height:235px;background:#40392d var(--service-photo) center center/cover no-repeat;position:relative}.service-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0001,#1d151122)}.service-number{position:absolute;z-index:1;top:18px;left:20px;padding:7px 10px;background:rgba(24,27,28,.59);color:#eed0a0;letter-spacing:.1em;font-size:12px}.service-content{padding:29px 26px 28px;min-height:235px;display:flex;flex-direction:column}.service-content h3{font-family:var(--serif);font-size:27px;font-weight:400;letter-spacing:-.02em;margin:0 0 12px}.service-content p{font-size:14px;color:#655d56;line-height:1.75;margin:0}.service-note{display:block;color:#a57d42;border-top:1px solid #e3d9ca;padding-top:17px;font-size:10px;letter-spacing:.13em;margin-top:auto;font-weight:700}
.philosophy{background:var(--navy);color:#faf8f1}.philosophy-layout{display:grid;grid-template-columns:1fr 1.08fr;gap:95px}.philosophy .section-kicker{color:#d5ac6f}.philosophy h2{margin-top:20px;font-size:clamp(42px,4vw,60px)}.philosophy h2 em{color:#d8ad6c}.philosophy-details>p{font-family:var(--serif);font-size:19px;line-height:1.75;color:#e4ded4;margin:0 0 28px}.principle-list{border-top:1px solid #485057}.principle-list>div{display:flex;gap:18px;align-items:center;padding:16px 0;border-bottom:1px solid #485057}.principle-symbol{font-family:var(--serif);font-size:27px;color:#d3aa71;min-width:40px;text-align:center}.principle-list strong{display:block;font-family:var(--serif);font-size:19px;font-weight:400;margin-bottom:5px}.principle-list small{color:#aeb6b9;font-size:13px;line-height:1.5}
.contact{background:radial-gradient(ellipse at 55% 10%,#fffdf7 0%,#f6eee0 85%);text-align:center}.contact-content{max-width:920px}.contact h2{font-size:clamp(38px,4.2vw,62px)}.contact-message{max-width:600px;font-size:16px;line-height:1.9;color:#655b53;margin:24px auto 25px}.coming-soon{display:inline-block;font-size:11px;letter-spacing:.2em;font-weight:800;color:#9d7440;border-top:1px solid #d0b688;border-bottom:1px solid #d0b688;padding:14px 0}.site-footer{background:#141a1e;color:#c2c5c2;padding:28px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-brand{display:block;color:#fff;font-size:16px;font-family:var(--serif);letter-spacing:.05em;margin-bottom:7px}.footer-sub{font-size:12px;color:#bcb8af}.footer-inner>div:last-child{text-align:right;font-family:var(--serif);font-size:13px;font-style:italic}.footer-inner small{display:block;font-family:var(--sans);font-size:10px;font-style:normal;color:#858989;margin-top:10px}
@media(max-width:1000px){.container{width:min(100% - 64px,900px)}.primary-nav{gap:16px}.hero{min-height:720px}.hero h1{font-size:clamp(56px,8vw,85px)}.hero h1 span+span{padding-left:30px}.gold-ornament{margin-left:78px}.hero-copy{max-width:575px}.section-pad{padding:75px 0}.philosophy-layout{gap:42px}.service-image{height:195px}.service-content{padding:24px 21px}.service-content h3{font-size:25px}}
@media(max-width:760px){.container{width:calc(100% - 38px)}.site-header{background:rgba(13,16,17,.72)}.nav-wrap{min-height:76px}.brand{align-items:start;width:auto;gap:5px}.brand-name{font-size:17px}.brand-rule{width:100px;margin-left:28px}.menu-toggle{display:flex;width:43px;height:43px;background:transparent;border:1px solid #b9a58a;align-items:center;flex-direction:column;justify-content:center;gap:6px;cursor:pointer}.menu-toggle span{width:20px;height:1px;background:white}.primary-nav{display:none;position:absolute;top:76px;left:0;right:0;background:#171e24;flex-direction:column;align-items:stretch;padding:20px;gap:10px;border-bottom:1px solid #69563a}.primary-nav.is-open{display:flex}.primary-nav>a{display:block!important;padding:14px 12px!important}.primary-nav .nav-button{border-radius:2px;display:flex!important;justify-content:space-between}.hero{min-height:760px;min-height:92svh;background-position:59% center;align-items:flex-end}.hero::before{background:linear-gradient(0deg,rgba(8,12,18,.95) 0%,rgba(8,12,18,.84) 43%,rgba(8,12,18,.24) 80%,rgba(8,12,18,.24) 100%),linear-gradient(90deg,#0c11167d,transparent)}.hero-content{padding:155px 0 88px}.hero-copy{max-width:100%}.eyebrow{font-size:9px;letter-spacing:.17em;margin-bottom:17px}.hero h1{font-size:clamp(47px,10vw,73px)}.hero h1 span+span{padding-left:25px}.gold-ornament{margin:20px 0 15px 50px;width:115px}.gold-ornament span{width:48px}.hero-promise{font-size:clamp(22px,6vw,31px);line-height:1.35;margin-bottom:21px}.hero-categories{font-size:9px;letter-spacing:.06em;line-height:2;margin-bottom:22px}.hero-categories b{padding:0 4px}.hero-footnote{font-size:12px;margin-top:20px}.scroll-cue{display:none}.section-pad{padding:65px 0}.intro h2,.section-heading h2,.philosophy h2,.contact h2{font-size:clamp(36px,9vw,50px)}.desktop-only{display:none}.intro-text{font-size:14px;line-height:1.88}.section-kicker{font-size:10px;letter-spacing:.15em}.section-heading{display:block;margin-bottom:28px}.section-heading>p{width:auto;margin-top:15px;font-size:15px}.service-grid{grid-template-columns:1fr;gap:18px}.service-image{height:215px}.service-content{min-height:0;padding:20px 24px 25px}.service-content h3{font-size:27px}.service-content p{margin-bottom:19px}.service-note{margin-top:0}.philosophy-layout{grid-template-columns:1fr;gap:24px}.philosophy-details>p{font-size:17px}.contact-message{font-size:15px}.footer-inner{display:block}.footer-inner>div:last-child{text-align:left;margin-top:19px}.footer-inner>div:last-child span{display:block}.button{padding:14px 22px;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}


/* v0.4 — aligned hero system. Logo artwork is unaltered and transparent. */
.brand{display:flex;align-items:center;justify-content:flex-start;width:215px;min-width:180px;gap:0}
.brand-logo,.footer-logo{display:block;max-width:100%;height:auto;object-fit:contain;mix-blend-mode:normal;background:transparent;filter:none}
.brand-logo{width:205px;max-height:88px}
.nav-wrap{min-height:110px}
.footer-identity{display:flex;flex-direction:column;align-items:flex-start}
.footer-logo{width:192px;max-height:88px;margin:-11px 0 -2px}
.footer-sub{margin-top:3px}

/* Desktop: an actual photographic half and a text-safe half.
   The image never occupies the content column; not just a gradient trick. */
.hero{position:relative;isolation:isolate;min-height:790px;min-height:min(890px,100svh);background:#0b1118;display:flex;align-items:center;overflow:hidden}
.hero::before{content:'';position:absolute;z-index:-2;inset:0 0 0 50%;background:url('assets/hero.webp') 62% 44%/cover no-repeat;pointer-events:none}
.hero::after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#0b1118 0%,#0b1118 50%,rgba(11,17,24,.55) 60%,rgba(11,17,24,.08) 71%,rgba(11,17,24,.01) 82%),linear-gradient(0deg,rgba(6,9,13,.50),transparent 25%,transparent 78%,rgba(6,9,13,.25));pointer-events:none}
.hero-glow{z-index:-1}
.hero-content{position:relative;z-index:1;padding-top:124px;padding-bottom:82px}
.hero-copy{box-sizing:border-box;width:min(510px,43vw);max-width:100%;text-align:center}
.eyebrow{display:flex;justify-content:center;align-items:center;gap:12px;max-width:100%;margin:0 auto 25px;color:#e6c992;font-size:clamp(9px,.72vw,11px);letter-spacing:.16em;line-height:1.6;text-align:center}
.eyebrow::before,.eyebrow::after{content:'';display:block;flex:0 0 28px;height:1px;background:var(--gold);opacity:.95}
.eyebrow-label{display:block;flex:0 1 auto}
.hero h1{font-family:var(--serif);font-size:clamp(39px,4.2vw,66px);font-weight:400;line-height:1;letter-spacing:.002em;margin:0 auto;color:#fff8ec;text-shadow:0 4px 14px rgba(0,0,0,.18);text-align:center}
.hero h1 span{display:block}
.hero h1 span+span{padding-left:0;margin-top:9px}
.gold-ornament{width:190px;max-width:80%;display:flex;align-items:center;justify-content:center;gap:7px;margin:26px auto 21px}
.gold-ornament span{width:74px}
.hero-promise{font-family:var(--serif);font-size:clamp(22px,2.05vw,30px);font-style:italic;line-height:1.38;margin:0 auto 25px;max-width:510px;text-align:center}
.hero-categories{font-size:clamp(9px,.72vw,11px);letter-spacing:.10em;line-height:1.8;text-align:center;margin:0 auto 26px}
.hero-categories b{padding:0 7px}
.hero-copy .button{margin-inline:auto}
.hero-footnote{text-align:center;font-size:13px;margin:23px 0 0}

@media(max-width:1050px){
 .brand{width:178px;min-width:154px}.brand-logo{width:174px;max-height:77px}
 .hero-copy{width:min(465px,44vw)}
 .hero h1{font-size:clamp(38px,4.15vw,50px)}
 .hero-promise{font-size:clamp(20px,2.25vw,25px)}
 .eyebrow{letter-spacing:.12em;gap:8px}.eyebrow::before,.eyebrow::after{flex-basis:21px}
}
/* At tablet/phone widths, faces occupy a dedicated photo area ABOVE all text.
   This geometric separation is invariant to viewport size and font scaling. */
@media(max-width:960px){
 .hero{min-height:0;padding-top:clamp(360px,56vw,525px);align-items:flex-end;display:block;background:#080d13}
 .hero::before{inset:0 0 auto 0;height:clamp(360px,56vw,525px);background-size:cover;background-position:60% 42%}
 .hero::after{background:linear-gradient(180deg,rgba(8,13,19,.20) 0,rgba(8,13,19,.09) 15%,rgba(8,13,19,.14) 25%,#080d13 52%,#080d13 100%)}
 .hero-content{padding:0 0 78px}
 .hero-copy{width:min(510px,100%);max-width:100%;margin-inline:auto;text-align:center}
 .eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:24px}
 .eyebrow::before,.eyebrow::after{flex-basis:25px}
 .hero h1{font-size:clamp(37px,7.2vw,64px);line-height:1.05}
 .hero h1 span+span{margin-top:3px}
 .gold-ornament{margin:23px auto 21px;width:155px}
 .gold-ornament span{width:64px}
 .hero-promise{font-size:clamp(23px,3.7vw,29px)}
 .hero-categories{font-size:10px}
 .hero-footnote{font-size:12px}
 .scroll-cue{display:none}
}
@media(max-width:760px){
 .nav-wrap{min-height:76px}
 .brand{width:136px;min-width:136px}
 .brand-logo{width:135px;max-height:65px}
 .hero{padding-top:clamp(315px,90vw,445px)}
 .hero::before{height:clamp(315px,90vw,445px);background-position:59% 40%}
 .hero::after{background:linear-gradient(180deg,rgba(8,13,19,.08) 0%,rgba(8,13,19,.06) 20%,rgba(8,13,19,.21) 32%,#080d13 49%,#080d13 100%)}
 .hero-content{padding:0 0 58px}
 .eyebrow{font-size:clamp(8px,2.05vw,10px);letter-spacing:.09em;gap:7px;margin-bottom:22px}
 .eyebrow::before,.eyebrow::after{flex-basis:clamp(14px,5vw,25px)}
 .hero h1{font-size:clamp(31px,9vw,57px);letter-spacing:-.012em}
 .hero h1 span+span{margin-top:2px}
 .gold-ornament{margin:18px auto 18px}
 .hero-promise{font-size:clamp(21px,5.7vw,28px);margin:0 auto 23px}
 .hero-categories{font-size:9px;letter-spacing:.04em;line-height:1.9;margin-bottom:21px}
 .hero-footnote{font-size:12px;margin:19px auto 0}
 .footer-logo{width:180px;max-height:82px}
}
@media(max-width:355px){
 .hero h1{font-size:clamp(28px,8.6vw,32px)}
 .eyebrow::before,.eyebrow::after{flex-basis:10px}
 .hero-categories b{padding:0 2px}
}


/* v0.5 — lead with DJ/MC services, with the brand promise supporting that offer.
   Existing image-safe positioning and shared centerline are preserved. */
.hero-copy{width:min(535px,44vw)}
.eyebrow{margin-bottom:19px}
.gold-ornament{margin:22px auto 16px}
.hero-service{font-family:var(--sans);font-weight:800;letter-spacing:.155em;font-size:clamp(19px,1.65vw,25px);line-height:1.3;color:#f3d39b;text-transform:uppercase;margin:0 auto 11px;text-align:center}
.hero-service span{color:#fff9ec;font-weight:500;padding-inline:3px}
.hero-value{font-family:var(--sans);font-size:clamp(14px,1.1vw,17px);line-height:1.5;font-weight:500;color:#f6f1e8;max-width:460px;margin:0 auto 17px;text-align:center}
.hero-promise{font-size:clamp(19px,1.5vw,22px);line-height:1.35;max-width:410px;margin:0 auto 19px;color:#edd9b9}
.hero-categories{font-size:clamp(9px,.72vw,11px);letter-spacing:.09em;margin:0 auto 21px}
.hero-copy .button{padding-inline:22px}
@media(max-width:1050px){
 .hero-copy{width:min(480px,44vw)}
 .hero-service{font-size:clamp(18px,2vw,21px)}
 .hero-value{font-size:clamp(13px,1.55vw,16px)}
 .hero-promise{font-size:clamp(18px,2vw,21px)}
}
@media(max-width:960px){
 .hero-copy{width:min(535px,100%)}
 .hero-service{font-size:clamp(19px,3.1vw,24px)}
 .hero-value{font-size:clamp(14px,2.2vw,17px)}
 .hero-promise{font-size:clamp(20px,3.25vw,23px)}
}
@media(max-width:760px){
 .eyebrow{margin-bottom:19px}
 .gold-ornament{margin:18px auto 15px}
 .hero-service{font-size:clamp(18px,5vw,23px);letter-spacing:.12em;margin-bottom:10px}
 .hero-value{font-size:clamp(14px,3.65vw,16px);max-width:350px;margin-bottom:16px}
 .hero-promise{font-size:clamp(19px,5vw,22px);margin-bottom:19px}
 .hero-categories{margin-bottom:20px}
}
@media(max-width:355px){
 .hero-service{font-size:17px;letter-spacing:.1em}
 .hero-value{font-size:13px}
 .hero-promise{font-size:18px}
 .hero-copy .button{font-size:10px;letter-spacing:.07em}
}

/* v0.6: One intentional brand hierarchy. The logo artwork is unchanged;
   only its existing two flat source colors are mapped to the site's ivory/gold palette.
   Header is persistent and every anchor is scroll-offset for visibility. */
html{scroll-padding-top:88px}
section[id],main[id],header[id]{scroll-margin-top:88px}
.site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  width:100%;
  z-index:100;
  background:rgba(12,18,25,.94);
  border-bottom:1px solid rgba(229,195,132,.22);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  box-shadow:0 6px 25px rgba(0,0,0,.11);
}
.nav-wrap{min-height:78px}
.brand{width:143px;min-width:143px;padding:2px 0;align-items:center;justify-content:flex-start}
.brand-logo{width:143px;max-height:72px;object-fit:contain;transition:opacity .2s ease}
.brand:hover .brand-logo{opacity:.83}
/* A real, centered brand image replaces duplicate typography in the hero. */
.hero-content{padding-top:133px;padding-bottom:76px}
.hero-copy{width:min(535px,44vw);display:flex;flex-direction:column;align-items:center;text-align:center}
.hero-logo-title{display:block;width:100%;max-width:480px;line-height:0;margin:0 auto}
.hero-logo{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 7px 14px rgba(0,0,0,.21))}
.eyebrow{order:0;margin:0 auto 12px}
.hero-logo-title{order:1}
.gold-ornament{order:2;margin:0 auto 16px;width:152px}
.gold-ornament span{width:54px}
.hero-service{order:3;color:#e8c58e;font-family:var(--sans);font-style:normal;font-size:clamp(21px,1.9vw,27px);font-weight:700;letter-spacing:.11em;margin:0 auto 15px;line-height:1.35}
.hero-promise{order:4;font-family:var(--serif);font-size:clamp(22px,1.8vw,26px);font-style:italic;font-weight:400;line-height:1.4;color:#fff5e5;max-width:440px;margin:0 auto 23px}
.hero-categories{order:5;margin:0 auto 22px;color:#e6e0d7;font-size:clamp(9px,.72vw,11px)}
.hero-copy>.button{order:6;margin-inline:auto}
.hero{min-height:780px;min-height:min(880px,100svh)}
.primary-nav{gap:clamp(14px,2vw,29px)}
@media(max-width:1100px) and (min-width:961px){
 .hero-copy{width:min(465px,44vw)}
 .hero-logo-title{max-width:450px}
 .hero-service{font-size:clamp(19px,2.1vw,24px)}
 .hero-promise{font-size:21px}
}
/* Switch to the actual mobile navigation at tablet sizes, before links collide. */
@media(max-width:960px){
 html{scroll-padding-top:78px}
 section[id],main[id],header[id]{scroll-margin-top:78px}
 .nav-wrap{min-height:77px}
 .brand{width:132px;min-width:132px}
 .brand-logo{width:132px;max-height:68px}
 .menu-toggle{display:flex;width:43px;height:43px;background:transparent;border:1px solid #b9a58a;align-items:center;flex-direction:column;justify-content:center;gap:6px;cursor:pointer}
 .menu-toggle span{width:20px;height:1px;background:#fff}
 .primary-nav{display:none;position:absolute;top:77px;left:0;right:0;background:#171e24;flex-direction:column;align-items:stretch;padding:20px;gap:10px;border-bottom:1px solid #69563a;box-shadow:0 14px 20px #0004}
 .primary-nav.is-open{display:flex}
 .primary-nav>a{display:block!important;padding:14px 12px!important}
 .primary-nav .nav-button{border-radius:2px;display:flex!important;justify-content:space-between}
 .hero-content{padding-top:0;padding-bottom:68px}
 .hero-copy{width:min(535px,100%)}
 .hero-logo-title{max-width:460px}
 .gold-ornament{margin:0 auto 16px}
 .hero-service{font-size:clamp(21px,3.1vw,26px)}
 .hero-promise{font-size:clamp(22px,3vw,26px)}
}
@media(max-width:760px){
 html{scroll-padding-top:76px}
 section[id],main[id],header[id]{scroll-margin-top:76px}
 .nav-wrap{min-height:76px}
 .brand{width:118px;min-width:118px}
 .brand-logo{width:118px;max-height:65px}
 .primary-nav{top:76px}
 .hero-content{padding-top:0;padding-bottom:58px}
 .hero-logo-title{max-width:400px}
 .eyebrow{margin:0 auto 12px}
 .gold-ornament{margin:0 auto 16px;width:124px}
 .hero-service{font-size:clamp(19px,5vw,23px);letter-spacing:.10em;margin-bottom:15px}
 .hero-promise{font-size:clamp(20px,5vw,23px);margin-bottom:20px}
 .hero-categories{margin-bottom:23px}
}
@media(max-width:355px){
 .brand{width:109px;min-width:109px}.brand-logo{width:109px}
 .hero-service{font-size:18px;letter-spacing:.08em}
 .hero-promise{font-size:19px}
}

/* v0.6 polish: the logo already carries an equalizer and horizontal rules;
   no redundant flourish is needed beneath the large hero mark. */
.hero-logo-title{margin-bottom:18px}
@media(max-width:760px){.hero-logo-title{margin-bottom:12px}}

/* v0.7 launch-ready contact styling; inherits the approved v0.6 visual language. */
.contact-content{max-width:900px}
.contact-message{max-width:650px;margin:25px auto 27px}
.contact .button{min-height:52px}
.contact-direct{font-size:14px;color:#62564b;margin:20px 0 0;line-height:1.7}
.contact-direct a{color:#8d622c;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;font-weight:650}
.contact-location{font-size:10px;color:#9e7c4f;font-weight:750;letter-spacing:.18em;margin:29px auto 0}
.footer-email{display:block;margin-top:9px;font:normal 12px var(--sans);color:#e2c27e;overflow-wrap:anywhere}
.footer-email:hover,.contact-direct a:hover{text-decoration:underline;color:#dfb675}
@media(max-width:760px){.contact-message{max-width:520px}.contact-direct{font-size:13px}.contact-location{font-size:9px;letter-spacing:.13em}}


/* v0.8: candid owner intro and launch inquiry, inherited from approved v0.6 palette */
.about-owner{background:#f8f3e9;border-top:1px solid #e7dbc7;border-bottom:1px solid #e8d9c5}
.about-owner-layout{display:grid;grid-template-columns:1fr 1.12fr;gap:clamp(38px,6vw,100px);align-items:center}
.about-owner h2{font-family:var(--serif);font-size:clamp(40px,4vw,59px);font-weight:400;line-height:1.1;letter-spacing:-.035em;margin:0 0 25px;color:#262e31}
.about-owner h2 em{color:#a37c48;font-weight:400}
.owner-signature{display:flex;flex-wrap:wrap;align-items:center;column-gap:17px;row-gap:5px;color:#28343c;font-weight:800;font-size:13px;letter-spacing:.12em}
.owner-signature-line{display:inline-block;width:35px;height:1px;background:#b88945}
.owner-signature small{flex-basis:100%;font-size:10px;color:#9b783f;letter-spacing:.16em;font-weight:750;padding-left:52px}
.about-owner-copy p{font-size:16px;color:#595953;line-height:1.86;margin:0 0 17px}
.text-link{display:inline-flex;align-items:center;gap:10px;color:#896335;font-size:13px;font-weight:800;letter-spacing:.03em;margin-top:8px;padding-bottom:5px;border-bottom:1px solid #b28b53}
.text-link:hover{color:#533918}
.inquiry-form{box-sizing:border-box;max-width:780px;margin:34px auto 8px;padding:34px 38px 30px;text-align:left;background:#fffdfa;border:1px solid #e3d7c5;box-shadow:0 20px 70px rgba(80,58,34,.08);border-radius:3px;scroll-margin-top:115px}
.form-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px;padding-bottom:14px;border-bottom:1px solid #e8dcca;color:#73542e;font-size:12px;font-weight:800;letter-spacing:.16em}
.form-heading small{font-size:11px;font-weight:600;letter-spacing:0;color:#6f6760}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:19px}
.form-field{min-width:0;display:flex;flex-direction:column;gap:7px}
.form-field-wide{grid-column:1 / -1}
.form-field label{font-size:12px;font-weight:750;letter-spacing:.02em;color:#364047}
.form-field abbr{text-decoration:none;color:#a56f2e}
.form-field input,.form-field textarea,.form-field select{box-sizing:border-box;width:100%;min-width:0;min-height:48px;border:1px solid #cfc4b4;border-radius:2px;background:#fff;color:#2b3235;padding:12px 14px;font:normal 14px/1.4 var(--sans);transition:border-color .15s,box-shadow .15s}
.form-field textarea{resize:vertical;min-height:116px}
.form-field input::placeholder,.form-field textarea::placeholder{color:#827e79}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{outline:none;border-color:#a67637;box-shadow:0 0 0 3px #cead7645}
.form-field [aria-invalid="true"]{border-color:#a22b2b}
.form-bottom{display:flex;gap:26px;align-items:center;justify-content:space-between;margin-top:26px}
.form-notice{max-width:370px;font-size:12px;line-height:1.6;color:#6d665d}
.form-bottom .button{flex-shrink:0;font-size:11px;cursor:pointer;padding:14px 22px;letter-spacing:.08em}
.form-bottom .button[disabled]{opacity:.55;cursor:wait}
.form-status{min-height:1.5em;font-size:13px;line-height:1.5;color:#6d4f2b;margin:12px 0 0}
.form-status[data-kind="error"]{color:#9d3030}
.form-status[data-kind="success"]{color:#276145}
.form-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:960px){.about-owner-layout{grid-template-columns:1fr;gap:23px}.owner-signature{margin-bottom:4px}.inquiry-form{scroll-margin-top:90px}}
@media(max-width:760px){.about-owner h2{font-size:clamp(37px,9vw,49px)}.about-owner-copy p{font-size:15px}.inquiry-form{padding:26px 19px;scroll-margin-top:85px}.form-grid{grid-template-columns:1fr;row-gap:15px}.form-field-wide{grid-column:auto}.form-bottom{align-items:stretch;flex-direction:column;gap:16px}.form-bottom .button{width:100%}.form-notice{max-width:none}.form-heading{margin-bottom:18px}}
