/* ============================================================
   CE NAPLES — MASTER STYLESHEET v1
   Ported from remodelbycuttingedge master v2 with teal/brass palette.
   Serves community + condo pages (homepage is self-contained).
   ============================================================ */

:root {
  --brass: #c9a84c;
  --brass-light: #ddb85e;
  --brass-text: #e8c968;
  --teal: #0a2472;
  --teal-deep: #071a54;
  --mist: #f0f2f7;
  --mist-2: #f6f7fb;
  --mid: #56595b;
  --muted: #7c8083;
  --border: #e2e4e4;
}

html { scroll-behavior: smooth; }
body.page { background: var(--mist); font-family: 'DM Sans', sans-serif; font-weight: 300; color: var(--teal-deep); overflow-x: hidden; }

/* ── REVEAL ── */
.reveal { opacity: 0; transform: translateY(26px); transition: opacity .65s ease, transform .65s ease; }
.reveal.visible, .reveal.in { opacity: 1; transform: translateY(0); }
.reveal.d1 { transition-delay: .1s; } .reveal.d2 { transition-delay: .2s; }
.reveal.d3 { transition-delay: .3s; } .reveal.d4 { transition-delay: .4s; }
@media (prefers-reduced-motion: reduce) { .reveal { opacity: 1; transform: none; transition: none; } }

/* ── BUTTONS ── */
.btn-gold { display: inline-block; background: var(--brass); color: var(--teal-deep); border: none; padding: 14px 30px; font-size: 12px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; cursor: pointer; font-family: 'DM Sans', sans-serif; text-decoration: none; transition: background .2s; }
.btn-gold:hover { background: var(--brass-light); }
.btn-dark { display: inline-block; background: var(--teal); color: var(--mist); border: none; padding: 14px 30px; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; cursor: pointer; font-family: 'DM Sans', sans-serif; text-decoration: none; }
.btn-outline-light { display: inline-block; background: transparent; color: var(--teal); border: 1.5px solid rgba(10,36,114,.4); padding: 13px 22px; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; cursor: pointer; font-family: 'DM Sans', sans-serif; text-decoration: none; }
.btn-outline-dark { display: inline-block; background: transparent; color: #a8b2ac; border: 1.5px solid #56595b; padding: 13px 22px; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; cursor: pointer; font-family: 'DM Sans', sans-serif; text-decoration: none; }

/* ============================================================
   GENERATEPRESS WRAPPER RESET
   ============================================================ */
.site-header, .site-header * { display: none !important; }
.site-header { padding: 0 !important; height: 0 !important; min-height: 0 !important; overflow: hidden !important; }
.inside-header { padding: 0 !important; height: 0 !important; }
.page .grid-container, .single .grid-container { max-width: none !important; width: 100% !important; padding: 0 !important; }
.page .site-main, .page .content-area, .page .entry-content,
.single .site-main, .single .content-area, .single .entry-content {
  max-width: none !important; width: 100% !important; padding: 0 !important; margin: 0 !important;
}
.page .inside-article, .single .inside-article { max-width: none !important; padding: 0 !important; background: transparent !important; }
.page .site-content, .page #page, .single .site-content, .single #page { padding-top: 0 !important; margin-top: 0 !important; }
.page .entry-header, .page .entry-footer, .page .post-navigation,
.single .entry-header, .single .entry-footer, .single .post-navigation { display: none !important; }
.page .entry-title { display: none !important; }

/* ============================================================
   COMMUNITY PAGE — PHOTO HERO
   ============================================================ */
.ce-hero { position: relative; background: var(--teal-deep); overflow: hidden; min-height: 600px; }
.ce-hero__img { position: relative; width: 100%; height: auto; min-height: 600px; object-fit: cover; object-position: center 38%; opacity: .85; display: block; }
.ce-hero__overlay { position: absolute; inset: 0; background: linear-gradient(rgba(5,19,64,.25), rgba(5,19,64,.6)); }
.ce-hero__content { position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; justify-content: flex-end; padding: 0 48px; }
.ce-hero__kicker { background: rgba(5,19,64,.55); padding: 8px 14px; display: inline-flex; align-items: center; gap: 12px; align-self: flex-start; margin-bottom: 16px; }
.ce-hero__kicker::before { content: ''; width: 28px; height: 1px; background: var(--brass); flex-shrink: 0; }
.ce-hero__kicker span { font-size: 11px; color: var(--brass-text); letter-spacing: .44em; text-transform: uppercase; text-shadow: 0 1px 2px rgba(0,0,0,.5); }
.ce-hero__h { font-family: 'Bebas Neue', sans-serif; font-size: clamp(68px, 8.5vw, 104px); line-height: .88; letter-spacing: .025em; color: #fdfdfb; text-shadow: 0 2px 8px rgba(0,0,0,.6); }
.ce-hero__h .gold { color: var(--brass); }
.ce-hero__h .serif { font-family: 'Playfair Display', serif; font-style: italic; font-size: clamp(72px, 9vw, 110px); color: var(--brass); }
.ce-hero__bar { display: grid; grid-template-columns: 1fr 1fr 1fr; background: rgba(5,19,64,.55); border-top: 1px solid rgba(201,168,76,.3); margin-top: 28px; }
.ce-hero__col { padding: 22px 28px; border-right: 1px solid rgba(255,255,255,.15); }
.ce-hero__col:last-child { border-right: none; }
.ce-hero__col-label { font-size: 11px; color: #d6d9da; letter-spacing: .26em; text-transform: uppercase; margin-bottom: 6px; }
.ce-hero__col-num { font-family: 'Bebas Neue', sans-serif; font-size: 44px; color: var(--brass); line-height: 1; margin-bottom: 4px; }
.ce-hero__col-sub { font-size: 13px; color: #d6d9da; line-height: 1.65; }

/* ============================================================
   CONDO / SERVICE PAGE — TEXT HERO + TRUST BAR
   ============================================================ */
.ce-page-hero { background: var(--teal); padding: 80px 48px; }
.ce-page-kicker { background: rgba(5,19,64,.55); padding: 8px 14px; display: inline-flex; align-items: center; gap: 10px; font-size: 12px; color: var(--brass-text); letter-spacing: .38em; text-transform: uppercase; margin-bottom: 16px; }
.ce-page-kicker::before { content: ''; width: 20px; height: 1px; background: var(--brass); }
.ce-page-h1 { font-family: 'Bebas Neue', sans-serif; font-size: clamp(52px, 6vw, 84px); line-height: .9; color: #fdfdfb; margin-bottom: 20px; letter-spacing: .02em; }
.ce-gold { color: var(--brass); }
.ce-page-hero__sub { font-size: 15px; color: #e7e9ea; line-height: 1.85; max-width: 620px; margin-bottom: 28px; }
.ce-page-hero__ctas { display: flex; gap: 12px; flex-wrap: wrap; }
.ce-page-hero .btn-outline-dark { color: #fdfdfb; border-color: rgba(253,253,251,.6); background: rgba(5,19,64,.35); }

.ce-trust-bar { background: var(--teal-deep); border-top: 3px solid var(--brass); display: grid; grid-template-columns: repeat(4, 1fr); }
.ce-trust-item { padding: 22px 0; border-right: 1px solid rgba(255,255,255,.08); text-align: center; }
.ce-trust-item:last-child { border-right: none; }
.ce-trust-n { font-family: 'Bebas Neue', sans-serif; font-size: 40px; color: var(--brass); line-height: 1; display: block; }
.ce-trust-l { font-size: 11px; color: #d6d9da; letter-spacing: .18em; text-transform: uppercase; display: block; margin-top: 4px; font-weight: 500; }

/* ============================================================
   STATS BAR / AUTHOR / TL;DR
   ============================================================ */
.ce-stats { background: var(--teal-deep); border-top: 3px solid var(--brass); display: grid; grid-template-columns: repeat(5, 1fr); }
.ce-stat { padding: 28px 0; border-right: 1px solid rgba(255,255,255,.08); text-align: center; }
.ce-stat:last-child { border-right: none; }
.ce-stat__n { font-family: 'Bebas Neue', sans-serif; font-size: 44px; color: var(--brass); line-height: 1; }
.ce-stat__l { font-size: 11px; color: #9ba0a3; letter-spacing: .18em; text-transform: uppercase; margin-top: 3px; }

.ce-author { background: var(--mist); padding: 14px 48px; display: flex; flex-wrap: wrap; align-items: center; gap: 14px; font-family: 'DM Sans', sans-serif; font-size: 12px; color: var(--mid); border-bottom: 1px solid var(--border); letter-spacing: .02em; }
.ce-author__by strong { color: var(--teal); font-weight: 600; }
.ce-author__sep { color: var(--brass); }
.ce-author__cred, .ce-author__date { color: var(--muted); }
.ce-author__date { font-style: italic; }
@media (max-width: 768px) { .ce-author { padding: 12px 20px; font-size: 11px; gap: 8px; } .ce-author__sep { display: none; } }

.ce-tldr { background: #fff; padding: 48px 48px; border-bottom: 1px solid var(--border); }
.ce-tldr__h { font-family: 'Bebas Neue', sans-serif; font-size: clamp(28px, 3vw, 38px); color: var(--teal); line-height: 1; letter-spacing: .02em; margin-bottom: 24px; }
.ce-tldr__h em { font-family: 'Playfair Display', serif; font-style: italic; color: var(--brass); }
.ce-tldr__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.ce-tldr__item { background: var(--mist); padding: 24px; border-left: 3px solid var(--brass); }
.ce-tldr__label { font-size: 10px; color: var(--brass); letter-spacing: .28em; text-transform: uppercase; font-weight: 500; margin-bottom: 10px; }
.ce-tldr__val { font-family: 'Bebas Neue', sans-serif; font-size: 28px; color: var(--teal); line-height: 1.05; margin-bottom: 8px; letter-spacing: .01em; }
.ce-tldr__sub { font-size: 13px; color: var(--mid); line-height: 1.65; }
@media (max-width: 900px) { .ce-tldr { padding: 36px 24px; } .ce-tldr__grid { grid-template-columns: 1fr; gap: 14px; } .ce-tldr__item { padding: 18px; } .ce-tldr__val { font-size: 24px; } }

/* ============================================================
   CONTENT SECTIONS / EYEBROWS / H2
   ============================================================ */
.ce-content-section { background: #fff; padding: 72px 48px; }
.ce-content-section--light { background: var(--mist); }
.ce-content-section__inner { display: grid; grid-template-columns: 1fr 380px; gap: 56px; align-items: start; }
.ce-content-section__inner--full { grid-template-columns: 1fr; }
.ce-section-eyebrow { font-size: 12px; color: var(--brass); letter-spacing: .38em; text-transform: uppercase; margin-bottom: 12px; display: flex; align-items: center; gap: 10px; font-weight: 500; }
.ce-section-eyebrow::before { content: ''; width: 20px; height: 1px; background: var(--brass); }
.ce-section-h2 { font-family: 'Bebas Neue', sans-serif; font-size: clamp(38px, 4.5vw, 58px); color: var(--teal); line-height: .92; margin-bottom: 20px; letter-spacing: .02em; }
.ce-section-h2 em { font-family: 'Playfair Display', serif; font-style: italic; color: var(--brass); }
.ce-content-section__text p,
.ce-content-section__inner--full p { font-size: 14px; color: var(--mid); line-height: 1.9; margin-bottom: 14px; }
.ce-content-section__text strong,
.ce-content-section__inner--full strong { color: var(--teal); font-weight: 500; }

/* ============================================================
   FEATURES / ROI / FAQ / CTA STRIP / RELATED / FINAL CTA
   ============================================================ */
.ce-features-section { background: var(--teal); padding: 72px 48px; }
.ce-features-section .ce-section-h2 { color: #fdfdfb; }
.ce-features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: rgba(255,255,255,.06); margin-top: 40px; }
.ce-feature-card { background: var(--teal); padding: 28px 24px; border-top: 1px solid rgba(255,255,255,.05); }
.ce-feature-icon { font-size: 10px; color: var(--brass); margin-bottom: 12px; }
.ce-feature-title { font-size: 15px; font-weight: 500; color: #eaecec; margin-bottom: 8px; }
.ce-feature-desc { font-size: 13px; color: #9ba0a3; line-height: 1.75; }

.ce-roi-section { background: #fff; padding: 72px 48px; }
.ce-roi-intro { font-size: 14px; color: var(--mid); line-height: 1.9; max-width: 680px; margin-bottom: 36px; }
.ce-roi-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: #d2d5d6; margin-bottom: 20px; }
.ce-roi-card { background: var(--mist); padding: 24px; }
.ce-roi-pct { font-family: 'Bebas Neue', sans-serif; font-size: 48px; color: var(--brass); line-height: 1; }
.ce-roi-label { font-size: 11px; color: var(--mid); letter-spacing: .2em; text-transform: uppercase; margin-bottom: 8px; font-weight: 500; }
.ce-roi-note { font-size: 13px; color: var(--mid); line-height: 1.8; }
.ce-roi-note strong { color: var(--teal); }

.ce-cta-strip { background: var(--brass); padding: 36px 48px; display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.ce-cta-strip__h { font-family: 'Bebas Neue', sans-serif; font-size: 34px; color: var(--teal-deep); line-height: 1; margin-bottom: 4px; }
.ce-cta-strip__sub { font-size: 13px; color: rgba(7,26,84,.75); letter-spacing: .08em; }
.ce-cta-strip__btns { display: flex; gap: 12px; flex-wrap: wrap; }
.ce-cta-strip .btn-gold { background: var(--teal) !important; color: var(--brass-text) !important; }
.ce-cta-strip .btn-gold:hover { background: var(--teal-deep) !important; }
.ce-cta-strip .btn-outline-light { color: var(--teal-deep); border-color: rgba(7,26,84,.4); }

.ce-faq-section { background: var(--mist); padding: 72px 48px; }
.ce-faq-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 40px; }
.ce-faq-item { background: #fff; padding: 24px; border-left: 3px solid var(--brass); margin-bottom: 14px; }
.ce-faq-grid .ce-faq-item { margin-bottom: 0; }
.ce-faq-q { font-size: 15px; font-weight: 500; color: var(--teal); margin-bottom: 10px; line-height: 1.4; }
.ce-faq-a { font-size: 13px; color: var(--mid); line-height: 1.85; }

.ce-related-section { background: #fff; padding: 56px 48px; }
.ce-related-grid { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.ce-related-card { background: var(--mist); border: 1px solid var(--border); padding: 11px 20px; font-size: 13px; color: var(--mid); text-decoration: none; letter-spacing: .06em; transition: all .15s; font-weight: 500; }
.ce-related-card:hover { border-color: var(--brass); color: var(--teal); }

.ce-related { background: var(--mist); padding: 64px 48px; border-top: 1px solid var(--border); }
.ce-related__inner { max-width: 1200px; margin: 0 auto; }
.ce-related__grid { display: grid; grid-template-columns: 1fr; gap: 18px; margin-top: 28px; margin-bottom: 28px; }
.ce-related__card { display: block; background: #fff; padding: 28px 32px; text-decoration: none; border-left: 4px solid var(--brass); transition: transform .2s, box-shadow .2s; }
.ce-related__card:hover { transform: translateX(4px); box-shadow: 0 8px 24px rgba(7,26,84,.12); }
.ce-related__label { display: block; font-size: 10px; color: var(--brass); letter-spacing: .28em; text-transform: uppercase; font-weight: 500; margin-bottom: 6px; }
.ce-related__title { display: block; font-family: 'Bebas Neue', sans-serif; font-size: 24px; color: var(--teal); line-height: 1.1; letter-spacing: .02em; margin-bottom: 4px; }
.ce-related__desc { display: block; font-size: 13px; color: var(--mid); }
.ce-related__nearby { padding-top: 20px; border-top: 1px solid var(--border); font-size: 13px; color: var(--mid); }
.ce-related__nearby-label { display: inline-block; color: var(--muted); letter-spacing: .04em; margin-right: 8px; }
.ce-related__nearby a { color: var(--brass); text-decoration: none; margin: 0 4px; font-weight: 500; }
.ce-related__nearby a:hover { text-decoration: underline; }

.ce-cta { background: var(--teal); padding: 80px 48px; display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.ce-cta__h { font-family: 'Bebas Neue', sans-serif; font-size: clamp(52px, 6vw, 76px); color: #fdfdfb; line-height: .9; margin-bottom: 20px; }
.ce-cta__h em { font-family: 'Playfair Display', serif; font-style: italic; color: var(--brass); }
.ce-cta__body { font-size: 14px; color: #c6c9cb; line-height: 1.95; margin-bottom: 24px; }
.ce-cta__body strong { color: #fdfdfb; font-weight: 500; }
.ce-cta__btns { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.ce-cta .btn-outline-light { color: var(--mist); border-color: rgba(238,241,237,.5); }

/* ── PKG CTA (condo pages) ── */
.ce-pkg-cta { display: inline-block; background: var(--teal); color: #fdfdfb; text-decoration: none; padding: 22px 28px; border-radius: 8px; text-align: center; border-bottom: 4px solid var(--brass); transition: background .2s; }
.ce-pkg-cta:hover { background: var(--teal-deep); }
.ce-pkg-cta__label { display: block; font-size: 11px; letter-spacing: .24em; text-transform: uppercase; color: var(--brass-text); font-weight: 600; }
.ce-pkg-cta__community { font-family: 'Playfair Display', serif; color: var(--brass); }
.ce-pkg-cta__arrow { display: block; font-family: 'Bebas Neue', sans-serif; font-size: 26px; color: var(--brass); margin-top: 8px; }

/* ============================================================
   CALCULATOR
   ============================================================ */
.ce-calc {
  background-color: var(--teal-deep);
  background-image:
    radial-gradient(ellipse 900px 600px at top right, rgba(201,168,76,0.22) 0%, rgba(201,168,76,0.06) 35%, transparent 70%),
    linear-gradient(rgba(201,168,76,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(201,168,76,0.06) 1px, transparent 1px);
  background-size: auto, 48px 48px, 48px 48px;
  background-position: top right, 0 0, 0 0;
  color: var(--mist);
  padding: 80px 48px;
}
.ce-calc__head { max-width: 780px; margin-bottom: 40px; }
.ce-calc__eyebrow { font-size: 10px; color: var(--brass); letter-spacing: .38em; text-transform: uppercase; margin-bottom: 12px; display: flex; align-items: center; gap: 10px; }
.ce-calc__eyebrow::before { content: ''; width: 20px; height: 1px; background: var(--brass); }
.ce-calc__h2 { font-family: 'Bebas Neue', sans-serif; font-size: clamp(40px, 5vw, 64px); line-height: .92; letter-spacing: .02em; margin-bottom: 18px; color: var(--mist); }
.ce-calc__h2 em { font-family: 'Playfair Display', serif; font-style: italic; color: var(--brass); }
.ce-calc__sub { font-size: 14px; color: #c6c9cb; line-height: 1.85; }
.ce-calc__grid { display: grid; grid-template-columns: 1fr 380px; gap: 40px; align-items: start; }
.ce-calc__controls { background: var(--teal); padding: 32px; }
.ce-calc__group { margin-bottom: 28px; padding-bottom: 22px; border-bottom: 1px solid #1e3a8f; }
.ce-calc__group:last-child { border-bottom: none; margin-bottom: 0; padding-bottom: 0; }
.ce-calc__group-title { font-size: 10px; color: var(--brass); letter-spacing: .28em; text-transform: uppercase; margin-bottom: 16px; font-weight: 500; }
.ce-calc__field { margin-bottom: 18px; }
.ce-calc__field:last-child { margin-bottom: 0; }
.ce-calc__label { display: flex; justify-content: space-between; align-items: center; font-size: 12px; color: #d6d9da; margin-bottom: 8px; font-weight: 500; letter-spacing: .04em; }
.ce-calc__label-val { color: var(--brass); font-family: 'Bebas Neue', sans-serif; font-size: 17px; letter-spacing: .04em; }
.ce-calc__select { width: 100%; background: var(--teal-deep); color: var(--mist); border: 1px solid #1e3a8f; padding: 11px 12px; font-family: 'DM Sans', sans-serif; font-size: 13px; cursor: pointer; border-radius: 0; }
.ce-calc__select:focus { outline: none; border-color: var(--brass); }
.ce-calc__select:disabled { opacity: .4; cursor: not-allowed; }
.ce-calc__slider { width: 100%; height: 6px; background: #1e3a8f; border-radius: 3px; outline: none; -webkit-appearance: none; appearance: none; cursor: pointer; margin-top: 8px; }
.ce-calc__slider::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 22px; height: 22px; background: var(--brass); border-radius: 50%; cursor: pointer; border: 3px solid var(--teal-deep); box-shadow: 0 2px 6px rgba(0,0,0,.4); }
.ce-calc__slider::-moz-range-thumb { width: 22px; height: 22px; background: var(--brass); border-radius: 50%; cursor: pointer; border: 3px solid var(--teal-deep); }
.ce-calc__toggle { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; padding: 10px 0; }
.ce-calc__toggle input { width: 18px; height: 18px; accent-color: var(--brass); cursor: pointer; margin-top: 2px; flex-shrink: 0; }
.ce-calc__toggle-body { font-size: 12px; color: #d6d9da; line-height: 1.5; }
.ce-calc__toggle-body strong { color: var(--brass); display: block; margin-bottom: 2px; font-size: 13px; }
.ce-calc__toggle-price { color: var(--brass); font-family: 'Bebas Neue', sans-serif; font-size: 16px; letter-spacing: .04em; }
.ce-calc__note { font-size: 11px; color: var(--muted); font-style: italic; margin-top: 8px; line-height: 1.5; }
.ce-calc__result { background: var(--teal); padding: 32px; position: sticky; top: 80px; border-top: 3px solid var(--brass); }
.ce-calc__result-label { font-size: 10px; color: var(--brass); letter-spacing: .28em; text-transform: uppercase; margin-bottom: 10px; font-weight: 500; }
.ce-calc__result-price { font-family: 'Bebas Neue', sans-serif; font-size: 64px; color: var(--brass); line-height: 1; margin-bottom: 8px; letter-spacing: .02em; }
.ce-calc__result-sub { font-size: 12px; color: #c6c9cb; margin-bottom: 18px; line-height: 1.55; }
.ce-calc__result-range { display: flex; justify-content: space-between; font-size: 10px; color: var(--muted); letter-spacing: .16em; text-transform: uppercase; padding: 10px 0; border-top: 1px solid #1e3a8f; border-bottom: 1px solid #1e3a8f; margin-bottom: 18px; }
.ce-calc__result-range strong { color: #d6d9da; font-family: 'Bebas Neue', sans-serif; font-size: 16px; display: block; margin-top: 2px; letter-spacing: .02em; }
.ce-calc__breakdown { margin-bottom: 22px; }
.ce-calc__breakdown-row { display: flex; justify-content: space-between; font-size: 12px; color: #c6c9cb; padding: 6px 0; border-bottom: 1px dotted #1e3a8f; }
.ce-calc__breakdown-row:last-child { border-bottom: none; font-weight: 600; color: var(--mist); padding-top: 12px; margin-top: 6px; border-top: 1px solid #1e3a8f; }
.ce-calc__breakdown-row span:last-child { font-family: 'Bebas Neue', sans-serif; font-size: 15px; color: var(--brass); letter-spacing: .02em; }
.ce-calc__cta { display: block; background: var(--brass); color: var(--teal-deep); padding: 14px 20px; text-align: center; text-decoration: none; font-size: 11px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; transition: background .2s; }
.ce-calc__cta:hover { background: var(--brass-light); }
.ce-calc__disclaimer { font-size: 10px; color: var(--muted); margin-top: 14px; line-height: 1.55; text-align: center; }
.ce-calc__cap { background: rgba(201,168,76,.1); border: 1px solid rgba(201,168,76,.3); padding: 8px 12px; font-size: 10px; color: var(--brass); letter-spacing: .14em; text-transform: uppercase; text-align: center; margin-bottom: 14px; display: none; }
.ce-calc__cap.is-active { display: block; }
@media (max-width: 900px) {
  .ce-calc { padding: 56px 24px; }
  .ce-calc__grid { grid-template-columns: 1fr; }
  .ce-calc__result { position: static; }
}
@media (max-width: 600px) {
  .ce-calc__controls { padding: 22px; }
  .ce-calc__result { padding: 22px; }
  .ce-calc__result-price { font-size: 52px; }
}

/* ============================================================
   STICKY MOBILE CTA
   ============================================================ */
.ce-sticky-cta { display: none; }
@media (max-width: 900px) {
  .ce-sticky-cta { display: flex; position: fixed; bottom: 0; left: 0; right: 0; z-index: 9999; background: var(--teal); border-top: 1px solid #1e3a8f; padding: 10px 12px; gap: 8px; box-shadow: 0 -6px 24px rgba(0,0,0,.35); }
  .ce-sticky-cta__phone, .ce-sticky-cta__book { flex: 1; text-align: center; padding: 13px 8px; text-decoration: none; font-family: 'DM Sans', sans-serif; font-size: 12px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; border-radius: 3px; line-height: 1.1; }
  .ce-sticky-cta__phone { background: var(--teal-deep); color: #fff; }
  .ce-sticky-cta__book { background: var(--brass); color: var(--teal-deep); }
  body { padding-bottom: 64px; }
}

/* ============================================================
   RESPONSIVE — 900 / 600
   ============================================================ */
@media (max-width: 900px) {
  .ce-page-hero, .ce-content-section, .ce-features-section, .ce-roi-section,
  .ce-faq-section, .ce-related-section, .ce-cta-strip, .ce-cta, .ce-related, .ce-hero__content {
    padding-left: 24px !important; padding-right: 24px !important;
  }
  .ce-hero__bar { grid-template-columns: 1fr 1fr; }
  .ce-hero__col:last-child { grid-column: span 2; }
  .ce-cta { grid-template-columns: 1fr; }
  .ce-stats { grid-template-columns: repeat(3, 1fr); }
  .ce-stat:nth-child(4), .ce-stat:nth-child(5) { border-top: 1px solid rgba(255,255,255,.08); }
  .ce-content-section__inner { grid-template-columns: 1fr; }
  .ce-trust-bar { grid-template-columns: repeat(2, 1fr); }
  .ce-features-grid, .ce-roi-grid { grid-template-columns: 1fr 1fr; }
  .ce-faq-grid { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
  .ce-hero__content { padding: 0 20px !important; }
  .ce-hero__bar { grid-template-columns: 1fr; }
  .ce-hero__col { border-right: none; border-top: 1px solid rgba(255,255,255,.15); }
  .ce-hero__col:last-child { grid-column: auto; }
  .ce-page-hero { padding: 48px 20px !important; }
  .ce-cta { padding: 48px 20px !important; }
  .ce-features-grid, .ce-roi-grid { grid-template-columns: 1fr; }
  .ce-cta-strip { flex-direction: column; align-items: flex-start; padding: 28px 20px !important; }
}
