/* ==========================================================================
   Los Cabos community site - shared stylesheet (identical on every site)
   Static HTML build. Linked from every page as /assets/css/styles.css
   Fonts are loaded via <link> in each page head, not @import (faster).
   ========================================================================== */

:root{
  --cds-ink:#0f1c2e;
  --cds-ink-2:#1b2c42;
  --cds-text:#3d4a5c;
  --cds-muted:#5a6778;
  --cds-sand:#f7f3ec;
  --cds-sand-2:#ede4d5;
  --cds-gold:#b08d4f;
  --cds-gold-lt:#d4b678;
  --cds-sea:#1f6f7a;
  --cds-white:#fff;
  --cds-line:rgba(15,28,46,.12);
  --cds-shadow:0 1px 2px rgba(15,28,46,.04),0 8px 24px rgba(15,28,46,.06);
  --cds-shadow-lg:0 2px 4px rgba(15,28,46,.05),0 18px 48px rgba(15,28,46,.12);
  --cds-serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --cds-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --cds-max:1180px;
  --cds-header-h:74px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--cds-header-h) + 10px)}
body{
  margin:0;
  font-family:var(--cds-sans);
  color:var(--cds-text);
  background:var(--cds-white);
  line-height:1.65;
  font-size:17px;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

/* ==========================================================================
   SITE HEADER
   ========================================================================== */
.cds-header{
  position:sticky;top:0;z-index:9000;
  background:#fff;
  /* NO backdrop-filter here. It makes this element a containing block, and the
     mobile menu panel inside it is position:fixed - it would then anchor to the
     header instead of the viewport, doubling the page width on phones and
     pushing the sticky bottom CTA bar off screen. */
  border-bottom:1px solid var(--cds-line);
  height:var(--cds-header-h);
}
/* The header is always solid.
   It is sticky and sits ABOVE the hero rather than over it, so a transparent
   background showed the white page behind white logo text, and left the nav
   unreadable once content scrolled underneath. Keeping the class so the
   markup and the scroll script still work, but rendering it solid. */
.cds-header.cds-header-over{
  background:#fff;
  border-bottom-color:var(--cds-line);
}
.cds-header-inner{
  max-width:var(--cds-max);margin:0 auto;height:100%;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:0 22px;
}

.cds-logo{display:flex;flex-direction:column;line-height:1;text-decoration:none;flex-shrink:0}
.cds-logo b{
  font-family:var(--cds-serif);font-size:1.32rem;font-weight:600;color:var(--cds-ink);
  letter-spacing:.02em;
}
.cds-logo span{
  font-size:.58rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;
  color:var(--cds-gold);margin-top:3px;
}
.cds-header-over .cds-logo b{color:var(--cds-ink)}
.cds-header-over .cds-logo span{color:var(--cds-gold)}

.cds-nav{display:flex;align-items:center;gap:28px}
.cds-nav a{
  font-size:.83rem;font-weight:500;color:var(--cds-ink);text-decoration:none;
  letter-spacing:.02em;white-space:nowrap;transition:color .18s ease;
}
.cds-nav a:hover{color:var(--cds-gold)}
.cds-header-over .cds-nav > a,.cds-header-over .cds-drop > button{color:var(--cds-ink)}
.cds-header-over .cds-nav > a:hover{color:var(--cds-gold)}

/* dropdown */
.cds-drop{position:relative}
.cds-drop > button{
  font-family:var(--cds-sans);font-size:.83rem;font-weight:500;color:var(--cds-ink);
  background:none;border:0;padding:0;cursor:pointer;display:inline-flex;
  align-items:center;gap:.35em;letter-spacing:.02em;
}
.cds-drop > button::after{
  content:"";width:5px;height:5px;border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-1px);
  transition:transform .2s ease;
}
.cds-drop[data-open="true"] > button::after{transform:rotate(225deg) translateY(-2px)}
.cds-drop-menu{
  position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%) translateY(-6px);
  background:#fff;border:1px solid var(--cds-line);border-radius:3px;
  box-shadow:var(--cds-shadow-lg);padding:.5rem 0;min-width:250px;
  opacity:0;visibility:hidden;transition:opacity .18s ease,transform .18s ease,visibility .18s;
}
.cds-drop[data-open="true"] .cds-drop-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.cds-drop-menu a{
  display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  padding:.62em 1.15em;font-size:.86rem;color:var(--cds-ink);
}
.cds-drop-menu a:hover{background:var(--cds-sand);color:var(--cds-ink)}
.cds-drop-menu a i{font-style:normal;font-size:.74rem;color:var(--cds-gold);font-weight:600}

.cds-header .cds-btn{padding:.72em 1.35em;font-size:.72rem}

/* mobile toggle */
.cds-burger{
  display:none;background:none;border:0;cursor:pointer;padding:8px;margin-right:-8px;
  flex-direction:column;gap:5px;
}
.cds-burger span{display:block;width:22px;height:1.5px;background:var(--cds-ink);transition:all .25s ease}
.cds-header-over .cds-burger span{background:var(--cds-ink)}
body.cds-menu-open .cds-burger span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
body.cds-menu-open .cds-burger span:nth-child(2){opacity:0}
body.cds-menu-open .cds-burger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}

/* ==========================================================================
   SITE FOOTER
   ========================================================================== */
.cds-footer{background:var(--cds-ink);color:rgba(255,255,255,.68);padding:clamp(48px,6vw,76px) 22px 0}
.cds-footer-inner{max-width:var(--cds-max);margin:0 auto}
.cds-footer-grid{
  display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:40px;
  padding-bottom:2.8rem;
}
.cds-footer h4{
  font-family:var(--cds-sans);font-size:.7rem;font-weight:600;letter-spacing:.17em;
  text-transform:uppercase;color:var(--cds-gold-lt);margin:0 0 1.1em;
}
.cds-footer ul{list-style:none;padding:0;margin:0}
.cds-footer li{margin-bottom:.6em}
.cds-footer a{color:rgba(255,255,255,.68);text-decoration:none;font-size:.9rem;transition:color .18s ease}
.cds-footer a:hover{color:#fff}
.cds-footer p{font-size:.9rem;line-height:1.65;margin:0 0 1em}
.cds-footer-logo b{
  display:block;font-family:var(--cds-serif);font-size:1.45rem;color:#fff;font-weight:600;
}
.cds-footer-logo span{
  font-size:.58rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;
  color:var(--cds-gold);display:block;margin:4px 0 1.2rem;
}
.cds-footer-bottom{
  border-top:1px solid rgba(255,255,255,.13);padding:1.6rem 0 2rem;
  display:flex;flex-wrap:wrap;gap:14px 28px;justify-content:space-between;
  font-size:.79rem;color:rgba(255,255,255,.45);
}
.cds-footer-bottom a{font-size:.79rem;color:rgba(255,255,255,.45)}
.cds-disclaimer{
  font-size:.74rem;line-height:1.6;color:rgba(255,255,255,.38);
  max-width:76ch;padding-bottom:2rem;
}

/* ==========================================================================
   MISC additions for the static build
   ========================================================================== */
.cds-skip{
  position:absolute;left:-9999px;top:0;z-index:99999;background:var(--cds-ink);
  color:#fff;padding:.9em 1.4em;font-size:.85rem;text-decoration:none;
}
.cds-skip:focus{left:0}

/* visible focus ring for keyboard users */
a:focus-visible,button:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--cds-gold);outline-offset:3px;
}

/* 404 */
.cds-404{
  min-height:60vh;display:flex;align-items:center;justify-content:center;
  text-align:center;padding:80px 22px;
}

@media(max-width:980px){
  .cds-footer-grid{grid-template-columns:1fr 1fr;gap:34px}
}
@media(max-width:860px){
  .cds-burger{display:flex}
  .cds-nav{
    position:fixed;inset:var(--cds-header-h) 0 0;background:#fff;
    flex-direction:column;align-items:stretch;gap:0;padding:18px 22px 40px;
    overflow-y:auto;transform:translateX(100%);transition:transform .28s ease;
    border-top:1px solid var(--cds-line);
  }
  body.cds-menu-open{overflow:hidden}
  body.cds-menu-open .cds-nav{transform:translateX(0)}
  body.cds-menu-open .cds-header{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:var(--cds-line)}
  body.cds-menu-open .cds-header .cds-logo b{color:var(--cds-ink)}
  body.cds-menu-open .cds-header .cds-logo span{color:var(--cds-gold)}
  body.cds-menu-open .cds-burger span{background:var(--cds-ink)}
  .cds-nav > a,.cds-drop > button{
    padding:1.05em 0;border-bottom:1px solid var(--cds-line);font-size:1rem;width:100%;
    text-align:left;color:var(--cds-ink) !important;
  }
  .cds-drop{width:100%}
  .cds-drop > button{display:flex;justify-content:space-between}
  .cds-drop-menu{
    position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;
    border:0;border-bottom:1px solid var(--cds-line);border-radius:0;min-width:0;
    padding:0;max-height:0;overflow:hidden;transition:max-height .28s ease;
  }
  .cds-drop[data-open="true"] .cds-drop-menu{max-height:640px;transform:none}
  .cds-drop-menu a{padding:.72em 0 .72em 1.1em;font-size:.93rem}
  .cds-drop-menu a:hover{background:none}
  .cds-header .cds-btn{width:100%;margin-top:1.4rem;padding:1.05em 2.2em;font-size:.86rem}
}
@media(max-width:560px){
  .cds-footer-grid{grid-template-columns:1fr;gap:30px}
}
.cds-wrap *,.cds-wrap *::before,.cds-wrap *::after{box-sizing:border-box}
.cds-wrap img{max-width:100%;height:auto;display:block}
.cds-wrap p{margin:0 0 1.1em}
.cds-wrap h1,.cds-wrap h2,.cds-wrap h3,.cds-wrap h4{
  font-family:var(--cds-serif);font-weight:400;color:var(--cds-ink);
  line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em;
}
.cds-wrap h1{font-size:clamp(2.4rem,5.2vw,4.1rem)}
.cds-wrap h2{font-size:clamp(1.9rem,3.6vw,2.9rem)}
.cds-wrap h3{font-size:clamp(1.3rem,2.2vw,1.65rem)}
.cds-wrap h4{font-size:1.12rem;font-family:var(--cds-sans);font-weight:600}
.cds-wrap a{color:var(--cds-sea);text-decoration:none}
.cds-wrap a:hover{text-decoration:underline}
.cds-wrap ul{margin:0 0 1.1em;padding-left:1.15em}
.cds-wrap li{margin-bottom:.4em}

/* ---------- layout ---------- */
.cds-section{padding:clamp(56px,7vw,104px) 22px}
.cds-inner{max-width:var(--cds-max);margin:0 auto}
.cds-narrow{max-width:760px;margin:0 auto}
.cds-sand{background:var(--cds-sand)}
.cds-dark{background:var(--cds-ink);color:rgba(255,255,255,.82)}
.cds-dark h1,.cds-dark h2,.cds-dark h3{color:#fff}
.cds-dark a{color:var(--cds-gold-lt)}

.cds-eyebrow{
  font-family:var(--cds-sans);font-size:.73rem;font-weight:600;
  letter-spacing:.19em;text-transform:uppercase;color:var(--cds-gold);
  margin:0 0 .9rem;display:block;
}
.cds-dark .cds-eyebrow{color:var(--cds-gold-lt)}
.cds-lead{font-size:1.16rem;line-height:1.7;color:#4a5768}
.cds-dark .cds-lead{color:rgba(255,255,255,.78)}
.cds-center{text-align:center}
.cds-rule{width:52px;height:2px;background:var(--cds-gold);border:0;margin:0 0 1.6rem}
.cds-center .cds-rule{margin-left:auto;margin-right:auto}

/* ---------- buttons ---------- */
.cds-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  font-family:var(--cds-sans);font-size:.86rem;font-weight:600;
  letter-spacing:.09em;text-transform:uppercase;
  padding:1.05em 2.2em;border-radius:2px;border:1.5px solid transparent;
  cursor:pointer;transition:all .22s ease;text-align:center;line-height:1.2;
}
.cds-btn:hover{text-decoration:none;transform:translateY(-2px)}
.cds-btn-gold{background:var(--cds-gold);color:#fff;border-color:var(--cds-gold)}
.cds-btn-gold:hover{background:#9c7c42;border-color:#9c7c42;color:#fff;box-shadow:0 10px 26px rgba(176,141,79,.34)}
.cds-btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.cds-btn-ghost:hover{background:#fff;color:var(--cds-ink);border-color:#fff}
.cds-btn-ink{background:var(--cds-ink);color:#fff;border-color:var(--cds-ink)}
.cds-btn-ink:hover{background:var(--cds-ink-2);color:#fff;box-shadow:0 10px 26px rgba(15,28,46,.26)}
.cds-btn-wa{background:#25d366;color:#fff;border-color:#25d366}
.cds-btn-wa:hover{background:#1fb457;border-color:#1fb457;color:#fff;box-shadow:0 10px 26px rgba(37,211,102,.34)}
.cds-btn-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:2rem}
.cds-center .cds-btn-row{justify-content:center}

/* ---------- hero ---------- */
.cds-hero{
  position:relative;min-height:clamp(560px,86vh,820px);
  display:flex;align-items:center;
  /* brand gradient stays as the base colour, so a page with no photo still
     looks intentional and a slow image never flashes bare white */
  background-color:#0f1c2e;
  background-image:
    linear-gradient(100deg,rgba(15,28,46,.92) 0%,rgba(15,28,46,.78) 34%,rgba(27,58,74,.52) 66%,rgba(31,111,122,.38) 100%),
    var(--cds-hero-img,linear-gradient(150deg,#0f1c2e 0%,#1b3a4a 48%,#1f6f7a 100%));
  background-size:cover;background-position:center;background-repeat:no-repeat;
  padding:100px 22px;overflow:hidden;
}
/* Per-page photo: set --cds-hero-img on the .cds-hero element, e.g.
   style="--cds-hero-img:url('/assets/img/cds-cove-club-hero.jpg')" */
.cds-hero::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(to top,rgba(9,18,30,.55),transparent 55%);
  pointer-events:none;
}
.cds-hero-inner{position:relative;z-index:2;max-width:var(--cds-max);margin:0 auto;width:100%}
.cds-hero h1{color:#fff;max-width:15ch;text-shadow:0 2px 30px rgba(0,0,0,.3)}
.cds-hero .cds-eyebrow{color:var(--cds-gold-lt)}
.cds-hero-sub{
  font-size:clamp(1.05rem,1.7vw,1.3rem);color:rgba(255,255,255,.86);
  max-width:56ch;margin-top:1.2rem;font-weight:300;
}
.cds-hero-stats{
  display:flex;flex-wrap:wrap;gap:clamp(28px,5vw,58px);
  margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.2);
}
.cds-hero-stats div{min-width:110px}
.cds-hero-stats b{
  display:block;font-family:var(--cds-serif);font-size:clamp(1.7rem,3vw,2.3rem);
  color:#fff;font-weight:500;line-height:1.1;
}
.cds-hero-stats span{
  font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;
  color:rgba(255,255,255,.62);
}

/* ---------- stat band ---------- */
.cds-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:2px;background:var(--cds-line)}
.cds-stat{background:var(--cds-white);padding:2.4rem 1.4rem;text-align:center}
.cds-sand .cds-stat{background:var(--cds-sand)}
.cds-stat b{
  display:block;font-family:var(--cds-serif);font-size:clamp(2rem,3.4vw,2.7rem);
  color:var(--cds-ink);font-weight:500;line-height:1;margin-bottom:.45rem;
}
.cds-stat span{font-size:.71rem;letter-spacing:.15em;text-transform:uppercase;color:#7a8798}

/* ---------- grid + cards ---------- */
.cds-grid{display:grid;gap:26px}
.cds-grid-2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.cds-grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.cds-grid-4{grid-template-columns:repeat(auto-fit,minmax(215px,1fr))}

.cds-card{
  background:var(--cds-white);border:1px solid var(--cds-line);border-radius:3px;
  overflow:hidden;display:flex;flex-direction:column;
  transition:transform .25s ease,box-shadow .25s ease;box-shadow:var(--cds-shadow);
}
.cds-card:hover{transform:translateY(-5px);box-shadow:var(--cds-shadow-lg)}
.cds-card-img{
  aspect-ratio:4/3;background:linear-gradient(140deg,#1b3a4a,#2f7d88 70%,#b08d4f);
  position:relative;
}
.cds-card-img img{width:100%;height:100%;object-fit:cover}
.cds-card-tag{
  position:absolute;top:14px;left:14px;background:rgba(255,255,255,.94);
  color:var(--cds-ink);font-size:.66rem;font-weight:600;letter-spacing:.13em;
  text-transform:uppercase;padding:.42em .85em;border-radius:2px;
}
.cds-card-body{padding:1.6rem 1.5rem 1.7rem;flex:1;display:flex;flex-direction:column}
.cds-card-body h3{margin-bottom:.35rem}
.cds-card-price{
  font-size:.8rem;font-weight:600;letter-spacing:.07em;color:var(--cds-gold);
  text-transform:uppercase;margin-bottom:.8rem;
}
.cds-card-body p{font-size:.95rem;color:var(--cds-muted);flex:1}
.cds-card-link{
  margin-top:1.1rem;font-size:.78rem;font-weight:600;letter-spacing:.13em;
  text-transform:uppercase;color:var(--cds-ink);display:inline-flex;
  align-items:center;gap:.45em;
}
.cds-card-link::after{content:"\2192";transition:transform .2s ease;display:inline-block}
.cds-card:hover .cds-card-link::after{transform:translateX(5px)}

/* ---------- split feature ---------- */
.cds-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:clamp(34px,5vw,68px);align-items:center}
.cds-split-img{
  aspect-ratio:5/4;border-radius:3px;box-shadow:var(--cds-shadow-lg);overflow:hidden;
  background:linear-gradient(140deg,#0f1c2e,#1f6f7a 65%,#d4b678);
}
.cds-split-img img{width:100%;height:100%;object-fit:cover}

/* ---------- feature list ---------- */
.cds-feats{list-style:none;padding:0;margin:1.6rem 0 0}
.cds-feats li{position:relative;padding-left:1.9em;margin-bottom:.85em;font-size:.98rem}
.cds-feats li::before{
  content:"";position:absolute;left:0;top:.62em;width:9px;height:9px;
  border:1.5px solid var(--cds-gold);transform:rotate(45deg);
}

/* ---------- lead magnet / forms ---------- */
.cds-lead-box{
  background:var(--cds-white);border:1px solid var(--cds-line);border-radius:4px;
  padding:clamp(30px,4vw,48px);box-shadow:var(--cds-shadow-lg);
}
.cds-form{display:grid;gap:14px;margin-top:1.6rem}
.cds-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cds-form label{
  display:block;font-size:.7rem;font-weight:600;letter-spacing:.13em;
  text-transform:uppercase;color:#7a8798;margin-bottom:.42em;
}
.cds-form input,.cds-form select,.cds-form textarea{
  width:100%;padding:.92em 1em;border:1px solid var(--cds-line);border-radius:2px;
  font-family:var(--cds-sans);font-size:1rem;color:var(--cds-ink);
  background:var(--cds-white);transition:border-color .2s ease,box-shadow .2s ease;
}
.cds-form input:focus,.cds-form select:focus,.cds-form textarea:focus{
  outline:none;border-color:var(--cds-gold);box-shadow:0 0 0 3px rgba(176,141,79,.14);
}
.cds-form textarea{resize:vertical;min-height:110px}
.cds-form .cds-btn{width:100%;margin-top:.4rem}
.cds-fineprint{font-size:.79rem;color:#8b96a5;margin:.9rem 0 0;line-height:1.55}
.cds-hp{position:absolute !important;left:-9999px !important;opacity:0;height:0;width:0}
.cds-form-msg{display:none;padding:1em 1.15em;border-radius:2px;font-size:.93rem;margin-top:1rem}
.cds-form-msg.cds-ok{display:block;background:#e8f5ec;color:#1c6b38;border:1px solid #b7dfc4}
.cds-form-msg.cds-err{display:block;background:#fdeaea;color:#9b2c2c;border:1px solid #f2c2c2}

/* ---------- FAQ ---------- */
.cds-faq{border-top:1px solid var(--cds-line)}
.cds-faq details{border-bottom:1px solid var(--cds-line)}
.cds-faq summary{
  cursor:pointer;padding:1.35em 2.4em 1.35em 0;font-weight:600;font-size:1.03rem;
  color:var(--cds-ink);list-style:none;position:relative;
}
.cds-faq summary::-webkit-details-marker{display:none}
.cds-faq summary::after{
  content:"+";position:absolute;right:.2em;top:50%;transform:translateY(-50%);
  font-size:1.5rem;font-weight:300;color:var(--cds-gold);transition:transform .2s ease;
}
.cds-faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.cds-faq details > div{padding:0 2.4em 1.5em 0;color:var(--cds-muted);font-size:.98rem}

/* ---------- CTA band ---------- */
.cds-band{
  background:linear-gradient(135deg,#0f1c2e 0%,#1b3a4a 100%);
  color:#fff;text-align:center;padding:clamp(56px,7vw,92px) 22px;
}
.cds-band h2{color:#fff}
.cds-band p{color:rgba(255,255,255,.78);max-width:58ch;margin-left:auto;margin-right:auto}

/* ---------- agent block ---------- */
.cds-agent{display:grid;grid-template-columns:minmax(200px,270px) 1fr;gap:clamp(28px,4vw,52px);align-items:center}
.cds-agent-photo{
  aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:var(--cds-shadow-lg);
  background:linear-gradient(140deg,#1b3a4a,#b08d4f);
}
.cds-agent-photo img{width:100%;height:100%;object-fit:cover}

/* ---------- breadcrumb ---------- */
.cds-crumbs{font-size:.78rem;color:#8b96a5;padding:1.4rem 22px .2rem;max-width:var(--cds-max);margin:0 auto}
.cds-crumbs a{color:#8b96a5}
.cds-crumbs span{margin:0 .5em;opacity:.55}

/* ---------- table ---------- */
.cds-tablewrap{overflow-x:auto;margin:1.8rem 0}
.cds-table{width:100%;border-collapse:collapse;font-size:.94rem;min-width:520px}
.cds-table th{
  text-align:left;font-family:var(--cds-sans);font-size:.7rem;font-weight:600;
  letter-spacing:.13em;text-transform:uppercase;color:#7a8798;
  padding:.85em 1em;border-bottom:2px solid var(--cds-line);white-space:nowrap;
}
.cds-table td{padding:.9em 1em;border-bottom:1px solid var(--cds-line);color:var(--cds-text)}
.cds-table tr:hover td{background:rgba(176,141,79,.05)}

/* ---------- sticky mobile CTA ---------- */
.cds-sticky{
  position:fixed;left:0;right:0;bottom:0;z-index:9990;display:none;
  gap:1px;background:var(--cds-line);box-shadow:0 -4px 20px rgba(15,28,46,.16);
}
.cds-sticky a{
  flex:1;padding:1.05em .5em;text-align:center;font-size:.76rem;font-weight:600;
  letter-spacing:.09em;text-transform:uppercase;color:#fff;
}
.cds-sticky a:hover{text-decoration:none}
.cds-sticky .cds-s-wa{background:#25d366}
.cds-sticky .cds-s-gold{background:var(--cds-gold)}
.cds-sticky .cds-s-ink{background:var(--cds-ink)}

/* ---------- responsive ---------- */
@media(max-width:860px){
  .cds-agent{grid-template-columns:1fr;text-align:center}
  .cds-agent-photo{max-width:210px;margin-left:auto;margin-right:auto}
}
@media(max-width:640px){
  .cds-wrap{font-size:16px}
  .cds-form-row{grid-template-columns:1fr}
  .cds-btn{width:100%}
  .cds-btn-row{flex-direction:column}
  .cds-sticky{display:flex}
  .cds-pad-sticky{padding-bottom:76px}
  .cds-hero{min-height:auto;padding:88px 22px 68px}
  .cds-hero-stats{gap:22px 34px}
}

/* ---------- motion safety ---------- */
@media(prefers-reduced-motion:reduce){
  .cds-wrap *{transition:none !important;animation:none !important}
  .cds-btn:hover,.cds-card:hover{transform:none}
}

/* ---------- print ---------- */
@media print{
  .cds-sticky,.cds-form,.cds-band{display:none !important}
  .cds-wrap{font-size:12pt;color:#000}
}
