:root{
  --ivory:#f8f6f1;
  --paper:#fffdf8;
  --stone:#ebe5da;
  --sand:#d8cdbb;
  --bronze:#a8844b;
  --bronze-dark:#6f572f;
  --navy:#1f2a35;
  --ink:#24211d;
  --muted:#726c64;
  --line:rgba(36,33,29,.12);
  --shadow:0 26px 70px rgba(46,38,28,.13);
  --shadow-soft:0 16px 44px rgba(46,38,28,.08);
  --radius:28px;
  --serif:"Cormorant Garamond", Georgia, serif;
  --sans:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.skip-link{position:absolute;left:-999px;top:10px;background:var(--ink);color:#fff;padding:10px 14px;z-index:999}
.skip-link:focus{left:10px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(248,246,241,.84);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:82px}
.brand img{width:202px;height:auto}.nav-links{display:flex;align-items:center;gap:24px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.nav-links a{position:relative;padding:10px 0}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--bronze);transform:scaleX(0);transform-origin:left;transition:.25s ease}.nav-links a:hover:after{transform:scaleX(1)}
.nav-cta{border:1px solid var(--ink);padding:12px 18px;border-radius:999px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;background:var(--ink);color:var(--paper);transition:.25s ease}.nav-cta:hover{background:var(--bronze-dark);border-color:var(--bronze-dark)}
.mobile-toggle{display:none;border:1px solid var(--line);border-radius:999px;background:transparent;padding:10px 14px;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.mobile-menu{display:none}.section{padding:96px 0}.section-light{background:linear-gradient(180deg,#fbfaf7 0%,#f4efe6 100%)}.section-soft{background:#f1ece3}.eyebrow{margin:0 0 18px;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--bronze-dark);font-weight:700}.hero{padding:76px 0 64px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:auto -20% -36% 24%;height:460px;background:radial-gradient(circle,rgba(168,132,75,.22),transparent 60%);pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}.hero-copy h1{font-family:var(--serif);font-size:clamp(52px,6vw,88px);line-height:.9;letter-spacing:-.045em;margin:0 0 28px;color:#1f1d19;max-width:760px}.lead{font-size:20px;line-height:1.65;color:#504b44;max-width:650px;margin:0 0 34px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:32px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:15px 22px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:1px solid transparent;transition:.25s ease}.btn-primary{background:var(--ink);color:var(--paper);box-shadow:0 14px 30px rgba(36,33,29,.16)}.btn-primary:hover{background:var(--bronze-dark);transform:translateY(-2px)}.btn-secondary{border-color:rgba(36,33,29,.28);background:rgba(255,255,255,.55);color:var(--ink)}.btn-secondary:hover{border-color:var(--bronze);color:var(--bronze-dark);transform:translateY(-2px)}.quiet-proof{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:620px}.quiet-proof span{border-top:1px solid var(--line);padding-top:12px;color:var(--muted);font-size:13px}.hero-visual{position:relative}.hero-photo{margin:0;position:relative;border-radius:36px;overflow:hidden;box-shadow:var(--shadow);background:#ddd}.hero-photo img{width:100%;height:620px;object-fit:cover}.main-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(0,0,0,.52))}.hero-photo figcaption{position:absolute;left:28px;bottom:24px;right:28px;color:#fff;font-family:var(--serif);font-size:28px;line-height:1.05;z-index:2}.floating-card{position:absolute;left:-44px;bottom:54px;width:270px;background:rgba(255,253,248,.94);border:1px solid rgba(168,132,75,.28);box-shadow:var(--shadow-soft);padding:22px;border-radius:24px}.card-label,.card-eyebrow{display:block;margin-bottom:8px;color:var(--bronze-dark);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.floating-card strong{display:block;font-family:var(--serif);font-size:27px;line-height:1.05;color:var(--ink)}.trust-bar{padding:34px 0;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.trust-grid div{padding:6px 22px;border-left:1px solid var(--line)}.trust-grid div:first-child{border-left:0}.trust-grid strong{display:block;font-family:var(--serif);font-size:24px;line-height:1.1;margin-bottom:8px}.trust-grid span{font-size:13px;color:var(--muted);line-height:1.55}.statement-grid{display:grid;grid-template-columns:.85fr 1fr;gap:96px}.section-kicker h2,.section-header h2,.story-copy h2,.process-intro h2,.contact-copy h2{font-family:var(--serif);font-size:clamp(42px,4.8vw,68px);line-height:.98;letter-spacing:-.035em;margin:0;color:#211f1b}.statement-copy p,.section-header p,.story-copy p,.process-intro p,.contact-copy p,.quote-card p{color:#5f5a52;font-size:17px;margin:0 0 18px}.photo-story{padding:96px 0}.story-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:74px;align-items:center}.story-large{margin:0;border-radius:34px;overflow:hidden;box-shadow:var(--shadow)}.story-large img{height:620px;width:100%;object-fit:cover}.check-list{list-style:none;padding:0;margin:26px 0 0;display:grid;gap:12px}.check-list li{position:relative;padding-left:34px;color:#34312d}.check-list li:before{content:"";position:absolute;left:0;top:8px;width:16px;height:16px;border-radius:50%;background:var(--bronze);box-shadow:inset 0 0 0 5px #f1ece3}.section-header{display:grid;grid-template-columns:.9fr 1fr;gap:58px;align-items:end;margin-bottom:42px}.section-header.centered{display:block;text-align:center;max-width:850px;margin-left:auto;margin-right:auto}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-card{background:var(--paper);border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow-soft);transition:.3s ease}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-card img{width:100%;height:245px;object-fit:cover}.service-card div{padding:26px}.service-card span{color:var(--bronze-dark);font-weight:800;font-size:12px;letter-spacing:.18em}.service-card h3{font-family:var(--serif);font-size:31px;line-height:1;margin:12px 0 14px}.service-card p{color:var(--muted);font-size:15px;margin:0}
.hospitality-section{padding:86px 0;background:#f1ece3}
.hospitality-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:56px;align-items:start}
.hospitality-copy h2{font-family:var(--serif);font-size:clamp(40px,4.5vw,62px);line-height:.98;letter-spacing:-.035em;margin:0 0 18px;color:#211f1b}
.hospitality-copy p{color:#5f5a52;font-size:17px;margin:0}
.hospitality-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.hospitality-list div{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow-soft)}
.hospitality-list strong{display:block;font-family:var(--serif);font-size:27px;line-height:1.05;margin-bottom:8px;color:var(--ink)}
.hospitality-list span{display:block;color:var(--muted);font-size:14px;line-height:1.5}

.audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.audience-card{background:rgba(255,253,248,.72);border:1px solid var(--line);border-radius:30px;padding:34px;min-height:320px;box-shadow:var(--shadow-soft)}.audience-card h3{font-family:var(--serif);font-size:36px;line-height:.98;margin:0 0 18px}.audience-card p{color:var(--muted);margin:0}.image-band{padding:0 0 96px;background:var(--ivory)}.band-grid{display:grid;grid-template-columns:1.2fr .85fr 1fr;gap:20px;align-items:stretch}.band-image{margin:0;border-radius:30px;overflow:hidden;box-shadow:var(--shadow-soft)}.band-image img{width:100%;height:360px;object-fit:cover}
.about-section{background:linear-gradient(180deg,#fbfaf7 0%,#f6f1e8 100%)}
.about-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:70px;align-items:center}
.about-image{margin:0;border-radius:32px;overflow:hidden;box-shadow:var(--shadow-soft)}
.about-image img{width:100%;height:540px;object-fit:cover}
.about-copy h2{font-family:var(--serif);font-size:clamp(40px,4.5vw,62px);line-height:.98;letter-spacing:-.035em;margin:0 0 20px;color:#211f1b}
.about-copy p{color:#5f5a52;font-size:17px;margin:0 0 18px}
.about-pills{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px}
.about-pills span{display:inline-flex;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.72);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze-dark);font-weight:700}

.process-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:70px}.process-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.step{background:var(--paper);border:1px solid var(--line);border-radius:26px;padding:28px}.step span{display:inline-block;margin-bottom:30px;color:var(--bronze-dark);font-weight:800;font-size:12px;letter-spacing:.18em}.step strong{display:block;font-family:var(--serif);font-size:31px;line-height:1;margin-bottom:12px}.step p{margin:0;color:var(--muted);font-size:15px}.quote-section{padding:94px 0;background:var(--paper)}.quote-card{max-width:900px;margin:0 auto;text-align:center}.quote-card blockquote{font-family:var(--serif);font-size:clamp(44px,5vw,78px);line-height:.92;letter-spacing:-.04em;margin:0 0 26px;color:var(--ink)}.contact-section{background:linear-gradient(135deg,#25221e 0%,#1f2a35 100%);color:var(--paper)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:68px;align-items:start}.contact-copy h2,.contact-copy p{color:var(--paper)}.contact-copy p{opacity:.78}.contact-details{display:grid;gap:10px;margin-top:26px}.contact-details a,.contact-details span{color:#efe5d5}.consultation-form{background:var(--paper);color:var(--ink);border-radius:34px;padding:34px;box-shadow:0 30px 70px rgba(0,0,0,.25)}.consultation-form label{display:block;font-size:13px;font-weight:700;margin-bottom:16px;color:#4d473e}.consultation-form input,.consultation-form textarea{width:100%;margin-top:8px;border:1px solid rgba(36,33,29,.16);border-radius:16px;padding:14px 14px;background:#fbfaf7;font:inherit;color:var(--ink);outline:none}.consultation-form input:focus,.consultation-form textarea:focus{border-color:var(--bronze);box-shadow:0 0 0 4px rgba(168,132,75,.12)}.form-note{font-size:12px;color:var(--muted);margin:14px 0 0}.site-footer{padding:54px 0;background:#171512;color:#f2eadf}.footer-grid{display:grid;grid-template-columns:1.1fr .6fr 1fr;gap:34px}.footer-logo{width:180px;margin-bottom:18px;filter:invert(1)}.site-footer p,.footer-meta span{color:rgba(242,234,223,.72);font-size:14px}.footer-links{display:grid;gap:10px}.footer-links a{color:#f2eadf}.footer-meta{display:grid;gap:8px;justify-items:start}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}
@media (max-width: 980px){.nav-links,.nav-cta{display:none}.mobile-toggle{display:inline-flex}.mobile-menu.open{display:grid;gap:14px;padding:0 20px 20px;background:rgba(248,246,241,.98);border-bottom:1px solid var(--line)}.mobile-menu a{padding:10px 0;text-transform:uppercase;font-size:12px;letter-spacing:.08em;color:var(--muted)}.brand img{width:170px}.hero-grid,.statement-grid,.story-grid,.section-header,.hospitality-grid,.about-grid,.process-grid,.contact-grid{grid-template-columns:1fr;gap:38px}.hero-photo img,.story-large img{height:460px}.floating-card{position:relative;left:auto;bottom:auto;width:auto;margin-top:-40px;margin-left:22px;margin-right:22px}.trust-grid,.service-grid,.audience-grid,.hospitality-list,.process-steps{grid-template-columns:1fr 1fr}.trust-grid div{border-left:0;border-top:1px solid var(--line);padding-top:16px}.band-grid{grid-template-columns:1fr}.band-image img{height:310px}.footer-grid{grid-template-columns:1fr}}
@media (max-width: 640px){.container{width:min(100% - 28px,1180px)}.section{padding:68px 0}.hero{padding-top:48px}.hero-copy h1{font-size:48px}.lead{font-size:17px}.quiet-proof,.trust-grid,.service-grid,.audience-grid,.hospitality-list,.process-steps{grid-template-columns:1fr}.hero-photo img{height:410px}.hero-photo figcaption{font-size:23px;left:20px;right:20px}.section-kicker h2,.section-header h2,.story-copy h2,.process-intro h2,.contact-copy h2{font-size:42px}.service-card img{height:220px}.audience-card{min-height:auto}.about-image img{height:420px}.contact-section{padding-bottom:78px}.consultation-form{padding:24px}}



/* v7 polish fixes */
.hero-grid{grid-template-columns:.92fr 1.08fr;gap:76px;align-items:center}
.hero-copy h1{max-width:720px}
.hero-photo img{height:650px}
.hero-photo figcaption{
  max-width:560px;
  font-size:24px;
  line-height:1.08;
  text-shadow:0 2px 14px rgba(0,0,0,.28);
}
.floating-card{
  position:relative;
  left:auto;
  bottom:auto;
  width:auto;
  max-width:520px;
  margin:18px 0 0 auto;
  background:rgba(255,253,248,.97);
  border:1px solid rgba(168,132,75,.24);
  box-shadow:0 14px 38px rgba(46,38,28,.10);
  padding:18px 20px;
  border-radius:20px;
}
.floating-card strong{
  font-size:24px;
  line-height:1.05;
}
.service-card p,.hospitality-list span,.step p{
  line-height:1.62;
}
.hospitality-section{
  background:linear-gradient(180deg,#f4efe6 0%,#eee7dc 100%);
}
.hospitality-copy p{
  max-width:660px;
}
.hospitality-list div{
  min-height:150px;
}
.quote-card blockquote{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
}
@media (max-width: 980px){
  .hero-grid{grid-template-columns:1fr;gap:42px}
  .floating-card{margin:16px 0 0 0;max-width:none}
  .hero-photo img{height:500px}
}
@media (max-width: 640px){
  .hero-photo img{height:390px}
  .hero-photo figcaption{font-size:20px}
  .floating-card strong{font-size:21px}
  /* Additional mobile refinements for better flow on small screens */
  .hero-copy{
    text-align:center;
  }
  .hero-actions{
    justify-content:center;
  }
  .floating-card{
    margin-left:auto;
    margin-right:auto;
  }
}


/* v8 hospitality + broker section upgrades */
.hospitality-header{align-items:end;margin-bottom:32px}
.hospitality-intro p{max-width:620px;color:var(--muted);font-size:17px;line-height:1.68}
.hospitality-grid-enhanced{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.hospitality-feature{
  background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(251,247,239,.92) 100%);
  border:1px solid rgba(168,132,75,.18);
  border-radius:28px;
  padding:26px 24px 24px;
  box-shadow:0 14px 34px rgba(45,37,26,.06);
}
.hospitality-feature h3{
  margin:8px 0 10px;
  font-family:var(--serif);
  font-size:34px;
  line-height:.98;
  letter-spacing:-.03em;
  color:var(--ink);
}
.hospitality-feature p{
  margin:0;
  color:var(--muted);
  font-size:15px;
  line-height:1.66;
}
.feature-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid rgba(168,132,75,.25);
  color:var(--bronze-dark);
  background:rgba(255,253,248,.9);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
}
.partner-section{
  background:linear-gradient(180deg,#f7f3ec 0%,#f2ece3 100%);
}
.partner-grid{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:42px;
  align-items:start;
}
.partner-copy h2{
  font-family:var(--serif);
  font-size:clamp(40px,4.5vw,60px);
  line-height:.98;
  letter-spacing:-.038em;
  margin:0 0 18px;
  color:var(--ink);
}
.partner-copy p{
  color:var(--muted);
  font-size:17px;
  line-height:1.7;
  margin:0 0 16px;
}
.partner-panel{
  background:rgba(255,255,255,.76);
  border:1px solid rgba(168,132,75,.16);
  border-radius:30px;
  padding:18px;
  box-shadow:var(--shadow-soft);
  display:grid;
  gap:14px;
}
.partner-point{
  background:#fffdfa;
  border:1px solid var(--line);
  border-radius:22px;
  padding:20px 20px 18px;
}
.partner-point strong{
  display:block;
  font-family:var(--serif);
  font-size:28px;
  line-height:1.02;
  color:var(--ink);
  margin-bottom:8px;
}
.partner-point span{
  display:block;
  color:var(--muted);
  font-size:14px;
  line-height:1.58;
}
@media (max-width:980px){
  .hospitality-grid-enhanced,.partner-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .hospitality-feature h3,.partner-point strong{font-size:28px}
}


/* v9 copy and audience refinements */
.hero-copy h1{font-size:clamp(58px,7vw,104px);line-height:.94;letter-spacing:-.052em;max-width:760px}
.statement-copy h2{max-width:820px}
.partner-copy h2{max-width:740px}
.partner-copy .eyebrow{max-width:420px}



/* v14 visual richness pass */
.visual-standard-section{
  background:linear-gradient(180deg,#fbfaf7 0%,#efe7da 100%);
  padding:104px 0;
}
.visual-standard-header{
  max-width:940px;
  margin:0 0 38px;
}
.visual-standard-header h2{
  font-family:var(--serif);
  font-size:clamp(44px,5vw,72px);
  line-height:.96;
  letter-spacing:-.04em;
  color:var(--ink);
  margin:0 0 18px;
}
.visual-standard-header p{
  max-width:760px;
  color:var(--muted);
  font-size:17px;
  line-height:1.7;
  margin:0;
}
.visual-standard-grid{
  display:grid;
  grid-template-columns:1.25fr .9fr .9fr;
  gap:22px;
  align-items:stretch;
}
.visual-card{
  position:relative;
  margin:0;
  min-height:430px;
  overflow:hidden;
  border-radius:34px;
  box-shadow:var(--shadow-soft);
  background:#ddd;
}
.visual-card.large{min-height:560px}
.visual-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:saturate(.96) contrast(1.02);
}
.visual-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.62) 100%);
}
.visual-card figcaption{
  position:absolute;
  left:24px;
  right:24px;
  bottom:22px;
  z-index:2;
  color:#fff;
}
.visual-card figcaption strong{
  display:block;
  font-family:var(--serif);
  font-size:31px;
  line-height:1.02;
  margin-bottom:8px;
}
.visual-card figcaption span{
  display:block;
  color:rgba(255,255,255,.84);
  font-size:14px;
  line-height:1.5;
  max-width:360px;
}
.photo-story .story-large img{
  filter:saturate(.98) contrast(1.03);
}
@media (max-width:980px){
  .visual-standard-grid{grid-template-columns:1fr}
  .visual-card,.visual-card.large{min-height:430px}
}
@media (max-width:640px){
  .visual-standard-section{padding:76px 0}
  .visual-card,.visual-card.large{min-height:340px}
}


/* v15 refined luxury pass */
:root{--champagne:#efe6d8;--warm-panel:#f8f3eb;--soft-gold:rgba(168,132,75,.22)}
body{background:#fbfaf7}
.site-header{backdrop-filter:saturate(1.1) blur(18px)}
.hero{padding:94px 0 74px}
.hero-grid{grid-template-columns:.95fr 1.05fr;gap:88px}
.hero-copy h1{font-size:clamp(62px,7.3vw,112px);line-height:.89;letter-spacing:-.058em;max-width:830px}
.lead{font-size:20px;line-height:1.74;max-width:720px}
.hero-photo{border-radius:42px;box-shadow:0 38px 90px rgba(42,34,22,.16)}
.hero-photo img{height:660px}
.hero-photo figcaption{max-width:540px;font-size:24px;line-height:1.08}
.floating-card{border-radius:24px;max-width:560px}
.floating-card strong{font-size:25px}
.trust-bar{background:linear-gradient(90deg,#fffdfa 0%,#f6efe4 100%)}
.statement-section{padding-top:120px}
.statement-copy{border-left:1px solid rgba(168,132,75,.22);padding-left:42px}
.story-large{border-radius:40px}
.story-large img{height:650px}
.services-section{background:linear-gradient(180deg,#fbfaf7 0%,#f6f0e7 100%)}
.service-card{border-radius:32px;background:rgba(255,253,248,.86)}
.service-card img{height:270px}
.hospitality-section{padding:112px 0}
.hospitality-feature{border-radius:32px;padding:30px 28px 28px}
.hospitality-feature h3{font-size:36px}
.partner-section{padding:112px 0}
.partner-panel{border-radius:34px}
.refined-visual-section{padding:122px 0;background:linear-gradient(180deg,#fbfaf7 0%,#eee4d6 100%)}
.visual-standard-header{max-width:1000px;margin-bottom:46px}
.visual-standard-header h2{font-size:clamp(48px,5.7vw,84px)}
.visual-standard-header p{max-width:820px;font-size:18px}
.editorial-grid{display:grid;grid-template-columns:1.2fr .82fr .82fr;grid-auto-rows:285px;gap:22px}
.editorial-card{position:relative;margin:0;border-radius:38px;overflow:hidden;background:#ddd;box-shadow:0 24px 70px rgba(42,34,22,.12)}
.editorial-large{grid-row:span 2}
.editorial-wide{grid-column:span 2}
.editorial-card img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.96) contrast(1.03)}
.editorial-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 38%,rgba(0,0,0,.72) 100%)}
.editorial-card figcaption{position:absolute;left:26px;right:26px;bottom:24px;z-index:2;color:#fff}
.editorial-card figcaption span{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);font-size:12px;letter-spacing:.12em;margin-bottom:14px}
.editorial-card figcaption strong{display:block;font-family:var(--serif);font-size:32px;line-height:1;letter-spacing:-.025em;margin-bottom:8px}
.editorial-card figcaption p{margin:0;max-width:440px;color:rgba(255,255,255,.82);font-size:14px;line-height:1.55}
.client-path-section{padding:112px 0;background:linear-gradient(180deg,#f6efe4 0%,#fbfaf7 100%)}
.client-path-heading{max-width:880px;margin-bottom:40px}
.client-path-heading h2{font-family:var(--serif);font-size:clamp(44px,5vw,74px);line-height:.96;letter-spacing:-.04em;margin:0;color:var(--ink)}
.client-path-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.client-path-card{background:rgba(255,253,248,.86);border:1px solid rgba(168,132,75,.18);border-radius:30px;padding:28px 24px;box-shadow:0 14px 40px rgba(42,34,22,.06)}
.client-path-card span{display:block;color:var(--bronze-dark);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}
.client-path-card h3{font-family:var(--serif);font-size:31px;line-height:1;letter-spacing:-.025em;margin:0 0 14px;color:var(--ink)}
.client-path-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.62}
.quote-card{border-radius:42px;background:linear-gradient(180deg,#fffdfa 0%,#f5eee3 100%)}
.quote-card blockquote{font-size:clamp(42px,5.2vw,74px)}
.contact-section{background:#171513}
.contact-copy h2,.contact-copy p,.contact-details a,.contact-details span{color:#fff}
.contact-copy .eyebrow{color:#d8bf92}
.consultation-form{background:#fffdfa;border-color:rgba(255,255,255,.14)}
@media (max-width:1100px){
  .client-path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .editorial-grid{grid-template-columns:1fr 1fr;grid-auto-rows:320px}
  .editorial-large,.editorial-wide{grid-column:span 1;grid-row:span 1}
}
@media (max-width:980px){
  .hero-grid{grid-template-columns:1fr;gap:44px}
  .statement-copy{border-left:0;padding-left:0}
  .editorial-grid{grid-template-columns:1fr}
  .client-path-grid{grid-template-columns:1fr}
}
@media (max-width:640px){
  .hero-copy h1{font-size:clamp(48px,14vw,72px)}
  .hero-photo img{height:430px}
  .story-large img{height:430px}
  .editorial-grid{grid-auto-rows:360px}
}


/* v16 refined image + flow pass */
.hero-photo img{
  object-position:center center;
  filter:saturate(.94) contrast(1.02) brightness(.98);
}
.hero-photo:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,0) 42%),linear-gradient(180deg,rgba(0,0,0,0) 48%,rgba(0,0,0,.55) 100%);
  pointer-events:none;
}
.main-photo:after{display:none}
.hero-photo figcaption{z-index:2}
.editorial-card img{
  object-position:center center;
}
.editorial-large img{
  object-position:center center;
}
.editorial-wide img{
  object-position:center center;
}
.statement-section{
  background:linear-gradient(180deg,#fbfaf7 0%,#f5eee3 100%);
}
.statement-grid{
  align-items:start;
}
.statement-copy p:first-child{
  font-size:18px;
  color:#3f3932;
}
.visual-standard-header h2{
  max-width:970px;
}
.service-card img[src*="tw-generator"]{
  object-position:center center;
}


/* v17 final pass */
.service-card img[src*="generator"], .editorial-card img[src*="generator"]{
  object-position:center center;
  filter:saturate(.92) contrast(1.04) brightness(.98);
}
.nav-links a, .mobile-menu a{
  letter-spacing:.14em;
}
.hero-copy h1{
  text-wrap:balance;
}
.section-kicker h2,.section-header h2,.visual-standard-header h2,.client-path-heading h2{
  text-wrap:balance;
}


/* v19 generator team image polish */
img[src*="tw-generator-team-polished"]{
  object-position:center center;
  filter:saturate(.96) contrast(1.02);
}
.service-card img[src*="tw-generator-team-polished"]{
  object-position:center center;
}
.editorial-card img[src*="tw-generator-team-polished"]{
  object-position:center center;
}


/* v20 final cleanup */
.editorial-card img[src*="hvac-check"]{
  object-position:center center;
  filter:saturate(.94) contrast(1.04) brightness(.99);
}
.service-card img[src*="tw-generator-team-polished"]{
  object-position:center center;
}


/* v21 final image + wording polish */
.hero-service-note{
  max-width:650px;
  margin:24px 0 0;
  padding-left:18px;
  border-left:1px solid rgba(168,132,75,.38);
  color:#625c54;
  font-size:14px;
  line-height:1.68;
}
.hero-photo img{object-position:center center}
.service-card img[src*="tablet-pipes"]{object-position:center center;filter:saturate(.94) contrast(1.05) brightness(.98)}
.service-card img[src*="tw-generator-team-polished"]{object-position:center center}
.story-large img{object-position:center center}
.hospitality-feature p,.client-path-card p,.partner-point span,.service-card p{line-height:1.68}
.trust-grid strong{letter-spacing:-.02em}
.quote-card blockquote{text-wrap:balance}
.contact-copy h2{text-wrap:balance}
@media (max-width:640px){.hero-service-note{font-size:13px;margin-top:18px}}


/* v22 mobile readability + Netlify form polish */
.hidden {
  display: none !important;
}

.thank-you-section {
  min-height: 100vh;
  display: flex;
  align-items: center;
  background:
    linear-gradient(135deg, rgba(248,246,241,.92), rgba(241,236,227,.96)),
    url("../assets/tw-modern-gate.webp") center/cover no-repeat;
}
.thank-you-card {
  max-width: 760px;
  background: rgba(255,253,248,.94);
  border: 1px solid rgba(168,132,75,.22);
  border-radius: 34px;
  padding: 46px;
  box-shadow: var(--shadow);
}
.thank-you-card h1 {
  font-family: var(--serif);
  font-size: clamp(54px, 7vw, 92px);
  line-height: .9;
  letter-spacing: -.05em;
  margin: 0 0 18px;
}
.thank-you-card p {
  color: var(--muted);
  font-size: 18px;
  line-height: 1.7;
}

@media (max-width: 760px) {
  body {
    overflow-x: hidden;
  }

  .site-header {
    background: rgba(248,246,241,.94);
  }

  .nav-wrap {
    min-height: 68px;
  }

  .brand img {
    width: 148px;
  }

  .hero {
    min-height: 100svh;
    padding: 92px 0 54px;
    background:
      linear-gradient(180deg, rgba(18,16,13,.36) 0%, rgba(18,16,13,.18) 30%, rgba(248,246,241,.92) 100%),
      url("../assets/tw-modern-gate.webp") center top/cover no-repeat;
  }

  .hero:before {
    display: none;
  }

  .hero-grid {
    display: block;
  }

  .hero-copy {
    text-align: left;
    background: rgba(255,253,248,.90);
    border: 1px solid rgba(168,132,75,.22);
    border-radius: 30px;
    padding: 24px 20px 22px;
    box-shadow: 0 20px 54px rgba(30,25,18,.18);
    backdrop-filter: blur(14px);
  }

  .hero-copy h1 {
    font-size: clamp(44px, 13vw, 64px);
    line-height: .92;
    letter-spacing: -.055em;
    margin-bottom: 18px;
  }

  .lead {
    font-size: 16px;
    line-height: 1.62;
    margin-bottom: 22px;
  }

  .hero-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 18px;
  }

  .btn {
    width: 100%;
    padding: 14px 18px;
    font-size: 11px;
    letter-spacing: .07em;
    text-align: center;
  }

  .quiet-proof {
    grid-template-columns: 1fr 1fr;
    gap: 8px 12px;
  }

  .quiet-proof span {
    font-size: 12px;
    line-height: 1.35;
  }

  .hero-service-note {
    font-size: 13px;
    line-height: 1.55;
    margin-top: 16px;
  }

  .hero-visual {
    margin-top: 24px;
  }

  .hero-photo {
    display: none;
  }

  .floating-card {
    width: 100%;
    max-width: none;
    margin: 16px 0 0;
    padding: 18px;
    background: rgba(255,253,248,.94);
    border-radius: 24px;
  }

  .floating-card strong {
    font-size: 22px;
  }

  .trust-bar {
    padding: 24px 0;
  }

  .trust-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .trust-grid div {
    border-left: 0;
    border-top: 1px solid var(--line);
    padding: 16px 0 0;
  }

  .section {
    padding: 72px 0;
  }

  .story-large img,
  .about-image img,
  .service-card img {
    height: auto;
    max-height: 430px;
  }

  .service-card,
  .audience-card,
  .hospitality-feature,
  .step,
  .partner-point,
  .client-path-card {
    border-radius: 24px;
  }

  .contact-grid {
    gap: 28px;
  }

  .consultation-form {
    border-radius: 26px;
    padding: 22px;
  }

  .consultation-form input,
  .consultation-form textarea {
    font-size: 16px;
  }
}

@media (max-width: 430px) {
  .container {
    width: min(100% - 24px, 1180px);
  }

  .hero-copy {
    padding: 22px 18px;
  }

  .quiet-proof {
    grid-template-columns: 1fr;
  }
}


/* v26 mobile hero: premium background style, not a popup card */
.hidden {
  display: none !important;
}

@media (max-width: 760px) {
  body {
    overflow-x: hidden;
  }

  .site-header {
    background: rgba(248,246,241,.94);
  }

  .nav-wrap {
    min-height: 68px;
  }

  .brand img {
    width: 148px;
  }

  .hero {
    min-height: 100svh;
    padding: 92px 0 58px;
    background:
      linear-gradient(180deg, rgba(10,9,7,.72) 0%, rgba(10,9,7,.48) 44%, rgba(248,246,241,.98) 100%),
      url("../assets/tw-modern-gate.webp") center top/cover no-repeat;
  }

  .hero:before {
    display: none;
  }

  .hero-grid {
    display: block;
  }

  .hero-copy {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    padding: 18px 2px 0 !important;
    text-align: left;
  }

  .hero-copy .eyebrow {
    color: #f0d8a6;
    text-shadow: 0 2px 14px rgba(0,0,0,.38);
  }

  .hero-copy h1 {
    color: #fffdf8;
    font-size: clamp(44px, 13vw, 64px);
    line-height: .9;
    letter-spacing: -.055em;
    margin-bottom: 18px;
    text-shadow: 0 3px 24px rgba(0,0,0,.42);
  }

  .lead {
    color: rgba(255,253,248,.92);
    font-size: 16px;
    line-height: 1.62;
    margin-bottom: 22px;
    text-shadow: 0 2px 16px rgba(0,0,0,.42);
  }

  .hero-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 20px;
  }

  .hero-actions .btn {
    width: 100%;
    padding: 14px 18px;
    font-size: 11px;
    letter-spacing: .07em;
  }

  .hero-actions .btn-primary {
    background: #fffdf8;
    color: #211f1b;
    box-shadow: 0 18px 46px rgba(0,0,0,.20);
  }

  .hero-actions .btn-secondary {
    color: #fffdf8;
    background: rgba(255,255,255,.12);
    border-color: rgba(255,255,255,.48);
    backdrop-filter: blur(6px);
  }

  .quiet-proof {
    grid-template-columns: 1fr 1fr;
    gap: 8px 12px;
    max-width: none;
  }

  .quiet-proof span {
    color: rgba(255,253,248,.90);
    border-top-color: rgba(255,255,255,.38);
    font-size: 12px;
    line-height: 1.35;
    text-shadow: 0 2px 12px rgba(0,0,0,.36);
  }

  .hero-service-note {
    color: rgba(255,253,248,.92);
    font-size: 13px;
    line-height: 1.55;
    margin-top: 16px;
    text-shadow: 0 2px 14px rgba(0,0,0,.42);
  }

  .hero-visual {
    display: none;
  }

  .trust-bar {
    margin-top: 0;
    padding: 24px 0;
  }

  .trust-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .trust-grid div {
    border-left: 0;
    border-top: 1px solid var(--line);
    padding: 16px 0 0;
  }

  .section {
    padding: 72px 0;
  }

  .story-large img,
  .about-image img,
  .service-card img {
    height: auto;
    max-height: 430px;
  }

  .service-card,
  .audience-card,
  .hospitality-feature,
  .step,
  .partner-point,
  .client-path-card {
    border-radius: 24px;
  }

  .contact-grid {
    gap: 28px;
  }

  .consultation-form {
    border-radius: 26px;
    padding: 22px;
  }

  .consultation-form input,
  .consultation-form textarea {
    font-size: 16px;
  }
}

@media (max-width: 430px) {
  .container {
    width: min(100% - 24px, 1180px);
  }

  .quiet-proof {
    grid-template-columns: 1fr;
  }

  .hero {
    padding-top: 86px;
  }
}


/* v27: mobile hero without popup card + robust Netlify form polish */
.hidden { display: none !important; }

.thank-you-section {
  min-height: 100vh;
  display: flex;
  align-items: center;
  background:
    linear-gradient(135deg, rgba(248,246,241,.92), rgba(241,236,227,.96)),
    url("../assets/tw-modern-gate.webp") center/cover no-repeat;
}
.thank-you-card {
  max-width: 760px;
  background: rgba(255,253,248,.94);
  border: 1px solid rgba(168,132,75,.22);
  border-radius: 34px;
  padding: 46px;
  box-shadow: var(--shadow);
}
.thank-you-card h1 {
  font-family: var(--serif);
  font-size: clamp(54px, 7vw, 92px);
  line-height: .9;
  letter-spacing: -.05em;
  margin: 0 0 18px;
}
.thank-you-card p {
  color: var(--muted);
  font-size: 18px;
  line-height: 1.7;
}

@media (max-width: 760px) {
  body { overflow-x: hidden; }

  .site-header { background: rgba(248,246,241,.96); }
  .nav-wrap { min-height: 68px; }
  .brand img { width: 148px; }

  .hero {
    min-height: 100svh;
    padding: 110px 0 64px !important;
    background:
      linear-gradient(180deg, rgba(7,7,6,.70) 0%, rgba(7,7,6,.42) 44%, rgba(248,246,241,.94) 100%),
      url("../assets/tw-modern-gate.webp") center top/cover no-repeat !important;
    overflow: hidden;
  }
  .hero:before { display: none !important; }
  .hero-grid { display: block !important; }

  /* The important part: no white pop-up panel */
  .hero-copy {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .hero-copy .eyebrow {
    color: #f2d7a3 !important;
    text-shadow: 0 2px 16px rgba(0,0,0,.55);
  }
  .hero-copy h1 {
    color: #fffdf8 !important;
    font-size: clamp(44px, 13.2vw, 64px) !important;
    line-height: .90 !important;
    letter-spacing: -.056em !important;
    margin-bottom: 18px !important;
    text-shadow: 0 4px 30px rgba(0,0,0,.58);
  }
  .lead {
    color: rgba(255,253,248,.96) !important;
    font-size: 16px !important;
    line-height: 1.62 !important;
    margin-bottom: 22px !important;
    text-shadow: 0 2px 18px rgba(0,0,0,.60);
  }

  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-bottom: 20px !important;
    justify-content: stretch !important;
  }
  .hero-actions .btn {
    width: 100% !important;
    padding: 14px 18px !important;
    font-size: 11px !important;
    letter-spacing: .07em !important;
  }
  .hero-actions .btn-primary {
    background: #fffdf8 !important;
    color: #211f1b !important;
    box-shadow: 0 18px 46px rgba(0,0,0,.22) !important;
  }
  .hero-actions .btn-secondary {
    color: #fffdf8 !important;
    background: rgba(255,255,255,.11) !important;
    border-color: rgba(255,255,255,.56) !important;
    backdrop-filter: blur(6px);
  }

  .quiet-proof {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px 12px !important;
    max-width: none !important;
  }
  .quiet-proof span {
    color: rgba(255,253,248,.92) !important;
    border-top-color: rgba(255,255,255,.40) !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    text-shadow: 0 2px 14px rgba(0,0,0,.46);
  }
  .hero-service-note {
    color: rgba(255,253,248,.94) !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    margin-top: 16px !important;
    text-shadow: 0 2px 16px rgba(0,0,0,.55);
  }

  .hero-visual { display: none !important; }
  .floating-card { display: none !important; }

  .trust-bar { margin-top: 0; padding: 24px 0; }
  .trust-grid { grid-template-columns: 1fr !important; gap: 10px; }
  .trust-grid div {
    border-left: 0 !important;
    border-top: 1px solid var(--line);
    padding: 16px 0 0;
  }

  .section { padding: 72px 0; }
  .story-large img, .about-image img, .service-card img {
    height: auto;
    max-height: 430px;
  }
  .service-card, .audience-card, .hospitality-feature, .step, .partner-point, .client-path-card {
    border-radius: 24px;
  }
  .contact-grid { gap: 28px; }
  .consultation-form {
    border-radius: 26px;
    padding: 22px;
  }
  .consultation-form input, .consultation-form textarea {
    font-size: 16px;
  }
}

@media (max-width: 430px) {
  .container { width: min(100% - 24px, 1180px); }
  .quiet-proof { grid-template-columns: 1fr !important; }
  .hero { padding-top: 96px !important; }
}


/* v28: tighter mobile hero + no light bottom wash + AJAX form states */
.hidden { display: none !important; }
.lead-mobile { display: none; }

.form-status {
  margin-top: 14px;
  padding: 13px 14px;
  border-radius: 14px;
  font-size: 14px;
  line-height: 1.45;
  display: none;
}
.form-status a { text-decoration: underline; font-weight: 700; }
.form-status.is-pending,
.form-status.is-success,
.form-status.is-error { display: block; }
.form-status.is-pending {
  background: rgba(168,132,75,.10);
  color: var(--bronze-dark);
  border: 1px solid rgba(168,132,75,.20);
}
.form-status.is-success {
  background: rgba(42,111,83,.10);
  color: #275f48;
  border: 1px solid rgba(42,111,83,.22);
}
.form-status.is-error {
  background: rgba(130,48,36,.10);
  color: #7c2f24;
  border: 1px solid rgba(130,48,36,.22);
}

.thank-you-section {
  min-height: 100vh;
  display: flex;
  align-items: center;
  background:
    linear-gradient(135deg, rgba(248,246,241,.92), rgba(241,236,227,.96)),
    url("../assets/tw-modern-gate.webp") center/cover no-repeat;
}
.thank-you-card {
  max-width: 760px;
  background: rgba(255,253,248,.94);
  border: 1px solid rgba(168,132,75,.22);
  border-radius: 34px;
  padding: 46px;
  box-shadow: var(--shadow);
}
.thank-you-card h1 {
  font-family: var(--serif);
  font-size: clamp(54px, 7vw, 92px);
  line-height: .9;
  letter-spacing: -.05em;
  margin: 0 0 18px;
}
.thank-you-card p {
  color: var(--muted);
  font-size: 18px;
  line-height: 1.7;
}

@media (max-width: 760px) {
  body { overflow-x: hidden; }

  .site-header { background: rgba(248,246,241,.96); }
  .nav-wrap { min-height: 68px; }
  .brand img { width: 148px; }

  .hero {
    min-height: 100svh;
    padding: 96px 0 58px !important;
    background:
      linear-gradient(180deg, rgba(7,7,6,.70) 0%, rgba(7,7,6,.48) 45%, rgba(7,7,6,.58) 100%),
      url("../assets/tw-modern-gate.webp") center top/cover no-repeat !important;
    overflow: hidden;
  }
  .hero:before { display: none !important; }
  .hero-grid { display: block !important; }

  .hero-copy {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .hero-copy .eyebrow {
    color: #f2d7a3 !important;
    text-shadow: 0 2px 16px rgba(0,0,0,.55);
    margin-bottom: 14px !important;
  }
  .hero-copy h1 {
    color: #fffdf8 !important;
    font-size: clamp(40px, 12.2vw, 58px) !important;
    line-height: .91 !important;
    letter-spacing: -.055em !important;
    margin-bottom: 18px !important;
    text-shadow: 0 4px 30px rgba(0,0,0,.58);
  }

  .lead-desktop { display: none !important; }
  .lead-mobile {
    display: block !important;
    color: rgba(255,253,248,.96) !important;
    font-size: 16px !important;
    line-height: 1.58 !important;
    margin-bottom: 22px !important;
    text-shadow: 0 2px 18px rgba(0,0,0,.60);
  }

  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-bottom: 18px !important;
    justify-content: stretch !important;
  }
  .hero-actions .btn {
    width: 100% !important;
    padding: 14px 18px !important;
    font-size: 11px !important;
    letter-spacing: .07em !important;
  }
  .hero-actions .btn-primary {
    background: #fffdf8 !important;
    color: #211f1b !important;
    box-shadow: 0 18px 46px rgba(0,0,0,.22) !important;
  }
  .hero-actions .btn-secondary {
    display: none !important;
  }

  /* Reduce mobile word density */
  .quiet-proof,
  .hero-service-note {
    display: none !important;
  }

  .hero-visual { display: none !important; }
  .floating-card { display: none !important; }

  .trust-bar {
    margin-top: 0;
    padding: 24px 0;
    background: var(--paper) !important;
  }
  .trust-grid { grid-template-columns: 1fr !important; gap: 10px; }
  .trust-grid div {
    border-left: 0 !important;
    border-top: 1px solid var(--line);
    padding: 16px 0 0;
  }

  .section { padding: 72px 0; }
  .story-large img, .about-image img, .service-card img {
    height: auto;
    max-height: 430px;
  }
  .service-card, .audience-card, .hospitality-feature, .step, .partner-point, .client-path-card {
    border-radius: 24px;
  }
  .contact-grid { gap: 28px; }
  .consultation-form {
    border-radius: 26px;
    padding: 22px;
  }
  .consultation-form input, .consultation-form textarea {
    font-size: 16px;
  }
}

@media (max-width: 430px) {
  .container { width: min(100% - 24px, 1180px); }
  .hero { padding-top: 90px !important; }
}


/* v29: compact lower contact form + native Netlify form */
.hidden { display: none !important; }
.lead-mobile { display: none; }

.consultation-form input:-webkit-autofill,
.consultation-form textarea:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fbfaf7 inset !important;
  -webkit-text-fill-color: var(--ink) !important;
}

.thank-you-section {
  min-height: 100vh;
  display: flex;
  align-items: center;
  background:
    linear-gradient(135deg, rgba(248,246,241,.92), rgba(241,236,227,.96)),
    url("../assets/tw-modern-gate.webp") center/cover no-repeat;
}
.thank-you-card {
  max-width: 760px;
  background: rgba(255,253,248,.94);
  border: 1px solid rgba(168,132,75,.22);
  border-radius: 34px;
  padding: 46px;
  box-shadow: var(--shadow);
}
.thank-you-card h1 {
  font-family: var(--serif);
  font-size: clamp(54px, 7vw, 92px);
  line-height: .9;
  letter-spacing: -.05em;
  margin: 0 0 18px;
}
.thank-you-card p {
  color: var(--muted);
  font-size: 18px;
  line-height: 1.7;
}

@media (max-width: 760px) {
  body { overflow-x: hidden; }

  .site-header { background: rgba(248,246,241,.96); }
  .nav-wrap { min-height: 68px; }
  .brand img { width: 148px; }

  .hero {
    min-height: 100svh;
    padding: 96px 0 58px !important;
    background:
      linear-gradient(180deg, rgba(7,7,6,.70) 0%, rgba(7,7,6,.48) 45%, rgba(7,7,6,.58) 100%),
      url("../assets/tw-modern-gate.webp") center top/cover no-repeat !important;
    overflow: hidden;
  }
  .hero:before { display: none !important; }
  .hero-grid { display: block !important; }

  .hero-copy {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .hero-copy .eyebrow {
    color: #f2d7a3 !important;
    text-shadow: 0 2px 16px rgba(0,0,0,.55);
    margin-bottom: 14px !important;
  }
  .hero-copy h1 {
    color: #fffdf8 !important;
    font-size: clamp(40px, 12.2vw, 58px) !important;
    line-height: .91 !important;
    letter-spacing: -.055em !important;
    margin-bottom: 18px !important;
    text-shadow: 0 4px 30px rgba(0,0,0,.58);
  }

  .lead-desktop { display: none !important; }
  .lead-mobile {
    display: block !important;
    color: rgba(255,253,248,.96) !important;
    font-size: 16px !important;
    line-height: 1.58 !important;
    margin-bottom: 22px !important;
    text-shadow: 0 2px 18px rgba(0,0,0,.60);
  }

  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-bottom: 18px !important;
  }
  .hero-actions .btn {
    width: 100% !important;
    padding: 14px 18px !important;
    font-size: 11px !important;
    letter-spacing: .07em !important;
  }
  .hero-actions .btn-primary {
    background: #fffdf8 !important;
    color: #211f1b !important;
    box-shadow: 0 18px 46px rgba(0,0,0,.22) !important;
  }
  .hero-actions .btn-secondary,
  .quiet-proof,
  .hero-service-note,
  .hero-visual,
  .floating-card {
    display: none !important;
  }

  .trust-bar {
    margin-top: 0;
    padding: 24px 0;
    background: var(--paper) !important;
  }

  .section { padding: 72px 0; }

  .contact-section {
    padding-top: 104px !important;
    padding-bottom: 104px !important;
  }
  .contact-grid {
    gap: 20px !important;
  }
  .contact-copy {
    max-width: 360px;
    margin: 0 auto;
  }
  .contact-copy h2 {
    font-size: 38px !important;
  }
  .contact-copy p {
    font-size: 14px !important;
    line-height: 1.6 !important;
  }
  .contact-details {
    font-size: 14px;
    gap: 7px !important;
  }
  .consultation-form {
    max-width: 360px;
    margin: 42px auto 0 !important;
    border-radius: 24px !important;
    padding: 18px !important;
  }
  .consultation-form label {
    font-size: 12px !important;
    margin-bottom: 11px !important;
  }
  .consultation-form input,
  .consultation-form textarea {
    font-size: 15px !important;
    padding: 11px 12px !important;
    border-radius: 14px !important;
  }
  .consultation-form textarea {
    min-height: 120px;
  }
  .consultation-form .btn {
    margin-top: 6px;
  }
  .form-note {
    font-size: 11px !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 430px) {
  .container { width: min(100% - 24px, 1180px); }
  .hero { padding-top: 90px !important; }
}


/* v30: lower mobile request button + hybrid form fallback */
.hidden { display: none !important; }
.lead-mobile { display: none; }

.form-status {
  margin-top: 14px;
  padding: 13px 14px;
  border-radius: 14px;
  font-size: 14px;
  line-height: 1.45;
  display: none;
}
.form-status a { text-decoration: underline; font-weight: 700; }
.form-status.is-pending, .form-status.is-success, .form-status.is-error { display: block; }
.form-status.is-pending {
  background: rgba(168,132,75,.10);
  color: var(--bronze-dark);
  border: 1px solid rgba(168,132,75,.20);
}
.form-status.is-success {
  background: rgba(42,111,83,.10);
  color: #275f48;
  border: 1px solid rgba(42,111,83,.22);
}
.form-status.is-error {
  background: rgba(130,48,36,.10);
  color: #7c2f24;
  border: 1px solid rgba(130,48,36,.22);
}

.consultation-form input:-webkit-autofill,
.consultation-form textarea:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px #fbfaf7 inset !important;
  -webkit-text-fill-color: var(--ink) !important;
}

.thank-you-section {
  min-height: 100vh;
  display: flex;
  align-items: center;
  background:
    linear-gradient(135deg, rgba(248,246,241,.92), rgba(241,236,227,.96)),
    url("../assets/tw-modern-gate.webp") center/cover no-repeat;
}
.thank-you-card {
  max-width: 760px;
  background: rgba(255,253,248,.94);
  border: 1px solid rgba(168,132,75,.22);
  border-radius: 34px;
  padding: 46px;
  box-shadow: var(--shadow);
}
.thank-you-card h1 {
  font-family: var(--serif);
  font-size: clamp(54px, 7vw, 92px);
  line-height: .9;
  letter-spacing: -.05em;
  margin: 0 0 18px;
}
.thank-you-card p {
  color: var(--muted);
  font-size: 18px;
  line-height: 1.7;
}

@media (max-width: 760px) {
  body { overflow-x: hidden; }

  .site-header { background: rgba(248,246,241,.96); }
  .nav-wrap { min-height: 68px; }
  .brand img { width: 148px; }

  .hero {
    min-height: 100svh;
    padding: 96px 0 58px !important;
    background:
      linear-gradient(180deg, rgba(7,7,6,.70) 0%, rgba(7,7,6,.48) 45%, rgba(7,7,6,.58) 100%),
      url("../assets/tw-modern-gate.webp") center top/cover no-repeat !important;
    overflow: hidden;
  }
  .hero:before { display: none !important; }
  .hero-grid { display: block !important; }

  .hero-copy {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  .hero-copy .eyebrow {
    color: #f2d7a3 !important;
    text-shadow: 0 2px 16px rgba(0,0,0,.55);
    margin-bottom: 14px !important;
  }
  .hero-copy h1 {
    color: #fffdf8 !important;
    font-size: clamp(40px, 12.2vw, 58px) !important;
    line-height: .91 !important;
    letter-spacing: -.055em !important;
    margin-bottom: 18px !important;
    text-shadow: 0 4px 30px rgba(0,0,0,.58);
  }

  .lead-desktop { display: none !important; }
  .lead-mobile {
    display: block !important;
    color: rgba(255,253,248,.96) !important;
    font-size: 16px !important;
    line-height: 1.58 !important;
    margin-bottom: 0 !important;
    text-shadow: 0 2px 18px rgba(0,0,0,.60);
  }

  /* Lower the request button so it has breathing room under the intro copy */
  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin-top: 52px !important;
    margin-bottom: 18px !important;
  }
  .hero-actions .btn {
    width: 100% !important;
    padding: 14px 18px !important;
    font-size: 11px !important;
    letter-spacing: .07em !important;
  }
  .hero-actions .btn-primary {
    background: #fffdf8 !important;
    color: #211f1b !important;
    box-shadow: 0 18px 46px rgba(0,0,0,.22) !important;
  }
  .hero-actions .btn-secondary,
  .quiet-proof,
  .hero-service-note,
  .hero-visual,
  .floating-card {
    display: none !important;
  }

  .trust-bar {
    margin-top: 0;
    padding: 24px 0;
    background: var(--paper) !important;
  }

  .section { padding: 72px 0; }

  .contact-section {
    padding-top: 108px !important;
    padding-bottom: 108px !important;
  }
  .contact-grid { gap: 20px !important; }
  .contact-copy {
    max-width: 360px;
    margin: 0 auto;
  }
  .contact-copy h2 { font-size: 38px !important; }
  .contact-copy p {
    font-size: 14px !important;
    line-height: 1.6 !important;
  }
  .contact-details {
    font-size: 14px;
    gap: 7px !important;
  }
  .consultation-form {
    max-width: 360px;
    margin: 46px auto 0 !important;
    border-radius: 24px !important;
    padding: 18px !important;
  }
  .consultation-form label {
    font-size: 12px !important;
    margin-bottom: 11px !important;
  }
  .consultation-form input,
  .consultation-form textarea {
    font-size: 15px !important;
    padding: 11px 12px !important;
    border-radius: 14px !important;
  }
  .consultation-form textarea { min-height: 120px; }
  .consultation-form .btn { margin-top: 6px; }
  .form-note {
    font-size: 11px !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 430px) {
  .container { width: min(100% - 24px, 1180px); }
  .hero { padding-top: 90px !important; }
  .hero-actions { margin-top: 58px !important; }
}
