:root{
  --black:#000;
  --surface:#080808;
  --surface-2:#0e0e0e;
  --surface-3:#151515;
  --gold:#c9a84c;
  --gold-2:#e1bd4c;
  --gold-3:#f3d77c;
  --white:#f5f0e8;
  --text:#eee8dd;
  --muted:#bdb2a3;
  --muted-2:#81786c;
  --line:rgba(201,168,76,.16);
  --line-strong:rgba(201,168,76,.38);
  --page:1240px;
  --header:76px;
  --accent-rgb:201,168,76;
}

*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 1rem);background:var(--black);}
body{
  min-width:0;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 84% 9%,rgba(var(--accent-rgb),.1),transparent 25rem),
    var(--black);
  color:var(--text);
  font-family:'EB Garamond',serif;
  font-size:18px;
  line-height:1.65;
  text-rendering:optimizeLegibility;
}
body[data-audience="schools"]{--accent-rgb:201,168,76;}
body[data-audience="short-term-rentals"]{--accent-rgb:201,168,76;}
body[data-audience="hotels"]{--accent-rgb:215,179,76;}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
button,input,textarea,select{font:inherit;}
button,a{ -webkit-tap-highlight-color:transparent; }
::selection{background:var(--gold);color:#000;}

.skip-link{
  position:fixed;
  top:10px;
  left:10px;
  z-index:100;
  transform:translateY(-150%);
  padding:.7rem 1rem;
  background:var(--gold-2);
  color:#000;
  font-family:'Josefin Sans',sans-serif;
  font-size:.72rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.skip-link:focus{transform:none;}

.site-header{
  position:fixed;
  inset:0 0 auto;
  z-index:30;
  height:var(--header);
  border-bottom:1px solid var(--line);
  background:rgba(0,0,0,.86);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  transition:background .25s,border-color .25s;
}
.site-header.is-scrolled{background:rgba(0,0,0,.96);border-color:var(--line-strong);}
.header-inner{
  width:min(var(--page),calc(100% - 48px));
  height:100%;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.5rem;
}
.brand{display:inline-flex;align-items:center;min-width:130px;}
.brand img{width:132px;height:auto;}
.header-actions{display:flex;align-items:center;gap:1rem;}
.back-link{
  color:var(--muted);
  font-family:'Josefin Sans',sans-serif;
  font-size:.64rem;
  font-weight:300;
  letter-spacing:.2em;
  text-transform:uppercase;
  transition:color .2s;
}
.back-link:hover,.back-link:focus-visible{color:var(--white);}

.button{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.65rem;
  padding:.9rem 1.35rem;
  border:1px solid var(--gold-2);
  background:linear-gradient(105deg,#d5ad34 0%,#f0cc5f 48%,#cda126 100%);
  color:#070707;
  font-family:'Josefin Sans',sans-serif;
  font-size:.66rem;
  font-weight:500;
  letter-spacing:.2em;
  text-transform:uppercase;
  cursor:pointer;
  transition:transform .2s,filter .2s,box-shadow .2s;
}
.button::after{content:'→';font-size:.9rem;line-height:1;}
.button:hover,.button:focus-visible{
  transform:translateY(-2px);
  filter:brightness(1.08);
  box-shadow:0 12px 34px rgba(201,168,76,.17);
}
.button-secondary{background:rgba(8,8,8,.68);color:var(--white);border-color:var(--line-strong);}
.button-secondary:hover,.button-secondary:focus-visible{border-color:var(--gold);filter:none;}
.button-small{min-height:40px;padding:.65rem 1rem;font-size:.58rem;}

.audience-hero{
  min-height:100vh;
  min-height:100svh;
  padding:calc(var(--header) + 3.5rem) 0 3.5rem;
  position:relative;
  display:flex;
  align-items:center;
  isolation:isolate;
  overflow:hidden;
}
.audience-hero::before{
  content:'';
  position:absolute;
  inset:var(--header) 0 0;
  z-index:-2;
  background-image:
    linear-gradient(rgba(201,168,76,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(201,168,76,.055) 1px,transparent 1px);
  background-size:78px 78px;
  -webkit-mask-image:linear-gradient(to bottom,#000,transparent 96%);
  mask-image:linear-gradient(to bottom,#000,transparent 96%);
}
.audience-hero::after{
  content:'';
  position:absolute;
  z-index:-1;
  width:min(58vw,850px);
  aspect-ratio:1;
  right:-12%;
  top:7%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(var(--accent-rgb),.17),rgba(var(--accent-rgb),.035) 42%,transparent 70%);
  filter:blur(14px);
}
.hero-inner{
  width:min(var(--page),calc(100% - 48px));
  margin:auto;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
  align-items:center;
  gap:clamp(2rem,5vw,6rem);
}
.eyebrow{
  display:flex;
  align-items:center;
  gap:.8rem;
  margin-bottom:1.25rem;
  color:var(--gold-2);
  font-family:'Josefin Sans',sans-serif;
  font-size:.68rem;
  font-weight:400;
  letter-spacing:.28em;
  text-transform:uppercase;
}
.eyebrow::before{content:'';width:30px;height:1px;background:var(--gold);}
.hero-copy h1{
  max-width:760px;
  color:var(--white);
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(3.75rem,5.6vw,5.25rem);
  font-weight:400;
  letter-spacing:-.03em;
  line-height:.92;
  text-wrap:balance;
}
.hero-copy h1 em{
  display:block;
  color:var(--gold-2);
  font-weight:400;
  font-style:italic;
}
.hero-lede{max-width:670px;margin-top:1.6rem;color:var(--muted);font-size:clamp(1.08rem,1.5vw,1.3rem);line-height:1.65;}
.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:2rem;}
.hero-proof{display:flex;flex-wrap:wrap;gap:.65rem 1.25rem;margin-top:2rem;}
.proof-item{
  display:flex;
  align-items:center;
  gap:.55rem;
  color:var(--muted);
  font-family:'Josefin Sans',sans-serif;
  font-size:.6rem;
  font-weight:300;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.proof-item::before{content:'◆';color:var(--gold);font-size:.52rem;}

.hero-visual{position:relative;min-height:640px;display:grid;place-items:center;}
.product-stage{
  width:min(100%,660px);
  height:600px;
  position:relative;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  background:
    linear-gradient(135deg,rgba(255,255,255,.025),transparent 32%),
    radial-gradient(circle at 50% 53%,rgba(var(--accent-rgb),.13),transparent 44%),
    rgba(6,6,6,.72);
  box-shadow:0 36px 100px rgba(0,0,0,.65);
}
.product-stage::before,.product-stage::after{
  content:'';
  position:absolute;
  width:44px;
  height:44px;
  border-color:var(--line-strong);
  pointer-events:none;
}
.product-stage::before{top:-1px;left:-1px;border-top:1px solid;border-left:1px solid;}
.product-stage::after{right:-1px;bottom:-1px;border-right:1px solid;border-bottom:1px solid;}
.phone-hero .phone-hero-visual{min-width:0;min-height:clamp(640px,70vh,720px);}
.product-stage.phone-stage{
  width:min(100%,630px);
  height:clamp(620px,66vh,700px);
  height:clamp(620px,66svh,700px);
  overflow:hidden;
  grid-template-rows:auto minmax(0,1fr);
  place-items:stretch center;
  gap:.85rem;
  padding:1.15rem 1.25rem .85rem;
  border-color:rgba(201,168,76,.22);
  background:
    linear-gradient(135deg,rgba(255,255,255,.025),transparent 38%),
    radial-gradient(circle at 50% 52%,rgba(var(--accent-rgb),.11),transparent 40%),
    linear-gradient(180deg,#070707 0%,#020202 100%);
  box-shadow:0 24px 58px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.025);
}
.product-stage.phone-stage::before,.product-stage.phone-stage::after{width:54px;height:54px;}
.phone-stage .stage-meta{
  position:relative;
  z-index:5;
  inset:auto;
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  color:#8f877d;
  font-family:'Josefin Sans',sans-serif;
  font-size:.625rem;
  font-weight:300;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.phone-stage .stage-meta span:first-child{display:flex;align-items:center;gap:.55rem;}
.phone-stage .stage-meta i{
  width:6px;
  height:6px;
  flex:0 0 6px;
  border-radius:50%;
  background:var(--gold-2);
  box-shadow:0 0 12px rgba(225,189,76,.6);
}
.audience-phone-mockup{
  position:relative;
  z-index:4;
  inset:auto;
  width:auto;
  height:100%;
  max-width:100%;
  max-height:100%;
  align-self:center;
  justify-self:center;
  aspect-ratio:9/19.5;
  padding:7px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:32px;
  background:linear-gradient(145deg,#4b4b4b 0%,#111 18%,#050505 52%,#292929 84%,#080808 100%);
  box-shadow:0 24px 46px rgba(0,0,0,.76),inset 0 0 0 1px rgba(201,168,76,.08);
  transform:none;
}
.audience-phone-screen{
  height:100%;
  overflow:hidden;
  position:relative;
  display:flex;
  flex-direction:column;
  padding:12px 11px 11px;
  border:1px solid rgba(255,255,255,.07);
  border-radius:25px;
  background:linear-gradient(180deg,#111 0%,#080808 34%,#050505 100%);
}
.audience-phone-island{
  position:absolute;
  z-index:2;
  top:8px;
  left:50%;
  width:62px;
  height:17px;
  border:1px solid rgba(255,255,255,.04);
  border-radius:18px;
  background:#000;
  transform:translateX(-50%);
}
.audience-phone-status{
  padding:0 4px 17px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#f2eee8;
  font-family:'Josefin Sans',sans-serif;
  font-size:.45rem;
  letter-spacing:.04em;
}
.audience-phone-signal{display:flex;align-items:end;gap:2px;}
.audience-phone-signal i{width:2px;border-radius:1px;background:#f2eee8;}
.audience-phone-signal i:nth-child(1){height:3px;}
.audience-phone-signal i:nth-child(2){height:5px;}
.audience-phone-signal i:nth-child(3){height:7px;}
.audience-app-heading{padding:.3rem .2rem .7rem;}
.audience-app-heading>span{
  display:block;
  color:var(--gold-2);
  font-family:'Josefin Sans',sans-serif;
  font-size:.43rem;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.audience-app-heading strong{
  display:block;
  margin-top:.38rem;
  color:#f5f0e8;
  font-family:'Cormorant Garamond',serif;
  font-size:1.05rem;
  font-weight:500;
  line-height:1;
}
.audience-app-heading small{
  margin-top:.48rem;
  display:flex;
  align-items:center;
  gap:.35rem;
  color:#a9a198;
  font-family:'Josefin Sans',sans-serif;
  font-size:.42rem;
  letter-spacing:.06em;
}
.audience-app-heading small i{
  width:5px;
  height:5px;
  border-radius:50%;
  background:#69b77b;
  box-shadow:0 0 7px rgba(105,183,123,.45);
}
.audience-phone-screen .phone-alert-preview{
  position:relative;
  z-index:1;
  inset:auto;
  width:100%;
  padding:.65rem .65rem .72rem;
  border:1px solid rgba(255,255,255,.16);
  border-radius:12px;
  background:linear-gradient(145deg,#202020 0%,#111 56%,#0b0b0b 100%);
  box-shadow:0 10px 22px rgba(0,0,0,.48),inset 0 1px rgba(255,255,255,.055);
}
.phone-alert-head{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:.55rem;}
.phone-alert-icon{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(201,168,76,.35);
  border-radius:7px;
  background:#050505;
}
.phone-alert-icon img{width:100%;height:100%;object-fit:cover;}
.phone-alert-app,.phone-alert-time{
  font-family:'Josefin Sans',sans-serif;
  font-size:.625rem;
  letter-spacing:.055em;
}
.phone-alert-app{color:#f2eee8;font-weight:400;}
.phone-alert-time{color:#a49d94;text-transform:lowercase;}
.phone-alert-body{
  margin-top:.72rem;
  padding-top:.7rem;
  display:grid;
  grid-template-columns:7px 1fr;
  align-items:start;
  gap:.65rem;
  border-top:1px solid rgba(255,255,255,.08);
}
.phone-alert-status{
  width:7px;
  height:7px;
  margin-top:.32rem;
  border-radius:50%;
  background:#e64a3c;
  box-shadow:0 0 0 3px rgba(230,74,60,.13);
}
.phone-alert-status.warning{background:var(--gold-2);box-shadow:0 0 0 3px rgba(225,189,76,.13);}
.phone-alert-title{
  margin:0;
  color:#f5f0e8;
  font-family:'Josefin Sans',sans-serif;
  font-size:.77rem;
  font-weight:400;
  letter-spacing:.025em;
  line-height:1.35;
}
.phone-alert-detail{
  margin-top:.22rem;
  color:#b4aca1;
  font-family:'Josefin Sans',sans-serif;
  font-size:.56rem;
  letter-spacing:.09em;
  line-height:1.5;
  text-transform:uppercase;
}
.audience-app-reading{
  margin-top:.65rem;
  padding:.65rem;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:.5rem;
  border:1px solid rgba(201,168,76,.12);
  color:#9e968c;
  font-family:'Josefin Sans',sans-serif;
  font-size:.42rem;
  letter-spacing:.05em;
}
.audience-app-reading strong{color:#d9d3cb;font-size:.42rem;font-weight:400;text-align:right;}
.audience-phone-home{
  width:50px;
  height:3px;
  margin:auto auto 0;
  border-radius:3px;
  background:rgba(245,240,232,.68);
}

.privacy-strip{border-block:1px solid var(--line);background:rgba(8,8,8,.82);}
.privacy-inner{
  width:min(var(--page),calc(100% - 48px));
  margin:auto;
  display:grid;
  grid-template-columns:1.15fr repeat(3,.72fr);
}
.privacy-intro,.privacy-stat{min-height:138px;padding:1.5rem 1.6rem;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line);}
.privacy-intro{padding-left:0;}
.privacy-stat:last-child{border-right:0;}
.privacy-intro strong{color:var(--white);font-family:'Cormorant Garamond',serif;font-size:1.55rem;font-weight:500;line-height:1.1;}
.privacy-intro span{margin-top:.35rem;color:var(--muted);font-size:.92rem;}
.stat-value{color:var(--gold-2);font-family:'Cormorant Garamond',serif;font-size:2.6rem;line-height:1;}
.stat-label{margin-top:.45rem;color:var(--muted);font-family:'Josefin Sans',sans-serif;font-size:.56rem;letter-spacing:.2em;text-transform:uppercase;line-height:1.5;}

.section{padding:clamp(5rem,9vw,8.5rem) 0;position:relative;}
.section-alt{background:linear-gradient(180deg,rgba(14,14,14,.72),rgba(5,5,5,.62));border-block:1px solid rgba(201,168,76,.08);}
.section-inner{width:min(var(--page),calc(100% - 48px));margin:auto;}
.section-head{max-width:760px;margin-bottom:3.2rem;}
.section-head.centered{margin-inline:auto;text-align:center;}
.section-head.centered .eyebrow{justify-content:center;}
.section-title{
  color:var(--white);
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.8rem,5vw,5rem);
  font-weight:400;
  letter-spacing:-.035em;
  line-height:.98;
}
.section-title em{color:var(--gold-2);font-weight:400;}
.section-copy{margin-top:1rem;color:var(--muted);font-size:1.08rem;max-width:680px;}
.centered .section-copy{margin-inline:auto;}

.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);}
.feature-card{min-height:270px;padding:2rem;background:var(--surface);position:relative;overflow:hidden;transition:background .25s;}
.feature-card:hover{background:var(--surface-2);}
.feature-number{color:var(--gold);font-family:'Josefin Sans',sans-serif;font-size:.58rem;letter-spacing:.22em;}
.feature-card h3{margin-top:1.7rem;color:var(--white);font-family:'Cormorant Garamond',serif;font-size:1.75rem;font-weight:500;line-height:1.05;}
.feature-card p{margin-top:.8rem;color:var(--muted);font-size:.98rem;line-height:1.62;}
.feature-tag{display:inline-flex;margin-top:1.2rem;padding:.35rem .55rem;border:1px solid var(--line);color:var(--gold-3);font-family:'Josefin Sans',sans-serif;font-size:.48rem;letter-spacing:.16em;text-transform:uppercase;}

.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;counter-reset:steps;}
.process-card{counter-increment:steps;min-height:265px;padding:2rem;border:1px solid var(--line);background:rgba(10,10,10,.66);}
.process-card::before{content:'0' counter(steps);display:block;color:var(--gold);font-family:'Cormorant Garamond',serif;font-size:3rem;line-height:1;}
.process-card h3{margin-top:2.5rem;color:var(--white);font-family:'Cormorant Garamond',serif;font-size:1.65rem;font-weight:500;}
.process-card p{margin-top:.65rem;color:var(--muted);font-size:.98rem;}

.plan-panel{
  display:grid;
  grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);
  border:1px solid var(--line-strong);
  background:linear-gradient(135deg,rgba(201,168,76,.08),rgba(12,12,12,.72) 40%);
}
.plan-price{padding:clamp(2rem,5vw,4rem);border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:center;}
.plan-badge{color:var(--gold-2);font-family:'Josefin Sans',sans-serif;font-size:.62rem;letter-spacing:.24em;text-transform:uppercase;}
.plan-price strong{margin-top:1rem;color:var(--white);font-family:'Cormorant Garamond',serif;font-size:3rem;font-weight:500;line-height:1;}
.plan-price-line{display:flex;align-items:baseline;gap:.25rem;margin-top:.7rem;}
.plan-price-line .amount{color:var(--gold-2);font-family:'Cormorant Garamond',serif;font-size:4.5rem;line-height:1;}
.plan-price-line .period{color:var(--muted);font-family:'Josefin Sans',sans-serif;font-size:.58rem;letter-spacing:.13em;text-transform:uppercase;}
.plan-note{margin-top:.8rem;color:var(--muted);font-size:.92rem;}
.plan-details{padding:clamp(2rem,5vw,4rem);}
.plan-details h3{color:var(--white);font-family:'Cormorant Garamond',serif;font-size:2.2rem;font-weight:500;}
.plan-details>p{margin-top:.65rem;color:var(--muted);max-width:680px;}
.subscription-explainer{margin-top:1.5rem;padding:1.15rem 1.25rem 1.25rem;border-left:2px solid var(--gold);background:rgba(201,168,76,.07);}
.subscription-explainer strong{display:block;color:var(--gold-2);font-family:'Josefin Sans',sans-serif;font-size:.58rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;}
.subscription-explainer p{margin-top:.5rem;color:var(--text);font-size:.96rem;line-height:1.55;}
.plan-columns{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem;}
.plan-list-label{margin-bottom:.7rem;color:var(--gold-2);font-family:'Josefin Sans',sans-serif;font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;}
.plan-list{list-style:none;display:grid;gap:.55rem;}
.plan-list li{display:flex;gap:.55rem;color:var(--text);font-size:.93rem;}
.plan-list li::before{content:'✓';color:var(--gold);}
.plan-list small{color:var(--muted-2);font-size:.78em;}
.plan-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem;}

.faq-list{max-width:920px;margin:auto;border-top:1px solid var(--line);}
.faq-item{border-bottom:1px solid var(--line);}
.faq-item summary{
  list-style:none;
  cursor:pointer;
  padding:1.45rem 3rem 1.45rem 0;
  position:relative;
  color:var(--white);
  font-family:'Cormorant Garamond',serif;
  font-size:1.35rem;
  line-height:1.25;
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';position:absolute;right:.35rem;top:50%;transform:translateY(-50%);color:var(--gold);font-family:'Josefin Sans',sans-serif;font-size:1.1rem;}
.faq-item[open] summary::after{content:'−';}
.faq-answer{padding:0 4rem 1.45rem 0;color:var(--muted);font-size:1rem;}

.quote-section{padding-top:0;}
.quote-panel{
  display:grid;
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
  border:1px solid var(--line-strong);
  background:var(--surface);
}
.quote-copy{padding:clamp(2.2rem,5vw,4.5rem);background:radial-gradient(circle at 10% 10%,rgba(201,168,76,.11),transparent 42%);border-right:1px solid var(--line);}
.quote-copy h2{margin-top:1.2rem;color:var(--white);font-family:'Cormorant Garamond',serif;font-size:clamp(2.6rem,4.3vw,4.4rem);font-weight:400;line-height:.96;}
.quote-copy h2 em{display:block;color:var(--gold-2);}
.quote-copy p{margin-top:1.2rem;color:var(--muted);}
.contact-links{display:grid;gap:.6rem;margin-top:2rem;}
.contact-links a{color:var(--gold-3);font-family:'Josefin Sans',sans-serif;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;}
.quote-form{padding:clamp(2.2rem,5vw,4.5rem);}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;}
.form-field{display:flex;flex-direction:column;gap:.45rem;}
.form-field.full{grid-column:1/-1;}
.form-field label{color:var(--muted);font-family:'Josefin Sans',sans-serif;font-size:.54rem;letter-spacing:.18em;text-transform:uppercase;}
.form-field input,.form-field textarea,.form-field select{
  width:100%;
  min-height:50px;
  border:1px solid var(--line);
  border-radius:0;
  outline:none;
  background:var(--surface-2);
  color:var(--white);
  padding:.8rem .9rem;
  transition:border-color .2s,box-shadow .2s;
}
.form-field textarea{min-height:108px;resize:vertical;}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--gold);box-shadow:0 0 0 2px rgba(201,168,76,.08);}
.form-field input::placeholder,.form-field textarea::placeholder{color:#91887d;opacity:1;}
.form-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.3rem;}
.form-note{color:var(--muted-2);font-size:.85rem;}
.form-status{min-height:1.4em;margin-top:.8rem;color:var(--gold-3);font-size:.9rem;}
.form-status.error{color:#e3a48d;}

.site-footer{padding:2.5rem 0;border-top:1px solid var(--line);background:#030303;}
.footer-inner{width:min(var(--page),calc(100% - 48px));margin:auto;display:flex;justify-content:space-between;align-items:center;gap:2rem;}
.footer-name{color:var(--white);font-family:'Josefin Sans',sans-serif;font-size:.65rem;letter-spacing:.34em;text-transform:uppercase;}
.footer-meta{text-align:right;color:var(--muted-2);font-family:'Josefin Sans',sans-serif;font-size:.52rem;letter-spacing:.11em;text-transform:uppercase;line-height:1.7;}
.footer-meta a{color:var(--gold-3);}

.legal-note{width:min(var(--page),calc(100% - 48px));margin:0 auto 2rem;color:#9a9185;font-size:.82rem;line-height:1.5;}
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease;}
.js .reveal.is-visible{opacity:1;transform:none;}

@media(max-width:1120px){
  .phone-hero .hero-inner{grid-template-columns:1fr;gap:2.5rem;}
  .phone-hero .hero-copy{max-width:820px;}
  .phone-hero .phone-hero-visual{min-height:660px;}
  .product-stage.phone-stage{height:clamp(590px,68vh,650px);height:clamp(590px,68svh,650px);}
}

@media(max-width:980px){
  .hero-inner{grid-template-columns:1fr;gap:2rem;}
  .hero-copy{padding-top:2rem;}
  .eyebrow{font-size:.65rem;letter-spacing:.28em;line-height:1.5;}
  .hero-copy h1{font-size:clamp(3.5rem,6.1vw,3.75rem);letter-spacing:-.028em;line-height:.94;}
  .hero-visual{min-height:530px;}
  .product-stage{height:500px;}
  .feature-grid{grid-template-columns:1fr 1fr;}
  .privacy-inner{grid-template-columns:1fr 1fr;}
  .privacy-intro{padding-left:1.6rem;}
  .privacy-intro,.privacy-stat{border-bottom:1px solid var(--line);}
  .privacy-stat:nth-child(2){border-right:0;}
  .privacy-stat:nth-child(3){border-bottom:0;}
  .privacy-stat:nth-child(4){border:0;}
  .plan-panel,.quote-panel{grid-template-columns:1fr;}
  .plan-price,.quote-copy{border-right:0;border-bottom:1px solid var(--line);}
}

@media(max-width:760px){
  .phone-hero .phone-hero-visual{min-height:580px;}
  .product-stage.phone-stage{height:clamp(480px,125vw,560px);gap:.7rem;padding:.9rem .9rem .65rem;}
  .phone-stage .stage-meta{font-size:.55rem;letter-spacing:.1em;}
}

@media(max-width:700px){
  :root{--header:64px;}
  body{font-size:17px;}
  .header-inner,.hero-inner,.privacy-inner,.section-inner,.footer-inner,.legal-note{width:min(100% - 30px,var(--page));}
  .back-link{display:none;}
  .brand img{width:112px;}
  .audience-hero{padding-top:calc(var(--header) + 2.4rem);}
  .audience-hero::before{background-size:54px 54px;}
  .eyebrow{gap:.6rem;font-size:.62rem;letter-spacing:.22em;line-height:1.55;}
  .eyebrow::before{width:24px;flex:0 0 24px;}
  .hero-copy h1{font-size:clamp(3rem,8vw,3.5rem);letter-spacing:-.02em;line-height:.96;}
  .hero-lede{font-size:1.05rem;}
  .hero-actions{display:grid;grid-template-columns:1fr;}
  .hero-actions .button{width:100%;}
  .hero-visual{min-height:430px;}
  .product-stage{height:410px;}
  .privacy-inner{grid-template-columns:1fr 1fr;}
  .privacy-intro{grid-column:1/-1;min-height:120px;border-right:0;}
  .privacy-stat{min-height:110px;padding:1.2rem;}
  .privacy-stat:nth-child(3){border-bottom:1px solid var(--line);}
  .privacy-stat:nth-child(4){grid-column:1/-1;border-top:0;}
  .section{padding:4.5rem 0;}
  .section-head{margin-bottom:2.2rem;}
  .section-title{font-size:clamp(2.7rem,13vw,4rem);}
  .feature-grid,.process-grid{grid-template-columns:1fr;}
  .feature-card,.process-card{min-height:0;}
  .plan-columns,.form-grid{grid-template-columns:1fr;}
  .form-field.full{grid-column:auto;}
  .plan-price-line .amount{font-size:4rem;}
  .quote-form,.quote-copy{padding:2rem 1.4rem;}
  .faq-answer{padding-right:1rem;}
  .footer-inner{align-items:flex-start;flex-direction:column;}
  .footer-meta{text-align:left;}
}

@media(max-width:600px){
  .phone-stage .stage-meta span:last-child{display:none;}
  .audience-phone-mockup{border-radius:25px;padding:5px;}
  .audience-phone-screen{padding:10px 9px 9px;border-radius:19px;}
  .audience-phone-island{top:6px;width:50px;height:13px;}
  .audience-phone-status{padding-inline:3px;padding-bottom:13px;font-size:.45rem;}
  .audience-app-heading{padding:.25rem .12rem .55rem;}
  .audience-app-heading strong{font-size:1rem;}
  .audience-app-heading small{font-size:.45rem;}
  .audience-phone-screen .phone-alert-preview{padding:.55rem;border-radius:10px;}
  .phone-alert-head{grid-template-columns:23px 1fr auto;gap:.38rem;}
  .phone-alert-icon{width:23px;height:23px;border-radius:6px;}
  .phone-alert-body{margin-top:.52rem;padding-top:.5rem;grid-template-columns:6px 1fr;gap:.45rem;}
  .phone-alert-status{width:6px;height:6px;margin-top:.22rem;}
  .audience-app-reading{margin-top:.5rem;padding:.5rem;font-size:.43rem;gap:.38rem;}
  .audience-app-reading strong{font-size:.43rem;}
  .audience-phone-home{width:40px;height:2px;}
}

@media(max-width:390px){
  .header-inner{gap:.6rem;}
  .brand{min-width:0;}
  .brand img{width:90px;}
  .button-small{padding:.55rem .55rem;font-size:.52rem;letter-spacing:.1em;}
  .eyebrow{gap:.5rem;font-size:.58rem;letter-spacing:.16em;line-height:1.55;}
  .eyebrow::before{width:18px;flex-basis:18px;}
  .hero-copy h1{font-size:clamp(2.8rem,12vw,3rem);letter-spacing:-.015em;line-height:.98;}
  .hero-visual{min-height:390px;}
  .product-stage{height:370px;}
  .phone-alert-detail{display:block;}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
  .js .reveal{opacity:1;transform:none;}
}
