/* ================================================================
   CA Agent Referral Partner — Barré & Company Realty
   Dual-licensed AZ/CA broker referral program
   ================================================================ */
:root {
  --bg: #0E0E0E; --bg-cream: #F4EFE8; --bg-cream-soft: #EAE3D8;
  --ink: #111111; --ink-soft: #2A2A2A; --paper: #FAF7F2;
  --line: rgba(255,255,255,0.12); --line-dark: rgba(0,0,0,0.12);
  --gold: #C4A96D; --gold-soft: #B89559;
  --muted: #8A8A8A; --muted-dark: #6A6258;
  --yes-green: #2D5A3D; --no-red: #5A2D2D;
  --serif: "Cormorant Garamond","Times New Roman",serif;
  --sans: "DM Sans",-apple-system,BlinkMacSystemFont,sans-serif;
  --mono: "DM Mono",ui-monospace,Menlo,monospace;
  --maxw: 1240px; --pad-x: clamp(20px,5vw,64px);
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;font-weight:300;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img,picture{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}

.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);margin-bottom:24px;}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;font-family:var(--mono);font-size:12px;letter-spacing:0.16em;text-transform:uppercase;font-weight:500;border:1px solid transparent;cursor:pointer;transition:all 0.3s ease;text-align:center;}
.btn--gold{background:var(--gold);color:#1a1a1a;} .btn--gold:hover{background:var(--gold-soft);transform:translateY(-1px);}
.btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,0.6);} .btn--ghost:hover{background:rgba(255,255,255,0.08);border-color:#fff;}
.btn--dark{background:var(--ink);color:#fff;} .btn--dark:hover{background:#2a2a2a;}
.btn--full{width:100%;padding:18px 24px;} .btn--lg{padding:20px 44px;font-size:13px;}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:18px var(--pad-x);z-index:100;transition:background 0.3s ease,backdrop-filter 0.3s ease;}
.nav.is-scrolled{background:rgba(14,14,14,0.93);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
.nav__brand{display:flex;align-items:center;gap:12px;color:#fff;}
.nav__monogram{font-family:var(--serif);font-size:22px;font-weight:500;color:var(--gold);}
.nav__name{font-family:var(--serif);font-size:15px;letter-spacing:0.03em;color:#fff;line-height:1.2;}
.nav__name--sub{display:block;font-family:var(--mono);font-size:9px;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);}
.nav__links{display:none;gap:36px;}
.nav__links a{font-family:var(--mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.85);transition:color 0.2s;}
.nav__links a:hover{color:var(--gold);}
.nav__cta{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;background:var(--gold);color:#1a1a1a;padding:10px 18px;font-weight:500;transition:background 0.2s;}
.nav__cta:hover{background:var(--gold-soft);}
@media(min-width:900px){.nav__links{display:flex;}}

/* HERO */
.hero{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:center;color:#fff;padding:100px var(--pad-x) 60px;overflow:hidden;}
.hero__media{position:absolute;inset:0;z-index:0;}
.hero__media img{width:100%;height:100%;object-fit:cover;filter:saturate(0.8) brightness(0.55);}
.hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,14,14,0.5) 0%,rgba(14,14,14,0.3) 35%,rgba(14,14,14,0.88) 100%);}
.hero__inner{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;width:100%;animation:rise 1.2s cubic-bezier(0.2,0.8,0.2,1) both;}
@keyframes rise{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
.hero__title{font-family:var(--serif);font-weight:500;font-size:clamp(40px,7.5vw,90px);line-height:1.03;letter-spacing:-0.01em;margin-bottom:28px;max-width:16ch;}
.hero__title em{font-style:italic;font-weight:400;color:var(--gold);}
.hero__sub{font-size:clamp(16px,1.8vw,19px);line-height:1.55;max-width:58ch;color:rgba(255,255,255,0.88);margin-bottom:40px;font-weight:300;}
.hero__ctas{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:56px;}
.trust{list-style:none;display:flex;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:28px;max-width:860px;}
.trust li{flex:1 1 160px;display:flex;flex-direction:column;gap:6px;padding-right:24px;border-right:1px solid var(--line);}
.trust li:last-child{border-right:none;}
.trust__num{font-family:var(--serif);font-size:26px;font-weight:500;color:var(--gold);}
.trust__lbl{font-family:var(--mono);font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.65);}
.hero__scroll{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);width:1px;height:56px;background:rgba(255,255,255,0.25);z-index:3;}
.hero__scroll span{position:absolute;top:0;left:0;width:100%;height:20px;background:var(--gold);animation:scrollLine 2.4s ease-in-out infinite;}
@keyframes scrollLine{0%{top:0;opacity:1;}100%{top:56px;opacity:0;}}

/* OPPORTUNITY */
.opportunity{background:var(--bg);color:#fff;padding:clamp(72px,12vw,140px) var(--pad-x);}
.opportunity__inner{max-width:var(--maxw);margin:0 auto;}
.opportunity__title{font-family:var(--serif);font-weight:500;font-size:clamp(34px,5.5vw,62px);line-height:1.06;letter-spacing:-0.01em;margin-bottom:56px;max-width:22ch;}
.opportunity__title em{font-style:italic;font-weight:400;color:var(--gold);}
.opp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1px;background:var(--line);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
.opp-stat{background:var(--bg);padding:40px 28px;display:flex;flex-direction:column;gap:16px;transition:background 0.3s;}
.opp-stat:hover{background:#181818;}
.opp-stat__num{font-family:var(--serif);font-size:clamp(36px,4vw,52px);font-weight:500;color:var(--gold);line-height:1.05;}
.opp-stat p{font-size:15px;line-height:1.6;color:rgba(255,255,255,0.72);font-weight:300;}

/* BLOCKS */
.block{padding:clamp(72px,12vw,140px) var(--pad-x);}
.block--dark{background:var(--bg);color:#fff;} .block--cream{background:var(--bg-cream);color:var(--ink);}
.block__inner{max-width:var(--maxw);margin:0 auto;}
.block__title{font-family:var(--serif);font-weight:500;font-size:clamp(34px,5.5vw,60px);line-height:1.06;letter-spacing:-0.01em;margin-bottom:28px;max-width:20ch;}
.block__title em{font-style:italic;font-weight:400;color:var(--gold);}
.block__lede{font-size:clamp(16px,1.8vw,19px);line-height:1.6;max-width:62ch;margin-bottom:56px;font-weight:300;}
.block--dark .block__lede{color:rgba(255,255,255,0.78);} .block--cream .block__lede{color:var(--ink-soft);}

/* STEPS */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0;background:var(--line-dark);border:1px solid var(--line-dark);margin-bottom:56px;}
.step{background:var(--bg-cream);padding:40px 28px;display:flex;flex-direction:column;gap:16px;position:relative;}
.step__num{font-family:var(--mono);font-size:11px;letter-spacing:0.18em;color:var(--gold);}
.step h3{font-family:var(--serif);font-size:24px;font-weight:500;letter-spacing:-0.005em;}
.step p{font-size:15px;line-height:1.6;color:var(--ink-soft);font-weight:300;}
.step__action{font-family:var(--mono);font-size:12px;letter-spacing:0.1em;margin-top:8px;}
.step__action a{color:var(--gold);border-bottom:1px solid var(--gold);}

/* PLEDGE */
.pledge{background:var(--bg);color:#fff;padding:clamp(72px,12vw,140px) var(--pad-x);}
.pledge__inner{max-width:var(--maxw);margin:0 auto;}
.pledge__title{font-family:var(--serif);font-weight:500;font-size:clamp(34px,5.5vw,62px);line-height:1.06;letter-spacing:-0.01em;margin-bottom:28px;max-width:18ch;}
.pledge__title em{font-style:italic;font-weight:400;color:var(--gold);}
.pledge__lede{font-size:clamp(16px,1.8vw,18px);line-height:1.6;max-width:64ch;margin-bottom:56px;color:rgba(255,255,255,0.78);font-weight:300;}
.pledge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:48px;}
.pledge-item{padding:40px 32px;display:flex;flex-direction:column;gap:20px;}
.pledge-item--yes{background:#0d1f12;}
.pledge-item--no{background:#1f0d0d;}
.pledge-item__icon{font-size:28px;font-weight:700;line-height:1;}
.pledge-item--yes .pledge-item__icon{color:#5aaa72;}
.pledge-item--no .pledge-item__icon{color:#aa5a5a;}
.pledge-item h4{font-family:var(--serif);font-size:24px;font-weight:500;}
.pledge-item--yes h4{color:#5aaa72;} .pledge-item--no h4{color:#aa5a5a;}
.pledge-item ul{list-style:none;display:flex;flex-direction:column;gap:12px;}
.pledge-item li{font-size:15px;line-height:1.55;color:rgba(255,255,255,0.8);padding-left:18px;position:relative;font-weight:300;}
.pledge-item--yes li::before{content:"✓";position:absolute;left:0;color:#5aaa72;font-size:12px;top:2px;}
.pledge-item--no li::before{content:"✕";position:absolute;left:0;color:#aa5a5a;font-size:12px;top:2px;}
.pledge-callout{display:flex;flex-wrap:wrap;align-items:flex-start;gap:24px;background:rgba(196,169,109,0.08);border:1px solid rgba(196,169,109,0.25);padding:32px;margin-bottom:48px;}
.pledge-callout__icon{font-size:36px;color:var(--gold);flex-shrink:0;margin-top:4px;}
.pledge-callout>div{flex:1 1 280px;}
.pledge-callout h4{font-family:var(--serif);font-size:22px;font-weight:500;color:var(--gold);margin-bottom:10px;}
.pledge-callout p{font-size:15px;line-height:1.6;color:rgba(255,255,255,0.78);font-weight:300;}

/* SERVICES GRID */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;background:var(--line-dark);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);margin-bottom:0;}
.svc{background:var(--bg-cream);padding:36px 28px;display:flex;flex-direction:column;gap:14px;transition:background 0.3s;}
.svc:hover{background:var(--bg-cream-soft);}
.svc__num{font-family:var(--mono);font-size:11px;color:var(--gold);letter-spacing:0.18em;}
.svc h3{font-family:var(--serif);font-size:22px;font-weight:500;letter-spacing:-0.005em;}
.svc p{font-size:15px;line-height:1.6;color:var(--ink-soft);font-weight:300;}

/* MARKETS GRID */
.markets-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:32px;}
.mkt{background:var(--bg);padding:36px 28px;display:flex;flex-direction:column;gap:14px;}
.mkt--featured{background:#151515;}
.mkt__tag{font-family:var(--mono);font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);}
.mkt h3{font-family:var(--serif);font-size:26px;font-weight:500;letter-spacing:-0.01em;}
.mkt p{font-size:15px;line-height:1.6;color:rgba(255,255,255,0.72);font-weight:300;flex:1;}
.mkt__data{display:flex;flex-wrap:wrap;gap:16px;padding-top:14px;border-top:1px solid var(--line);}
.mkt__data>div{display:flex;flex-direction:column;gap:4px;}
.mkt__data span{font-family:var(--serif);font-size:20px;font-weight:500;color:var(--gold);}
.mkt__data small{font-family:var(--mono);font-size:9px;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.5);}
.markets__note{font-family:var(--mono);font-size:11px;letter-spacing:0.1em;color:rgba(255,255,255,0.5);margin-top:24px;}

/* WHY GRID */
.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1px;background:var(--line-dark);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);}
.why-item{background:var(--bg-cream);padding:36px 28px;display:flex;flex-direction:column;gap:14px;transition:background 0.3s;}
.why-item:hover{background:var(--bg-cream-soft);}
.why-item__icon{font-size:24px;color:var(--gold);line-height:1;}
.why-item h4{font-family:var(--serif);font-size:22px;font-weight:500;}
.why-item p{font-size:15px;line-height:1.6;color:var(--ink-soft);font-weight:300;}

/* BROKERAGES */
.brokerages{background:#0a0a0a;color:#fff;padding:clamp(60px,8vw,100px) var(--pad-x);}
.brokerages__inner{max-width:var(--maxw);margin:0 auto;}
.brokerages__title{font-family:var(--serif);font-weight:500;font-size:clamp(32px,5vw,52px);line-height:1.06;letter-spacing:-0.01em;margin-bottom:28px;}
.brokerages__title em{font-style:italic;font-weight:400;color:var(--gold);}
.brokerages p{font-size:16px;color:rgba(255,255,255,0.7);margin-bottom:32px;font-weight:300;}
.brokerage-list{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:28px;}
.brokerage-list span{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;border:1px solid rgba(196,169,109,0.4);color:var(--gold);padding:8px 14px;}
.brokerages__note{font-family:var(--mono);font-size:11px;letter-spacing:0.12em;color:rgba(255,255,255,0.45);}

/* CAPTURE FORM */
.capture{background:var(--paper);padding:clamp(60px,10vw,120px) var(--pad-x);}
.capture__grid{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1fr;gap:56px;align-items:start;}
@media(min-width:900px){.capture__grid{grid-template-columns:1fr 1.2fr;gap:80px;}}
.capture__title{font-family:var(--serif);font-weight:500;font-size:clamp(32px,5vw,52px);line-height:1.06;letter-spacing:-0.01em;margin-bottom:24px;max-width:15ch;}
.capture__title em{font-style:italic;color:var(--gold);font-weight:400;}
.capture__copy{font-size:17px;line-height:1.65;color:var(--ink-soft);margin-bottom:16px;max-width:44ch;}
.capture__bullets{list-style:none;margin-bottom:28px;display:flex;flex-direction:column;gap:10px;}
.capture__bullets li{display:flex;align-items:flex-start;gap:10px;font-size:15px;color:var(--ink-soft);}
.capture__bullets span{color:var(--gold);font-size:12px;margin-top:3px;flex-shrink:0;}
.agent-contact{margin-top:24px;display:flex;flex-direction:column;gap:6px;}
.agent-contact__label{font-family:var(--mono);font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted-dark);}
.agent-contact__phone{font-family:var(--serif);font-size:28px;font-weight:500;color:var(--gold);letter-spacing:-0.01em;}
.agent-contact__or{font-family:var(--mono);font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted-dark);margin-top:8px;}
.agent-contact__email{font-family:var(--mono);font-size:14px;color:var(--ink);border-bottom:1px solid var(--gold);align-self:flex-start;}
.capture__form{background:#fff;border:1px solid var(--line-dark);padding:clamp(28px,4vw,44px);display:grid;gap:16px;}
.form-section-label{font-family:var(--mono);font-size:10px;letter-spacing:0.2em;text-transform:uppercase;color:var(--gold);padding-top:8px;border-top:1px solid var(--line-dark);margin-top:8px;}
.form-section-label:first-child{border-top:none;margin-top:0;padding-top:0;}
.field{display:flex;flex-direction:column;gap:6px;}
.field span{font-family:var(--mono);font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted-dark);}
.field input,.field select,.field textarea{font-family:var(--sans);font-size:16px;padding:12px 0;border:none;border-bottom:1px solid var(--line-dark);background:transparent;color:var(--ink);outline:none;border-radius:0;-webkit-appearance:none;appearance:none;transition:border-color 0.2s ease;}
.field input::placeholder{color:var(--muted);font-size:14px;}
.field select{background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:28px;}
.field input:focus,.field select:focus{border-bottom-color:var(--gold);}
.capture__legal{font-family:var(--mono);font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted-dark);text-align:center;margin-top:4px;line-height:1.6;}

/* FAQ */
.faq-list{display:flex;flex-direction:column;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-item:first-child{border-top:1px solid var(--line);}
.faq-item summary{font-family:var(--serif);font-size:clamp(18px,2.5vw,22px);font-weight:500;letter-spacing:-0.005em;padding:24px 48px 24px 0;cursor:pointer;position:relative;list-style:none;color:#fff;transition:color 0.2s;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-family:var(--mono);font-size:22px;color:var(--gold);font-weight:300;transition:transform 0.3s ease;}
.faq-item[open] summary::after{transform:translateY(-50%) rotate(45deg);}
.faq-item summary:hover{color:var(--gold);}
.faq-item p{font-size:16px;line-height:1.7;color:rgba(255,255,255,0.78);font-weight:300;padding-bottom:28px;max-width:72ch;}

/* ABOUT */
.about__grid{display:grid;grid-template-columns:1fr;gap:48px;align-items:start;}
@media(min-width:900px){.about__grid{grid-template-columns:1fr auto;gap:64px;}}
.about__title{font-family:var(--serif);font-weight:500;font-size:clamp(36px,5vw,56px);letter-spacing:-0.01em;margin-bottom:8px;}
.about__role{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold);margin-bottom:24px;}
.about__text p{font-size:16px;line-height:1.7;color:var(--ink-soft);margin-bottom:16px;font-weight:300;max-width:62ch;}
.about__creds{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:32px;padding-top:32px;border-top:1px solid var(--line-dark);}
.about__creds>div{display:flex;flex-direction:column;gap:4px;}
.about__creds span{font-family:var(--mono);font-size:10px;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted-dark);}
.about__creds strong{font-family:var(--serif);font-size:18px;font-weight:500;color:var(--ink);}
.about__creds a{color:var(--gold);border-bottom:1px solid var(--gold);}
.about__monogram-block{width:200px;height:200px;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;flex-shrink:0;}
.about__monogram-block span{font-family:var(--serif);font-size:72px;font-weight:500;color:var(--gold);line-height:1;}
.about__monogram-block p{font-family:var(--mono);font-size:9px;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.5);text-align:center;}

/* FINAL */
.final{position:relative;overflow:hidden;padding:clamp(80px,14vw,160px) var(--pad-x);text-align:center;color:#fff;}
.final__media{position:absolute;inset:0;z-index:0;}
.final__media img{width:100%;height:100%;object-fit:cover;filter:brightness(0.35) saturate(0.7);}
.final__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,14,14,0.55) 0%,rgba(14,14,14,0.78) 100%);}
.final__inner{position:relative;z-index:2;max-width:760px;margin:0 auto;}
.final__title{font-family:var(--serif);font-weight:500;font-size:clamp(38px,6vw,68px);line-height:1.05;letter-spacing:-0.01em;margin-bottom:20px;}
.final__title em{font-style:italic;color:var(--gold);font-weight:400;}
.final__copy{font-size:18px;line-height:1.6;color:rgba(255,255,255,0.82);margin-bottom:40px;font-weight:300;}
.final__phone{margin-top:24px;font-family:var(--mono);font-size:12px;letter-spacing:0.14em;color:rgba(255,255,255,0.6);}
.final__phone a{color:var(--gold);border-bottom:1px solid var(--gold);}

/* FOOTER */
.footer{background:#0a0a0a;color:rgba(255,255,255,0.7);padding:clamp(60px,8vw,100px) var(--pad-x) 32px;font-size:14px;}
.footer__top{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:1fr;gap:48px;padding-bottom:40px;border-bottom:1px solid var(--line);}
@media(min-width:760px){.footer__top{grid-template-columns:1.3fr 1fr 1.1fr 0.9fr 1fr;}}
.footer__monogram{font-family:var(--serif);font-size:28px;color:var(--gold);display:inline-block;margin-bottom:16px;}
.footer__name{font-family:var(--serif);font-size:20px;color:#fff;margin-bottom:6px;}
.footer__tag{font-size:13px;color:rgba(255,255,255,0.55);margin-bottom:4px;}
.footer__tag--italic{font-family:var(--serif);font-style:italic;font-size:15px;color:var(--gold);margin-top:12px;}
.footer__service-line{font-family:var(--mono);font-size:10px;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);margin-top:16px;}
.footer__col h5{font-family:var(--mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-weight:500;}
.footer__col-second{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);}
.footer__office-note{font-family:var(--mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.35) !important;margin-top:6px !important;}
.footer__col p{font-size:13px;line-height:1.7;color:rgba(255,255,255,0.7);margin-bottom:4px;}
.footer__col a{border-bottom:1px solid transparent;transition:border-color 0.2s;}
.footer__col a:hover{border-bottom-color:var(--gold);}
.eho{color:var(--gold) !important;font-weight:500;}
.footer__legal{max-width:var(--maxw);margin:32px auto 0;font-size:11px;line-height:1.7;color:rgba(255,255,255,0.4);font-family:var(--mono);letter-spacing:0.02em;}

/* STICKY CTA */
.sticky-cta{position:fixed;bottom:16px;left:16px;right:16px;z-index:90;display:flex;align-items:center;justify-content:center;background:var(--gold);color:#1a1a1a;padding:16px 20px;font-family:var(--mono);font-size:12px;letter-spacing:0.16em;text-transform:uppercase;font-weight:500;box-shadow:0 8px 28px rgba(0,0,0,0.25);opacity:0;transform:translateY(20px);transition:opacity 0.3s ease,transform 0.3s ease;pointer-events:none;}
.sticky-cta.is-visible{opacity:1;transform:translateY(0);pointer-events:auto;}
@media(min-width:760px){.sticky-cta{display:none;}}

/* REVEAL */
.reveal{opacity:0;transform:translateY(24px);transition:opacity 0.9s cubic-bezier(0.2,0.8,0.2,1),transform 0.9s cubic-bezier(0.2,0.8,0.2,1);}
.reveal.is-visible{opacity:1;transform:translateY(0);}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important;scroll-behavior:auto !important;}}
