/* vanilla base reset (no framework) */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; font-family: var(--d25fecda-font, system-ui, -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif); line-height: 1.5; color: var(--d25fecda-ink, #111); background: var(--d25fecda-bg, #fff); }
h1, h2, h3, h4, h5, h6 { font-family: var(--d25fecda-font-display, var(--d25fecda-font, system-ui, sans-serif)); }
img, svg, video, canvas { max-width: 100%; height: auto; }
a { color: inherit; }
*:focus-visible { outline: 2px solid var(--d25fecda-primary, #2563eb); outline-offset: 2px; }
/* visibility shim for framework toggles */
.hidden { display: none !important; }

/* design tokens */
:root {
  --d25fecda-primary: #143B2B;
  --d25fecda-secondary: #2FA7A3;
  --d25fecda-accent: #2FA7A3;
  --d25fecda-ink: #0F2A1E;
  --d25fecda-slate: #49525B;
  --d25fecda-mist: #9AA6A3;
  --d25fecda-border: #E2DED2;
  --d25fecda-surface: #F7F3EA;
  --d25fecda-bg: #FFFFFF;
  --d25fecda-text: #1B1F23;
  --d25fecda-font: 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif;
  --d25fecda-font-display: 'Iowan Old Style', 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif;
}

/* state utilities */
.is-open { display: block !important; }
.is-active { display: block !important; }
[hidden] { display: none !important; }

/* framework-injected components (vanilla) */
[data-d25fecda-ui="cookie-banner"] { position: fixed; left: 1rem; right: 1rem; bottom: 1rem; z-index: 9999; margin: 0 auto; max-width: 56rem; border: 1px solid var(--d25fecda-border, #e5e7eb); background: var(--d25fecda-surface, #fff); border-radius: 1rem; padding: 1rem; box-shadow: 0 10px 30px rgba(0,0,0,.15); }
[data-d25fecda-ui="cookie-banner"] > div { display: flex; flex-wrap: wrap; gap: 1rem; align-items: flex-start; justify-content: space-between; }
[data-d25fecda-ui="cookie-banner"] > div > div:last-child { display: flex; flex-wrap: wrap; gap: .5rem; }
[data-d25fecda-ui="cookie-banner"] a { text-decoration: underline; }
[data-d25fecda-cs-action], [data-d25fecda-ag-action] { cursor: pointer; border-radius: .5rem; padding: .5rem .9rem; font-size: .8rem; border: 1px solid var(--d25fecda-border, #d1d5db); background: transparent; color: var(--d25fecda-ink, #111); }
[data-d25fecda-cs-action="accept-all"], [data-d25fecda-cs-action="save"], [data-d25fecda-ag-action="confirm"] { background: var(--d25fecda-primary, #2563eb); color: #fff; border-color: transparent; font-weight: 600; }
[data-d25fecda-cs-action="reject-all"] { background: var(--d25fecda-ink, #111); color: #fff; border-color: transparent; font-weight: 600; }
[data-d25fecda-cs-panel] { margin-top: 1rem; border: 1px solid var(--d25fecda-border, #e5e7eb); background: var(--d25fecda-surface, #fff); border-radius: .75rem; padding: 1rem; font-size: .875rem; }
[data-d25fecda-cs-panel] > div { display: flex; flex-wrap: wrap; gap: .75rem; }
[data-d25fecda-ui="cookie-banner"] label { display: inline-flex; align-items: center; gap: .5rem; }
[data-d25fecda-ui="age-gate-overlay"] { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.8); }
[data-d25fecda-ui="age-gate-overlay"] > div { width: 100%; max-width: 28rem; margin: 0 1rem; background: var(--d25fecda-surface, #1a1a2e); color: var(--d25fecda-ink, #fff); border-radius: 1rem; padding: 2rem; text-align: center; box-shadow: 0 20px 60px rgba(0,0,0,.4); }
[data-d25fecda-ui="age-gate-overlay"] > div > div:last-of-type { display: flex; flex-direction: column; gap: .75rem; }
[data-d25fecda-ag-action] { padding: .75rem 1.5rem; }

/* sections */
/* d25fecda:header */
/* d25fecda:header */
#header.header{position:sticky;top:0;z-index:50;background:var(--d25fecda-bg);border-bottom:1px solid var(--d25fecda-border)}
#header .header-inner{max-width:72rem;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:0.9rem clamp(1rem,4vw,3rem)}
#header .brand{display:flex;align-items:center;gap:0.75rem;min-height:44px;text-decoration:none;color:var(--d25fecda-ink)}
#header .brand-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--d25fecda-border);border-radius:12px;background:var(--d25fecda-surface);font-size:1.05rem}
#header .brand-text{font-family:var(--font-serif, 'Iowan Old Style, Palatino, Georgia, serif');font-weight:700;letter-spacing:-0.02em;font-size:1.05rem}
#header .nav{display:flex;align-items:center;gap:1.2rem}
#header .nav-link{font-family:var(--font-sans, 'Iowan Old Style, Palatino, Georgia, serif');font-size:1rem;color:var(--d25fecda-ink);text-decoration:none;line-height:1.2;position:relative;padding:0.45rem 0.2rem;border-radius:10px}
#header .nav-link:focus-visible{outline:3px solid var(--d25fecda-secondary);outline-offset:3px}
#header .nav-link:hover{color:var(--d25fecda-secondary)}
#header .cta{display:flex;align-items:center;justify-content:flex-end;gap:0.75rem}
#header .cta-primary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0.7rem 1rem;border-radius:14px;background:var(--d25fecda-primary);color:var(--d25fecda-bg);text-decoration:none;font-family:var(--font-sans, 'Iowan Old Style, Palatino, Georgia, serif');font-weight:700;letter-spacing:-0.01em;border:1px solid var(--d25fecda-primary);white-space:nowrap}
#header .cta-primary:hover{background:var(--d25fecda-ink);border-color:var(--d25fecda-ink)}
#header .cta-primary:focus-visible{outline:3px solid var(--d25fecda-secondary);outline-offset:3px}
#header ::selection{background:rgba(47,167,163,.25)}
@media (max-width:640px){#header .header-inner{padding:0.85rem 1rem}#header .nav{gap:0.6rem}#header .nav-link{font-size:0.95rem}#header .cta{display:none}}
@media (prefers-reduced-motion:reduce){#header .nav-link,#header .cta-primary{transition:none}}
/* d25fecda:footer */
#footer{--f-bg:var(--d25fecda-bg);--f-ink:var(--d25fecda-ink);--f-border:var(--d25fecda-border);--f-surface:var(--d25fecda-surface);--f-muted:var(--d25fecda-mist);--f-slate:var(--d25fecda-slate);background:var(--f-bg);color:var(--f-ink);}
#footer .footer-wrap{max-width:72rem;margin:0 auto;padding:clamp(2.5rem,6vw,5rem) clamp(1rem,4vw,3rem) 2.5rem;}
#footer .footer-top{display:flex;gap:2rem;align-items:flex-start;justify-content:space-between;border-top:1px solid var(--f-border);padding-top:2rem;}
#footer .footer-brand{min-width:18rem;max-width:22rem;}
#footer .footer-logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;color:var(--f-ink);}
#footer .footer-logo-mark{width:34px;height:34px;border-radius:10px;background:var(--d25fecda-secondary);color:var(--d25fecda-bg);display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-weight:700;line-height:1;}
#footer .footer-logo-text{font-family:var(--d25fecda-font-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-weight:700;font-size:1.25rem;letter-spacing:-0.02em;}
#footer .footer-tagline{margin:.75rem 0 0;line-height:1.65;color:var(--d25fecda-slate);font-size:0.98rem;}
#footer .footer-nav{display:flex;gap:2.25rem;flex-wrap:wrap;justify-content:flex-end;}
#footer .footer-col{min-width:12rem;}
#footer .footer-col-title{margin:0 0 .75rem;font-weight:700;letter-spacing:-0.01em;}
#footer .footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem;}
#footer .footer-links a{color:var(--f-ink);text-decoration:none;border-bottom:1px solid transparent;}
#footer .footer-links a:hover{border-bottom-color:var(--d25fecda-secondary);} 
#footer .footer-links a:focus-visible{outline:3px solid var(--d25fecda-secondary);outline-offset:4px;border-bottom-color:var(--d25fecda-secondary);}
#footer .footer-address{color:var(--d25fecda-slate);}
#footer .footer-mid{margin-top:2.25rem;display:flex;gap:1.5rem;align-items:flex-start;justify-content:space-between;border-top:1px solid var(--f-border);padding-top:1.6rem;}
#footer .footer-disclaimer{flex:1;min-width:18rem;border:1px solid var(--f-border);border-radius:var(--d25fecda-radius-md, 14px);padding:1rem 1.1rem;background:var(--f-surface);}
#footer .footer-disclaimer-title{margin:0;font-weight:800;letter-spacing:-0.01em;}
#footer .footer-disclaimer-text{margin:.45rem 0 0;color:var(--d25fecda-slate);line-height:1.65;}
#footer .footer-policy{min-width:16rem;display:flex;flex-direction:column;align-items:flex-end;gap:.75rem;}
#footer .footer-policy-links{list-style:none;margin:0;padding:0;display:flex;gap:1.25rem;flex-wrap:wrap;justify-content:flex-end;}
#footer .footer-policy-links a{color:var(--f-ink);text-decoration:none;border-bottom:1px solid transparent;}
#footer .footer-policy-links a:hover{border-bottom-color:var(--d25fecda-secondary);} 
#footer .footer-policy-links a:focus-visible{outline:3px solid var(--d25fecda-secondary);outline-offset:4px;border-bottom-color:var(--d25fecda-secondary);}
#footer .footer-copy{margin:0;color:var(--d25fecda-slate);font-size:.92rem;}
#footer ::selection{background:rgba(47,167,163,.28);}
@media (max-width: 900px){
  #footer .footer-top{flex-direction:column;gap:1.25rem;}
  #footer .footer-policy{align-items:flex-start;}
  #footer .footer-mid{flex-direction:column;align-items:stretch;}
}
@media (prefers-reduced-motion: reduce){
  #footer .footer-links a,#footer .footer-policy-links a{transition:none;}
}
/* d25fecda:footer */
/* d25fecda:hero-editorial */
/* d25fecda:hero-editorial */
#hero-editorial.hero-editorial{--pad:clamp(1rem,3.5vw,3rem);--radius-lg:var(--d25fecda-border);--fs-body:1rem;background:var(--d25fecda-bg);color:var(--d25fecda-text);font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif}
#hero-editorial .hero-split{max-width:120rem;margin:0 auto;display:grid;grid-template-columns:7fr 5fr;gap:0;min-height:72vh}
#hero-editorial .hero-image{position:relative;overflow:hidden;min-height:560px}
#hero-editorial .hero-img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.02)}
#hero-editorial .hero-image-overlay{position:absolute;left:0;right:0;bottom:0;height:44%;background:linear-gradient(to top, rgba(15,42,30,.92), rgba(15,42,30,.25), rgba(15,42,30,0));pointer-events:none}
#hero-editorial .hero-image-caption{position:absolute;left:var(--pad);bottom:var(--pad);display:flex;flex-direction:column;gap:.6rem;max-width:26rem}
#hero-editorial .hero-caption-pill{align-self:flex-start;background:rgba(247,243,234,.92);color:var(--d25fecda-ink);border:1px solid rgba(226,222,210,.8);padding:.45rem .7rem;border-radius:999px;font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif;font-size:.95rem}
#hero-editorial .hero-caption-line{color:rgba(247,243,234,.95);font-size:1rem;line-height:1.35}

#hero-editorial .hero-content{padding:var(--pad);background:var(--d25fecda-bg)}
#hero-editorial .hero-copy{padding:1.5rem 0 1rem;max-width:34rem}
#hero-editorial .hero-title{font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif;letter-spacing:-.02em;font-weight:700;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.05;margin:0 0 .9rem;text-wrap:balance}
#hero-editorial .hero-subtitle{margin:0;color:var(--d25fecda-ink);font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif;font-size:1.1rem;line-height:1.55}

#hero-editorial .booking-card{border:1px solid var(--d25fecda-border);background:rgba(247,243,234,.9);border-radius:var(--d25fecda-border);padding:1.15rem 1.15rem 1rem;max-width:34rem}
#hero-editorial .booking-card-header{border-bottom:1px solid rgba(226,222,210,.9);padding-bottom:.85rem;margin-bottom:.85rem}
#hero-editorial .booking-card-title{margin:0 0 .25rem;font-size:1.15rem;letter-spacing:-.01em}
#hero-editorial .booking-card-lead{margin:0;color:var(--d25fecda-slate);font-size:.98rem;line-height:1.45;font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif}

#hero-editorial .booking-preview{display:flex;flex-direction:column;gap:1rem}
#hero-editorial .field-row{display:flex;flex-direction:column;gap:.45rem}
#hero-editorial .field-label{font-size:.92rem;color:var(--d25fecda-ink);font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif}

#hero-editorial .segmented{display:flex;gap:.5rem;flex-wrap:wrap}
#hero-editorial .seg-btn{appearance:none;border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);color:var(--d25fecda-ink);padding:.55rem .7rem;border-radius:999px;font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif;font-size:.96rem;min-height:44px;line-height:1;cursor:pointer}
#hero-editorial .seg-btn.is-active{border-color:rgba(47,167,163,.9);background:rgba(47,167,163,.14)}
#hero-editorial .seg-btn:focus-visible{outline:3px solid rgba(47,167,163,.35);outline-offset:2px}

#hero-editorial .date-wrap{display:flex;align-items:flex-end;gap:.6rem}
#hero-editorial .date-field{position:relative;flex:1;min-width:7.5rem}
#hero-editorial .date-input{width:100%;border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);border-radius:var(--radius-md,14px);padding:.9rem .85rem .45rem;font-size:1rem;color:var(--d25fecda-ink);min-height:44px}
#hero-editorial .date-hint{position:absolute;left:.8rem;top:.25rem;color:var(--d25fecda-mist);font-size:.78rem;pointer-events:none}
#hero-editorial .date-input:focus-visible{outline:3px solid rgba(47,167,163,.35);outline-offset:2px;border-color:rgba(47,167,163,.6)}
#hero-editorial .date-sep{color:var(--d25fecda-slate);padding-bottom:.45rem;font-size:1.1rem}

#hero-editorial .guests-row{display:flex;flex-direction:column;gap:.75rem}
#hero-editorial .stepper{display:flex;align-items:center;gap:.75rem}
#hero-editorial .step-btn{appearance:none;border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);color:var(--d25fecda-ink);border-radius:12px;min-width:44px;min-height:44px;cursor:pointer;font-size:1.4rem;line-height:1}
#hero-editorial .step-value{min-width:3.2rem;text-align:center;font-variant-numeric:tabular-nums;font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif;font-size:1.25rem;color:var(--d25fecda-ink)}
#hero-editorial .step-btn:focus-visible{outline:3px solid rgba(47,167,163,.35);outline-offset:2px}
#hero-editorial .guest-meta{display:flex;flex-wrap:wrap;gap:.75rem;color:var(--d25fecda-slate);font-size:.92rem}
#hero-editorial .guest-meta-item{white-space:nowrap}
#hero-editorial .guest-meta-strong{color:var(--d25fecda-ink);font-weight:700}

#hero-editorial .booking-actions{display:flex;flex-direction:column;gap:.7rem}
#hero-editorial .primary-btn{appearance:none;border:1px solid rgba(20,59,43,.9);background:var(--d25fecda-primary);color:var(--d25fecda-surface);border-radius:14px;min-height:52px;padding:.9rem 1rem;font-size:1.02rem;font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif;cursor:pointer}
#hero-editorial .primary-btn:hover{background:rgba(20,59,43,.96)}
#hero-editorial .primary-btn:focus-visible{outline:3px solid rgba(47,167,163,.35);outline-offset:3px}
#hero-editorial .ghost-link{color:var(--d25fecda-ink);border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);border-radius:14px;padding:.85rem 1rem;display:inline-flex;justify-content:center;min-height:48px;text-decoration:none;font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif;font-size:.98rem}
#hero-editorial .ghost-link:hover{border-color:rgba(47,167,163,.65)}
#hero-editorial .ghost-link:focus-visible{outline:3px solid rgba(47,167,163,.35);outline-offset:3px}

#hero-editorial .disclaimer{margin:.15rem 0 0;color:var(--d25fecda-slate);font-size:.9rem;line-height:1.4;font-family:'Iowan Old Style',Palatino,Georgia,'Times New Roman',serif}

#hero-editorial .micro-list{margin-top:1.2rem;display:flex;flex-direction:column;gap:.95rem}
#hero-editorial .micro-item{display:grid;grid-template-columns:2.1rem 1fr;gap:.8rem;align-items:start;padding-top:.35rem;border-top:1px solid rgba(226,222,210,.85)}
#hero-editorial .micro-item:first-child{border-top:none;padding-top:0}
#hero-editorial .micro-icon{width:2.1rem;height:2.1rem;border-radius:999px;background:rgba(47,167,163,.16);border:1px solid rgba(47,167,163,.45);color:var(--d25fecda-ink);display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums;font-size:1rem;font-weight:800}
#hero-editorial .micro-title{margin:.05rem 0 .35rem;font-size:1.02rem;letter-spacing:-.01em;font-weight:700}
#hero-editorial .micro-body{margin:0;color:var(--d25fecda-slate);font-size:.95rem;line-height:1.45}

#hero-editorial ::selection{background:rgba(47,167,163,.25);color:var(--d25fecda-ink)}
#hero-editorial .hero-img{will-change:transform}
@media (prefers-reduced-motion: reduce){#hero-editorial .hero-img{transform:none}}

@media (max-width: 1024px){
  #hero-editorial .hero-split{grid-template-columns:1fr;}
  #hero-editorial .hero-image{min-height:420px}
  #hero-editorial .hero-content{padding:clamp(1rem,4vw,2.2rem)}
  #hero-editorial .booking-card{max-width:none}
}
@media (max-width: 640px){
  #hero-editorial .hero-image-caption{left:1rem;bottom:1rem;max-width:18rem}
  #hero-editorial .booking-card{padding:1rem}
  #hero-editorial .hero-copy{padding:0 0 .6rem}
  #hero-editorial .micro-list{margin-top:.9rem}
  #hero-editorial .date-wrap{gap:.45rem}
  #hero-editorial .date-field{min-width:7rem}
}

/* d25fecda:sticky-booking-bar */
/* d25fecda:sticky-booking-bar */
#sticky-booking-bar{--bar-h:76px;position:relative;font-family:var(--d25fecda-sans, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);}
#sticky-booking-bar .sticky-shell{position:fixed;left:0;right:0;bottom:0;z-index:50;background:rgba(247,243,234,0.86);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--d25fecda-border);padding:10px 14px 12px;transform:translateY(110%);opacity:0;transition:transform 200ms ease-out, opacity 200ms ease-out;}
#sticky-booking-bar.stuck .sticky-shell{transform:translateY(0);opacity:1;}
#sticky-booking-bar .sticky-inner{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:54px;}
#sticky-booking-bar .sticky-chips{display:flex;align-items:center;gap:8px;min-width:0;}
#sticky-booking-bar .step-chip{appearance:none;border:1px solid var(--d25fecda-border);background:var(--d25fecda-surface);color:var(--d25fecda-ink);padding:10px 10px;border-radius:999px;font-family:var(--d25fecda-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-size:14px;line-height:1;white-space:nowrap;cursor:pointer;min-height:44px;}
#sticky-booking-bar .step-chip:focus-visible{outline:3px solid rgba(47,167,163,0.45);outline-offset:2px;}
#sticky-booking-bar .step-chip:hover{border-color:var(--d25fecda-accent);}
#sticky-booking-bar .sticky-cta{flex:0 0 auto;}
#sticky-booking-bar .availability-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 14px;border-radius:14px;background:var(--d25fecda-primary);color:var(--d25fecda-bg);text-decoration:none;font-size:14px;font-weight:700;border:1px solid rgba(20,59,43,0.22);}
#sticky-booking-bar .availability-link:focus-visible{outline:3px solid rgba(47,167,163,0.45);outline-offset:3px;}
#sticky-booking-bar .availability-link:hover{background:var(--d25fecda-ink);}
#sticky-booking-bar .sticky-disclaimer{margin-top:8px;font-size:12px;line-height:1.35;color:var(--d25fecda-slate);max-width:72ch;}
#sticky-booking-bar ::selection{background:rgba(47,167,163,0.25);}
@media (min-width: 768px){
  #sticky-booking-bar .sticky-shell{padding:12px 20px 14px;}
  #sticky-booking-bar .availability-link{padding:14px 18px;}
}
@media (max-width: 420px){
  #sticky-booking-bar .step-chip{font-size:13px;padding:10px 8px;}
  #sticky-booking-bar .sticky-inner{gap:8px;}
}
@media (prefers-reduced-motion: reduce){
  #sticky-booking-bar .sticky-shell{transition:none;}
}

/* d25fecda:evidence-strip */
#evidence-strip{--es-bg:var(--d25fecda-bg);--es-surface:var(--d25fecda-surface);--es-ink:var(--d25fecda-ink);--es-text:var(--d25fecda-text);--es-border:var(--d25fecda-border);--es-accent:var(--d25fecda-accent);padding:clamp(2.5rem,5vw,4rem) 0;background:var(--es-bg);} 
#evidence-strip .evidence-shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);} 
#evidence-strip .evidence-head{display:flex;flex-direction:column;gap:0.85rem;margin-bottom:clamp(1.5rem,3vw,2.25rem);} 
#evidence-strip .evidence-title{font-family:var(--font-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-weight:700;letter-spacing:-0.02em;line-height:1.12;font-size:clamp(1.6rem,2.6vw,2.25rem);color:var(--es-ink);margin:0;text-wrap:balance;} 
#evidence-strip .evidence-lead{margin:0;max-width:60ch;color:var(--es-text);font-family:var(--font-sans, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-size:1rem;line-height:1.6;} 
#evidence-strip .evidence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2.2vw,1.75rem);align-items:start;} 
#evidence-strip .evidence-col{background:var(--es-surface);border:1px solid var(--es-border);border-radius:var(--radius-md, 14px);padding:1.2rem 1.15rem;display:flex;flex-direction:column;gap:0.8rem;min-height:190px;} 
#evidence-strip .evidence-top{display:flex;align-items:center;gap:0.75rem;margin-bottom:0.1rem;} 
#evidence-strip .evidence-badge{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:rgba(47,167,163,0.12);color:var(--es-accent);border:1px solid rgba(47,167,163,0.35);font-weight:700;font-size:0.95rem;flex:0 0 auto;} 
#evidence-strip .evidence-col-title{margin:0;font-family:var(--font-sans, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-size:1.05rem;letter-spacing:-0.01em;line-height:1.3;color:var(--es-ink);} 
#evidence-strip .evidence-text{margin:0;color:var(--es-text);font-size:1rem;line-height:1.65;} 
#evidence-strip .evidence-disclaimer{margin:0;color:var(--es-ink);font-size:0.95rem;line-height:1.55;padding:0.65rem 0.75rem;border-radius:var(--radius-sm, 10px);border:1px dashed rgba(47,167,163,0.5);background:rgba(47,167,163,0.06);} 
#evidence-strip .evidence-toggle{margin-top:0.1rem;padding-top:0.2rem;} 
#evidence-strip .evidence-toggle-row{display:flex;align-items:flex-start;gap:0.6rem;} 
#evidence-strip .evidence-toggle-dot{color:var(--es-accent);font-weight:800;line-height:1.1;font-size:1.05rem;margin-top:0.05rem;} 
#evidence-strip .evidence-toggle-label{color:var(--es-text);line-height:1.6;font-size:1rem;} 
#evidence-strip .evidence-link{align-self:flex-start;margin-top:auto;color:var(--es-ink);text-decoration:none;border-bottom:1px solid rgba(20,59,43,0.35);padding-bottom:0.1rem;font-weight:700;font-family:var(--font-sans, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);} 
#evidence-strip .evidence-link:hover{border-bottom-color:rgba(47,167,163,0.95);color:var(--es-accent);} 
#evidence-strip .evidence-link:focus-visible{outline:3px solid rgba(47,167,163,0.35);outline-offset:3px;border-bottom-color:rgba(47,167,163,0.95);} 
#evidence-strip *::selection{background:rgba(47,167,163,0.22);} 
@media (max-width: 880px){#evidence-strip .evidence-grid{grid-template-columns:1fr;gap:1rem;} #evidence-strip .evidence-col{min-height:auto;}} 
@media (prefers-reduced-motion: reduce){#evidence-strip .evidence-link{transition:none;}}
/* d25fecda:itinerary-proof-rail */
/* d25fecda:itinerary-proof-rail */
#itinerary-proof-rail.itinerary-proof-rail{--radius-sm:var(--d25fecda-radius-sm,10px);--radius-md:var(--d25fecda-radius-md,14px);--radius-lg:var(--d25fecda-radius-lg,18px);background:var(--d25fecda-bg);color:var(--d25fecda-text);padding:clamp(1.5rem,4vw,3rem) 0;}
#itinerary-proof-rail.itinerary-proof-rail *{box-sizing:border-box;}
#itinerary-proof-rail.itinerary-proof-rail .rail-header{max-width:72rem;margin:0 auto; padding:0 clamp(1rem,4vw,3rem);}
#itinerary-proof-rail.itinerary-proof-rail .rail-kicker{font-family:var(--d25fecda-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);color:var(--d25fecda-ink);font-size:0.95rem;letter-spacing:0.01em;margin-bottom:0.5rem;}
#itinerary-proof-rail.itinerary-proof-rail .rail-title{font-family:var(--d25fecda-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-size:clamp(1.6rem,3.4vw,2.4rem);line-height:1.12;margin:0 0 0.75rem 0;letter-spacing:-0.02em;text-wrap:balance;}
#itinerary-proof-rail.itinerary-proof-rail .rail-lead{margin:0;max-width:62ch;color:var(--d25fecda-slate);line-height:1.65;font-size:1rem;}
#itinerary-proof-rail.itinerary-proof-rail .rail-controls{max-width:72rem;margin:1.25rem auto 1rem auto;padding:0 clamp(1rem,4vw,3rem);}
#itinerary-proof-rail.itinerary-proof-rail .chip-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
#itinerary-proof-rail.itinerary-proof-rail .chip{appearance:none;border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);color:var(--d25fecda-ink);padding:0.6rem 0.9rem;border-radius:999px;font-size:0.95rem;line-height:1;cursor:pointer;min-height:44px;}
#itinerary-proof-rail.itinerary-proof-rail .chip[aria-pressed="true"]{border-color:var(--d25fecda-accent);background:color-mix(in srgb, var(--d25fecda-surface) 70%, var(--d25fecda-accent) 30%);}
#itinerary-proof-rail.itinerary-proof-rail .chip:focus-visible{outline:3px solid color-mix(in srgb, var(--d25fecda-accent) 50%, white 50%);outline-offset:2px;}
#itinerary-proof-rail.itinerary-proof-rail .rail-disclaimer{margin-top:0.9rem;color:var(--d25fecda-slate);font-size:0.95rem;line-height:1.5;background:var(--d25fecda-surface);border:1px solid var(--d25fecda-border);border-radius:var(--d25fecda-radius-md,14px);padding:0.85rem 0.95rem;}
#itinerary-proof-rail.itinerary-proof-rail .rail-disclaimer-style{color:var(--d25fecda-ink);font-weight:650;}
#itinerary-proof-rail.itinerary-proof-rail .timeline-wrap{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#itinerary-proof-rail.itinerary-proof-rail .timeline{display:flex;gap:14px;align-items:stretch;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 10px 0;outline:none;}
#itinerary-proof-rail.itinerary-proof-rail .timeline:focus-visible{outline:3px solid color-mix(in srgb, var(--d25fecda-accent) 55%, white 45%);outline-offset:6px;}
#itinerary-proof-rail.itinerary-proof-rail .timeline-item{flex:0 0 290px;scroll-snap-align:start;border:1px solid var(--d25fecda-border);background:var(--d25fecda-surface);border-radius:var(--d25fecda-radius-lg,18px);padding:1rem 1rem 1rem 0.95rem;display:flex;gap:0.85rem;align-items:flex-start;transition:opacity 150ms ease-out, transform 150ms ease-out;}
#itinerary-proof-rail.itinerary-proof-rail .timeline-item .step-dot{width:12px;height:12px;border-radius:50%;background:var(--d25fecda-border);margin-top:0.25rem;box-shadow:inset 0 0 0 2px var(--d25fecda-surface);}
#itinerary-proof-rail.itinerary-proof-rail .timeline-item .step-title{font-family:var(--d25fecda-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-weight:750;font-size:1.05rem;letter-spacing:-0.01em;}
#itinerary-proof-rail.itinerary-proof-rail .timeline-item .step-sub{color:var(--d25fecda-slate);font-size:0.95rem;line-height:1.6;margin-top:0.25rem;}
#itinerary-proof-rail.itinerary-proof-rail .timeline-item.is-active{border-color:color-mix(in srgb, var(--d25fecda-accent) 55%, var(--d25fecda-border) 45%);background:color-mix(in srgb, var(--d25fecda-surface) 75%, var(--d25fecda-accent) 25%);}
#itinerary-proof-rail.itinerary-proof-rail .timeline-item.is-active .step-dot{background:var(--d25fecda-accent);}
#itinerary-proof-rail.itinerary-proof-rail .template-steps{display:none;}
#itinerary-proof-rail.itinerary-proof-rail .rail-footer{max-width:72rem;margin:1.25rem auto 0 auto;padding:0 clamp(1rem,4vw,3rem);display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;}
#itinerary-proof-rail.itinerary-proof-rail .rail-note{display:flex;flex-direction:column;gap:0.25rem;max-width:52ch;}
#itinerary-proof-rail.itinerary-proof-rail .rail-note-title{font-family:var(--d25fecda-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-size:1.05rem;color:var(--d25fecda-ink);}
#itinerary-proof-rail.itinerary-proof-rail .rail-note-text{color:var(--d25fecda-slate);font-size:0.98rem;line-height:1.6;}
#itinerary-proof-rail.itinerary-proof-rail .rail-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0.85rem 1.15rem;border-radius:var(--d25fecda-radius-md,14px);border:1px solid var(--d25fecda-accent);background:var(--d25fecda-accent);color:white;text-decoration:none;font-weight:750;letter-spacing:0.01em;}
#itinerary-proof-rail.itinerary-proof-rail .rail-cta:focus-visible{outline:3px solid color-mix(in srgb, var(--d25fecda-accent) 50%, white 50%);outline-offset:3px;}
#itinerary-proof-rail.itinerary-proof-rail .rail-cta:hover{filter:saturate(1.03) brightness(1.02);}
#itinerary-proof-rail.itinerary-proof-rail .chip:active,.rail-cta:active{transform:translateY(1px);}
#itinerary-proof-rail.itinerary-proof-rail ::selection{background:color-mix(in srgb, var(--d25fecda-accent) 35%, white 65%);}
@media (max-width: 640px){
  #itinerary-proof-rail.itinerary-proof-rail .timeline-item{flex-basis:270px;}
  #itinerary-proof-rail.itinerary-proof-rail .rail-footer{justify-content:flex-start;}
  #itinerary-proof-rail.itinerary-proof-rail .rail-note{max-width:none;}
}
@media (prefers-reduced-motion: reduce){
  #itinerary-proof-rail.itinerary-proof-rail .timeline-item{transition:none;}
}

/* d25fecda:resort-comparison */
/* d25fecda:resort-comparison */
#resort-comparison{padding:clamp(2.5rem,5vw,4rem) 0;background:var(--d25fecda-surface);color:var(--d25fecda-ink);}
#resort-comparison .rc-shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#resort-comparison .rc-header{margin-bottom:clamp(1.5rem,3.2vw,2.2rem);}
#resort-comparison .rc-title{font-family:var(--d25fecda-serif, "Iowan Old Style", Palatino, Georgia, "Times New Roman", serif);font-size:clamp(1.6rem,2.6vw,2.3rem);line-height:1.12;letter-spacing:-0.02em;margin:0 0 0.75rem;text-wrap:balance;}
#resort-comparison .rc-lead{margin:0;max-width:58ch;font-size:1rem;line-height:1.7;color:var(--d25fecda-ink);}
#resort-comparison .rc-disclaimer{margin:0.9rem 0 0;font-size:0.9rem;line-height:1.55;color:var(--d25fecda-slate);}
#resort-comparison .rc-layout{display:flex;gap:clamp(1rem,3vw,2.2rem);align-items:flex-start;}
#resort-comparison .rc-table-wrap{flex:1.25;min-width:0;}
#resort-comparison .rc-table{width:100%;border-collapse:separate;border-spacing:0;background:var(--d25fecda-bg);border:1px solid var(--d25fecda-border);border-radius:var(--d25fecda-radius,14px);overflow:hidden;}
#resort-comparison .rc-caption{caption-side:top;text-align:left;padding:0.9rem 1rem;font-weight:600;color:var(--d25fecda-ink);font-size:0.95rem;}
#resort-comparison th,#resort-comparison td{padding:0.85rem 0.9rem;border-top:1px solid var(--d25fecda-border);vertical-align:middle;}
#resort-comparison thead th{border-top:none;background:var(--d25fecda-surface);font-weight:700;text-align:left;color:var(--d25fecda-ink);}
#resort-comparison .rc-sticky-col{position:sticky;left:0;background:var(--d25fecda-bg);z-index:2;box-shadow:2px 0 0 0 var(--d25fecda-border);font-weight:650;}
#resort-comparison tbody td:first-child{font-weight:600;}
#resort-comparison .rc-badge{display:inline-flex;align-items:center;gap:0.5rem;padding:0.45rem 0.65rem;border-radius:999px;border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);font-size:0.92rem;line-height:1.2;white-space:nowrap;}
#resort-comparison .rc-compare-actions{flex:0.85;min-width:18rem;}
#resort-comparison .rc-actions-title{margin:0 0 1rem;font-size:1.1rem;letter-spacing:-0.01em;}
#resort-comparison .rc-picks{display:flex;flex-direction:column;gap:0.9rem;}
#resort-comparison .rc-pick{border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);border-radius:var(--d25fecda-radius,14px);padding:1rem;}
#resort-comparison .rc-pick-head{display:flex;flex-direction:column;gap:0.35rem;margin-bottom:0.7rem;}
#resort-comparison .rc-pick-name{font-weight:800;font-size:1.08rem;}
#resort-comparison .rc-pill{display:inline-flex;align-items:center;align-self:flex-start;padding:0.35rem 0.6rem;border:1px solid var(--d25fecda-border);border-radius:999px;background:var(--d25fecda-surface);font-size:0.9rem;color:var(--d25fecda-slate);}
#resort-comparison .rc-mini-list{margin:0;padding-left:1.1rem;display:grid;gap:0.45rem;}
#resort-comparison .rc-mini-list li{color:var(--d25fecda-ink);line-height:1.55;font-size:0.98rem;}
#resort-comparison .rc-choose{width:100%;margin-top:0.9rem;min-height:44px;padding:0.75rem 1rem;border-radius:var(--d25fecda-radius,14px);border:1px solid var(--d25fecda-secondary);background:var(--d25fecda-secondary);color:var(--d25fecda-bg);font-weight:800;cursor:pointer;letter-spacing:0.01em;}
#resort-comparison .rc-choose:hover{filter:brightness(0.98);}
#resort-comparison .rc-choose:active{transform:translateY(1px);}
#resort-comparison .rc-choose:focus-visible{outline:3px solid color-mix(in srgb, var(--d25fecda-secondary) 65%, #ffffff 35%);outline-offset:2px;}
#resort-comparison .rc-jump{margin-top:1rem;padding-top:0.9rem;border-top:1px solid var(--d25fecda-border);}
#resort-comparison .rc-link{display:inline-flex;align-items:center;gap:0.5rem;color:var(--d25fecda-ink);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px;}
#resort-comparison .rc-link:focus-visible{outline:3px solid color-mix(in srgb, var(--d25fecda-secondary) 65%, #ffffff 35%);outline-offset:3px;border-radius:10px;}
#resort-comparison .rc-mobile-cards{display:none;}
#resort-comparison .rc-mobile-grid{display:grid;grid-template-columns:1fr;gap:1rem;}
#resort-comparison .rc-mobile-card{border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);border-radius:var(--d25fecda-radius,14px);padding:1rem;}
#resort-comparison .rc-mobile-title{margin:0 0 0.6rem;font-size:1.1rem;font-weight:900;}
#resort-comparison .rc-dl{margin:0;display:grid;gap:0.45rem;}
#resort-comparison .rc-dl-row{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--d25fecda-border);padding-top:0.45rem;}
#resort-comparison .rc-dl-row:first-child{border-top:none;padding-top:0;}
#resort-comparison .rc-dl dt{color:var(--d25fecda-slate);font-size:0.92rem;}
#resort-comparison .rc-dl dd{margin:0;font-size:0.95rem;font-weight:700;}
#resort-comparison ::selection{background:color-mix(in srgb, var(--d25fecda-secondary) 35%, #ffffff 65%);}
@media (prefers-reduced-motion: reduce){#resort-comparison *{scroll-behavior:auto;}} 
@media (max-width: 900px){
  #resort-comparison .rc-layout{display:block;}
  #resort-comparison .rc-table-wrap{display:none;}
  #resort-comparison .rc-compare-actions{display:none;}
  #resort-comparison .rc-mobile-cards{display:block;margin-top:0.5rem;}
}

/* d25fecda:how-we-work */
/* d25fecda:how-we-work */

#how-we-work.how-we-work{background:var(--d25fecda-surface);color:var(--d25fecda-ink);padding:clamp(2.5rem,4.5vw,4rem) 0;border-top:1px solid var(--d25fecda-border)}
#how-we-work .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
#how-we-work .section-head{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.75rem}
#how-we-work .kicker{font-family:var(--d25fecda-font-serif, var(--d25fecda-serif));font-weight:700;font-size:clamp(1.4rem,2.6vw,2.1rem);letter-spacing:-.02em;margin:0}
#how-we-work .lead{margin:0;max-width:60ch;line-height:1.65;color:color-mix(in srgb, var(--d25fecda-ink) 86%, var(--d25fecda-slate) 14%);font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));font-size:1.02rem}
#how-we-work .steps{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem;margin-bottom:1.75rem}
#how-we-work .step{grid-column:span 4;display:flex;gap:1rem;align-items:flex-start;padding:1.05rem 1.05rem;border:1px solid var(--d25fecda-border);border-radius:var(--radius-md);background:var(--d25fecda-bg)}
#how-we-work .step-num{width:2.25rem;height:2.25rem;border-radius:999px;display:flex;align-items:center;justify-content:center;background:var(--d25fecda-primary);color:var(--d25fecda-bg);font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));font-weight:700;letter-spacing:-.02em;flex:0 0 auto}
#how-we-work .step-title{margin:.1rem 0 .25rem 0;font-size:1.05rem;letter-spacing:-.01em}
#how-we-work .step-text{margin:0;line-height:1.65;color:color-mix(in srgb, var(--d25fecda-ink) 84%, var(--d25fecda-slate) 16%);font-size:.98rem}
#how-we-work .mock-faq{display:grid;grid-template-columns:repeat(12,1fr);gap:1.25rem;align-items:start}
#how-we-work .mock{grid-column:span 7;border-radius:var(--radius-lg);border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);padding:1.15rem}
#how-we-work .mock-top{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}
#how-we-work .mock-title{font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));font-weight:700;letter-spacing:-.01em;font-size:1.05rem}
#how-we-work .mock-chiplist{display:flex;gap:.5rem;flex-wrap:wrap}
#how-we-work .chip{font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));font-size:.9rem;padding:.45rem .7rem;border-radius:999px;border:1px solid var(--d25fecda-border);color:color-mix(in srgb, var(--d25fecda-ink) 78%, var(--d25fecda-slate) 22%);background:var(--d25fecda-surface)}
#how-we-work .mock-grid{display:grid;grid-template-columns:1fr;gap:1rem}
#how-we-work .field .label{font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));font-size:.875rem;letter-spacing:.01em;color:color-mix(in srgb, var(--d25fecda-ink) 80%, var(--d25fecda-slate) 20%);margin-bottom:.5rem}
#how-we-work .seg{display:flex;gap:.5rem;flex-wrap:wrap}
#how-we-work .seg-btn{appearance:none;border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);color:var(--d25fecda-ink);border-radius:var(--radius-sm);padding:.6rem .85rem;font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));cursor:pointer;font-weight:600;min-height:44px}
#how-we-work .seg-btn:focus-visible{outline:3px solid color-mix(in srgb, var(--d25fecda-secondary) 55%, white 45%);outline-offset:2px}
#how-we-work .seg-btn.is-active{border-color:color-mix(in srgb, var(--d25fecda-secondary) 55%, var(--d25fecda-border) 45%);background:color-mix(in srgb, var(--d25fecda-secondary) 12%, var(--d25fecda-bg) 88%)}
#how-we-work .range{display:flex;gap:.5rem}
#how-we-work .range-box{flex:1;border:1px solid var(--d25fecda-border);background:var(--d25fecda-surface);border-radius:var(--radius-md);padding:.65rem .75rem;font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));font-size:.95rem;color:var(--d25fecda-ink)}
#how-we-work .qty{display:flex;gap:.5rem}
#how-we-work .qty-btn{min-height:44px;min-width:52px;border-radius:var(--radius-md);border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);color:var(--d25fecda-ink);font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));font-weight:700;cursor:pointer}
#how-we-work .qty-btn.is-selected{border-color:color-mix(in srgb, var(--d25fecda-secondary) 55%, var(--d25fecda-border) 45%);background:color-mix(in srgb, var(--d25fecda-secondary) 12%, var(--d25fecda-bg) 88%)}
#how-we-work .mock-disclaimer{margin-top:1rem;padding:.8rem .9rem;border-radius:var(--radius-md);border:1px dashed color-mix(in srgb, var(--d25fecda-secondary) 45%, var(--d25fecda-border) 55%);background:color-mix(in srgb, var(--d25fecda-secondary) 8%, var(--d25fecda-bg) 92%);font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));line-height:1.55;color:color-mix(in srgb, var(--d25fecda-ink) 90%, var(--d25fecda-slate) 10%);font-size:.95rem}
#how-we-work .faq{grid-column:span 5;border-radius:var(--radius-lg);border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);padding:1.1rem}
#how-we-work .faq-item{border-top:1px solid var(--d25fecda-border)}
#how-we-work .faq-item:first-child{border-top:none}
#how-we-work .faq-trigger{width:100%;text-align:left;appearance:none;border:none;background:transparent;padding:1rem 0;cursor:pointer;font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));font-weight:700;letter-spacing:-.01em;color:var(--d25fecda-ink);font-size:1rem;min-height:44px}
#how-we-work .faq-trigger:focus-visible{outline:3px solid color-mix(in srgb, var(--d25fecda-secondary) 55%, white 45%);outline-offset:3px;border-radius:10px}
#how-we-work .faq-panel{padding:0 0 1rem 0}
#how-we-work .faq-answer{margin:.1rem 0 0 0;line-height:1.65;color:color-mix(in srgb, var(--d25fecda-ink) 84%, var(--d25fecda-slate) 16%);font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));font-size:.97rem}
#how-we-work .faq-links{display:flex;flex-direction:column;gap:.65rem;margin-top:1rem}
#how-we-work .link{color:var(--d25fecda-ink);text-decoration:none;font-family:var(--d25fecda-font-sans, var(--d25fecda-sans));font-weight:700;letter-spacing:-.01em;border-bottom:1px solid color-mix(in srgb, var(--d25fecda-border) 70%, var(--d25fecda-ink) 30%);padding-bottom:.15rem;align-self:flex-start}
#how-we-work .link:focus-visible{outline:3px solid color-mix(in srgb, var(--d25fecda-secondary) 55%, white 45%);outline-offset:3px;border-radius:6px}
#how-we-work .link:hover{border-bottom-color:color-mix(in srgb, var(--d25fecda-secondary) 50%, var(--d25fecda-ink) 50%)}
#how-we-work ::selection{background:color-mix(in srgb, var(--d25fecda-secondary) 25%, white 75%);color:var(--d25fecda-ink)}
@media (max-width: 900px){#how-we-work .step{grid-column:span 12}#how-we-work .mock{grid-column:span 12}#how-we-work .faq{grid-column:span 12}#how-we-work .steps{gap:.85rem}}
@media (prefers-reduced-motion: reduce){#how-we-work *{scroll-behavior:auto;transition:none !important;animation:none !important}}

/* d25fecda:contacts */
/* d25fecda:contacts */
#contacts.contacts{--pad:clamp(1.25rem,3vw,2.25rem);--max:72rem;--g:clamp(1rem,3vw,1.5rem);padding:var(--g) 0;background:var(--d25fecda-bg);color:var(--d25fecda-text);font-family:var(--font-sans, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);} 
#contacts .container{max-width:var(--max);margin:0 auto;padding:0 var(--pad);} 
#contacts .section-head{display:flex;flex-direction:column;gap:.75rem;margin:0 0 clamp(1.5rem,3vw,2.25rem);} 
#contacts .section-title{font-family:var(--font-serif, 'Iowan Old Style', Palatino Linotype, Palatino, 'Book Antiqua', Georgia, serif);font-weight:700;letter-spacing:-0.02em;line-height:1.1;font-size:clamp(1.6rem,2.8vw,2.3rem);margin:0;} 
#contacts .section-lead{margin:0;max-width:60ch;line-height:1.6;color:var(--d25fecda-slate);font-size:1rem;} 
#contacts .contact-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:clamp(1.25rem,3vw,2.25rem);} 
#contacts .contact-card{border:1px solid var(--d25fecda-border);background:var(--d25fecda-surface);border-radius:var(--radius-md,14px);padding:1rem 1.1rem;} 
#contacts .contact-title{margin:0 0 .5rem;font-size:.9rem;letter-spacing:.02em;text-transform:none;color:var(--d25fecda-ink);font-weight:700;} 
#contacts .contact-value{margin:0;color:var(--d25fecda-text);font-size:1.05rem;line-height:1.45;} 
#contacts .contact-link{color:var(--d25fecda-primary);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.16em;} 
#contacts .contact-link:focus-visible{outline:3px solid var(--d25fecda-secondary);outline-offset:3px;border-radius:6px;} 

#contacts .quote-panel{border:1px solid var(--d25fecda-border);background:var(--d25fecda-surface);border-radius:var(--radius-lg,18px);padding:clamp(1.05rem,2.6vw,1.6rem);display:grid;grid-template-columns:1fr;gap:1.25rem;align-items:start;} 
#contacts .quote-title{margin:0 0 .4rem;font-size:1.25rem;letter-spacing:-0.01em;color:var(--d25fecda-ink);font-family:var(--font-serif, 'Iowan Old Style', Palatino Linotype, Palatino, 'Book Antiqua', Georgia, serif);} 
#contacts .quote-text{margin:0;line-height:1.6;color:var(--d25fecda-slate);} 
#contacts .quote-disclaimer{margin:.85rem 0 0;line-height:1.55;color:var(--d25fecda-ink);font-size:.95rem;border-left:4px solid var(--d25fecda-secondary);padding-left:.8rem;} 

#contacts .quote-form{display:grid;grid-template-columns:1fr;gap:.95rem;} 
#contacts .field{display:flex;flex-direction:column;gap:.45rem;} 
#contacts .field-label{font-size:.9rem;color:var(--d25fecda-ink);font-weight:700;} 
#contacts .field-input,#contacts .field-textarea{width:100%;border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);border-radius:var(--radius-sm,10px);padding:.75rem .85rem;font-size:1rem;color:var(--d25fecda-text);line-height:1.4;} 
#contacts .field-textarea{resize:vertical;min-height:110px;} 
#contacts .field-input:focus,#contacts .field-textarea:focus{outline:none;border-color:var(--d25fecda-secondary);box-shadow:0 0 0 4px rgba(47,167,163,.18);} 

#contacts .form-actions{display:flex;flex-direction:column;gap:.65rem;margin-top:.15rem;} 
#contacts .primary-btn{appearance:none;border:1px solid var(--d25fecda-primary);background:var(--d25fecda-primary);color:var(--d25fecda-surface);border-radius:var(--radius-md,14px);padding:.9rem 1rem;font-weight:800;font-size:1rem;min-height:44px;cursor:pointer;text-align:center;} 
#contacts .primary-btn:hover{background:#0f3324;} 
#contacts .primary-btn:active{transform:translateY(1px);} 
#contacts .primary-btn:focus-visible{outline:3px solid var(--d25fecda-secondary);outline-offset:3px;} 
#contacts .primary-btn[disabled]{opacity:.6;cursor:not-allowed;} 
#contacts .form-help{margin:0;color:var(--d25fecda-slate);font-size:.95rem;line-height:1.5;} 

#contacts .links-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;} 
#contacts .ghost-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.75rem .95rem;border-radius:var(--radius-md,14px);border:1px solid var(--d25fecda-border);background:transparent;color:var(--d25fecda-primary);text-decoration:none;font-weight:800;font-size:.98rem;cursor:pointer;} 
#contacts .ghost-btn:hover{border-color:var(--d25fecda-secondary);color:var(--d25fecda-primary);} 
#contacts .ghost-btn:focus-visible{outline:3px solid var(--d25fecda-secondary);outline-offset:3px;} 

#contacts ::selection{background:rgba(47,167,163,.25);} 

@media (min-width: 768px){
  #contacts .contact-grid{grid-template-columns:repeat(3,1fr);} 
  #contacts .quote-panel{grid-template-columns:1.05fr .95fr;gap:1.4rem;}
}
@media (prefers-reduced-motion: reduce){
  #contacts .primary-btn:hover,#contacts .ghost-btn:hover{transform:none;}
}

/* d25fecda:features-intro */
/* d25fecda:features-intro */

#features-intro.features-intro{
  background: var(--d25fecda-bg);
  color: var(--d25fecda-text);
}

#features-intro .features-intro__container{
  max-width: 72rem;
  margin: 0 auto;
  padding: clamp(1.5rem, 3.5vw, 2.5rem) var(--container-gutter, 3rem);
}

#features-intro .features-intro__header{ margin-bottom: clamp(1.25rem, 2.8vw, 2.25rem); }
#features-intro .features-intro__title{
  font-family: var(--font-serif, inherit);
  color: var(--d25fecda-ink);
  margin: 0;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
  letter-spacing: -0.02em;
  line-height: 1.15;
  text-wrap: balance;
}
#features-intro .features-intro__lead{
  margin: 0.75rem 0 0;
  max-width: 62ch;
  font-family: var(--font-sans, inherit);
  color: var(--d25fecda-slate);
  font-size: 1rem;
  line-height: 1.65;
}

#features-intro .features-intro__two-col{
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(1rem, 2.5vw, 1.5rem);
  align-items: start;
}

#features-intro .features-intro__block{
  border: 1px solid var(--d25fecda-border);
  background: #fff;
  border-radius: var(--d25fecda-radius-lg, 18px);
  padding: clamp(1.25rem, 3vw, 1.75rem);
}

#features-intro .features-intro__block--contrast{
  background: var(--d25fecda-surface);
}

#features-intro .features-intro__subtitle{
  margin: 0 0 0.75rem;
  font-family: var(--font-sans, inherit);
  color: var(--d25fecda-ink);
  font-size: 1.05rem;
  letter-spacing: -0.01em;
}

#features-intro .features-intro__small{
  margin: 0 0 0.95rem;
  color: var(--d25fecda-slate);
  font-family: var(--font-sans, inherit);
  line-height: 1.65;
}

#features-intro .features-intro__list{
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.75rem;
}

#features-intro .features-intro__li,
#features-intro .features-intro__li span{ font-family: var(--font-sans, inherit); }

#features-intro .features-intro__li{
  display: flex;
  gap: 0.65rem;
  align-items: flex-start;
  color: var(--d25fecda-text);
  line-height: 1.5;
}

#features-intro .features-intro__check{
  flex: 0 0 auto;
  width: 1.35rem;
  height: 1.35rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--d25fecda-secondary);
  color: #fff;
  font-weight: 700;
  font-size: 0.92rem;
}

#features-intro .features-intro__dot{
  flex: 0 0 auto;
  color: var(--d25fecda-secondary);
  font-weight: 800;
  line-height: 1.2;
  margin-top: 0.1rem;
}

#features-intro .features-intro__cta{
  margin-top: 1.1rem;
  display: grid;
  gap: 0.6rem;
}

#features-intro .features-intro__link{
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: var(--d25fecda-primary);
  text-decoration: none;
  font-family: var(--font-sans, inherit);
  font-weight: 700;
}
#features-intro .features-intro__link:hover{ text-decoration: underline; }
#features-intro .features-intro__link--muted{
  font-weight: 600;
  color: var(--d25fecda-slate);
}

#features-intro .features-intro__note{
  margin-top: clamp(1.25rem, 3vw, 2rem);
  display: flex;
  gap: 0.9rem;
  align-items: flex-start;
  padding: 1rem 1rem;
  border: 1px dashed var(--d25fecda-border);
  border-radius: var(--d25fecda-radius-md, 14px);
}

#features-intro .features-intro__note-icon{
  width: 2.2rem;
  height: 2.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: rgba(47,167,163,0.12);
  color: var(--d25fecda-secondary);
  font-size: 1.15rem;
  flex: 0 0 auto;
}

#features-intro .features-intro__note-text{
  margin: 0;
  color: var(--d25fecda-slate);
  font-family: var(--font-sans, inherit);
  line-height: 1.65;
}

#features-intro a:focus-visible{
  outline: 3px solid var(--d25fecda-secondary);
  outline-offset: 3px;
  border-radius: 8px;
}

#features-intro::selection{ background: rgba(47,167,163,0.25); }

@media (min-width: 768px){
  #features-intro .features-intro__container{ padding-left: 3rem; padding-right: 3rem; }
  #features-intro .features-intro__two-col{ grid-template-columns: 1fr 1fr; }
}

@media (prefers-reduced-motion: reduce){
  #features-intro *{ scroll-behavior: auto !important; }
}

/* d25fecda:inclusions-checklist */
/* d25fecda:inclusions-checklist */
#inclusions-checklist.section-wrap{background:var(--d25fecda-bg);color:var(--d25fecda-text);padding:clamp(2.25rem,5vw,4.25rem) 0;}
#inclusions-checklist .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,2rem);}
#inclusions-checklist .section-head{max-width:58rem;margin-bottom:clamp(1.75rem,3.5vw,2.5rem);}
#inclusions-checklist .section-title{font-family:var(--d25fecda-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-size:clamp(1.55rem,2.6vw,2.25rem);line-height:1.15;margin:0 0 .75rem;letter-spacing:-0.02em;text-wrap:balance;}
#inclusions-checklist .section-lead{margin:0 0 .9rem;font-family:var(--d25fecda-sans, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-size:1rem;line-height:1.65;color:var(--d25fecda-text);max-width:60ch;}
#inclusions-checklist .section-disclaimer{margin:0;display:block;padding:.85rem 1rem;border:1px solid var(--d25fecda-border);border-radius:var(--d25fecda-radius-md,14px);background:var(--d25fecda-surface);font-size:.95rem;line-height:1.55;color:var(--d25fecda-ink);}
#inclusions-checklist .checklist-grid{display:grid;grid-template-columns:1fr;gap:1rem;}
#inclusions-checklist .check-item{border:1px solid var(--d25fecda-border);background:var(--d25fecda-surface);border-radius:var(--d25fecda-radius-md,14px);padding:1.05rem 1rem;}
#inclusions-checklist .check-item--muted{background:var(--d25fecda-bg);} 
#inclusions-checklist .check-top{display:flex;gap:.65rem;align-items:center;margin-bottom:.55rem;}
#inclusions-checklist .checkmark{width:2.05rem;height:2.05rem;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:rgba(47,167,163,.14);color:var(--d25fecda-secondary);border:1px solid rgba(47,167,163,.35);font-weight:700;font-size:1.05rem;}
#inclusions-checklist .checkmark--muted{background:rgba(143,152,147,.16);color:var(--d25fecda-slate);border-color:rgba(73,82,91,.35);}
#inclusions-checklist .check-title{margin:0;font-size:1.08rem;line-height:1.2;letter-spacing:-0.01em;font-family:var(--d25fecda-sans, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);}
#inclusions-checklist .check-text{margin:.05rem 0 .75rem;line-height:1.65;font-size:.98rem;color:var(--d25fecda-text);max-width:68ch;}
#inclusions-checklist .micro-list{margin:0;padding-left:1.15rem;}
#inclusions-checklist .micro-list li{margin:.25rem 0;line-height:1.55;font-size:.93rem;color:var(--d25fecda-slate);} 
#inclusions-checklist .proof-panel{margin-top:1.15rem;border-top:1px solid var(--d25fecda-border);padding-top:1.35rem;}
#inclusions-checklist .proof-title{margin:0 0 .85rem;font-size:1.08rem;letter-spacing:-0.01em;font-family:var(--d25fecda-sans, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);}
#inclusions-checklist .proof-steps{display:grid;grid-template-columns:1fr;gap:.85rem;}
#inclusions-checklist .proof-step{padding:1rem;border-radius:var(--d25fecda-radius-sm,10px);border:1px solid var(--d25fecda-border);background:var(--d25fecda-bg);} 
#inclusions-checklist .proof-step-title{margin:0 0 .35rem;font-weight:700;color:var(--d25fecda-ink);font-size:.98rem;}
#inclusions-checklist .proof-step-text{margin:0;line-height:1.65;font-size:.95rem;color:var(--d25fecda-text);} 
#inclusions-checklist .inline-links{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;margin-top:1rem;}
#inclusions-checklist .link{color:var(--d25fecda-secondary);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(47,167,163,.55);font-weight:650;}
#inclusions-checklist .link:focus-visible{outline:3px solid rgba(47,167,163,.35);outline-offset:2px;border-radius:10px;}
#inclusions-checklist .sep{color:var(--d25fecda-mist);} 
@media (min-width:768px){
  #inclusions-checklist .checklist-grid{grid-template-columns:1fr 1fr;gap:1.1rem;}
  #inclusions-checklist .check-item:last-child{grid-column:1/-1;}
  #inclusions-checklist .proof-steps{grid-template-columns:repeat(3,1fr);}
}
@media (prefers-reduced-motion:reduce){
  #inclusions-checklist *{scroll-behavior:auto;transition:none !important;animation:none !important;}
}
#inclusions-checklist ::selection{background:rgba(47,167,163,.28);color:var(--d25fecda-ink);}
/* d25fecda:pricing-clarity */
/* d25fecda:pricing-clarity */
#pricing-clarity.pricing-clarity{padding:var(--ps-pad-y,clamp(2.5rem,6vw,4.5rem)) 0;background:var(--d25fecda-bg);color:var(--d25fecda-text);}
#pricing-clarity .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
#pricing-clarity .section-head{margin-bottom:clamp(1.5rem,3.5vw,2.5rem);}
#pricing-clarity .section-title{font-family:var(--d25fecda-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-size:clamp(1.6rem,2.8vw,2.2rem);line-height:1.15;letter-spacing:-0.02em;margin:0 0 0.75rem 0;font-weight:700;text-wrap:balance;}
#pricing-clarity .section-lead{margin:0;max-width:64ch;color:var(--d25fecda-ink);font-size:1rem;line-height:1.65;}
#pricing-clarity .pricing-layout{display:grid;grid-template-columns:1fr;gap:clamp(1rem,3vw,1.5rem);align-items:start;}
#pricing-clarity .clarity-card{background:var(--d25fecda-surface);border:1px solid var(--d25fecda-border);border-radius:var(--d25fecda-radius-md,14px);padding:clamp(1.1rem,2.4vw,1.5rem);}
#pricing-clarity .card-title{margin:0 0 0.9rem 0;font-size:1.1rem;line-height:1.25;font-weight:700;color:var(--d25fecda-ink);font-family:var(--d25fecda-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);}
#pricing-clarity .checklist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.7rem;}
#pricing-clarity .checklist-item{display:flex;gap:0.65rem;align-items:flex-start;line-height:1.55;color:var(--d25fecda-text);}
#pricing-clarity .check{flex:0 0 auto;width:1.25rem;height:1.25rem;border-radius:6px;background:rgba(47,167,163,0.14);color:var(--d25fecda-primary);display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:0.95rem;margin-top:0.05rem;}
#pricing-clarity .disclaimer{margin-top:1.1rem;padding:0.95rem 1rem;border-radius:var(--d25fecda-radius-sm,10px);background:rgba(20,59,43,0.06);border:1px solid rgba(20,59,43,0.12);}
#pricing-clarity .disclaimer-text{margin:0;color:var(--d25fecda-ink);font-size:0.95rem;line-height:1.55;}
#pricing-clarity .steps{display:flex;flex-direction:column;gap:1rem;}
#pricing-clarity .step{display:flex;gap:0.9rem;align-items:flex-start;padding-top:0.2rem;}
#pricing-clarity .step-index{flex:0 0 auto;width:2rem;height:2rem;border-radius:10px;background:rgba(47,167,163,0.15);border:1px solid rgba(47,167,163,0.28);display:flex;align-items:center;justify-content:center;color:var(--d25fecda-ink);font-weight:800;font-size:0.95rem;font-variant-numeric:tabular-nums;}
#pricing-clarity .step-title{margin:0;font-weight:800;color:var(--d25fecda-ink);font-size:1rem;}
#pricing-clarity .step-desc{margin:0.25rem 0 0 0;color:var(--d25fecda-text);line-height:1.6;font-size:0.98rem;}
#pricing-clarity .fineprint{margin-top:1rem;padding-top:0.9rem;border-top:1px solid rgba(226,222,210,0.9);}
#pricing-clarity .fineprint-text{margin:0;color:var(--d25fecda-slate);line-height:1.65;font-size:0.95rem;}
#pricing-clarity .links{margin-top:1.1rem;display:flex;flex-direction:column;gap:0.65rem;}
#pricing-clarity .link{color:var(--d25fecda-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;line-height:1.5;}
#pricing-clarity .link:focus-visible{outline:3px solid rgba(47,167,163,0.45);outline-offset:3px;border-radius:8px;}
#pricing-clarity .comparison-strip{margin-top:clamp(1.3rem,3.8vw,2.2rem);padding:clamp(1.1rem,2.5vw,1.5rem);border:1px solid var(--d25fecda-border);background:rgba(247,243,234,0.55);border-radius:var(--d25fecda-radius-md,14px);}
#pricing-clarity .strip-head{display:flex;flex-direction:column;gap:0.35rem;margin-bottom:0.9rem;}
#pricing-clarity .strip-title{margin:0;font-size:1.1rem;line-height:1.25;font-weight:800;color:var(--d25fecda-ink);font-family:var(--d25fecda-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);}
#pricing-clarity .strip-note{margin:0;color:var(--d25fecda-slate);font-size:0.95rem;line-height:1.55;}
#pricing-clarity .strip-table{border-top:1px solid rgba(226,222,210,0.95);}
#pricing-clarity .strip-row{display:grid;grid-template-columns:1fr;gap:0;}
#pricing-clarity .strip-header{background:transparent;}
#pricing-clarity .cell{padding:0.8rem 0;border-bottom:1px solid rgba(226,222,210,0.95);}
#pricing-clarity .strip-header .cell{font-weight:800;color:var(--d25fecda-ink);padding-top:0.95rem;}
#pricing-clarity .callout{margin-top:clamp(1.2rem,3vw,2rem);display:flex;flex-direction:column;gap:0.9rem;align-items:flex-start;}
#pricing-clarity .callout-text{margin:0;color:var(--d25fecda-ink);line-height:1.65;font-size:1rem;max-width:70ch;}
#pricing-clarity .button{display:inline-flex;align-items:center;justify-content:center;gap:0.6rem;min-height:44px;padding:0.75rem 1.05rem;border-radius:var(--d25fecda-radius-md,14px);border:1px solid transparent;text-decoration:none;font-weight:800;letter-spacing:0.01em;}
#pricing-clarity .button.primary{background:var(--d25fecda-primary);color:var(--d25fecda-bg);border-color:rgba(20,59,43,0.25);}
#pricing-clarity .button.primary:hover{background:#124131;}
#pricing-clarity .button.primary:focus-visible{outline:3px solid rgba(47,167,163,0.55);outline-offset:3px;}
#pricing-clarity ::selection{background:rgba(47,167,163,0.25);}
@media (min-width: 860px){
  #pricing-clarity .pricing-layout{grid-template-columns:1.05fr 0.95fr;gap:1.5rem;}
  #pricing-clarity .strip-row{grid-template-columns:1.1fr 1.4fr 0.9fr;}
  #pricing-clarity .cell{padding:0.8rem 0.85rem;border-bottom:1px solid rgba(226,222,210,0.95);}
  #pricing-clarity .strip-table{margin-top:0.2rem;}
  #pricing-clarity .callout{flex-direction:row;align-items:center;justify-content:space-between;}
  #pricing-clarity .callout-text{max-width:62ch;}
}
@media (prefers-reduced-motion: reduce){
  #pricing-clarity *{scroll-behavior:auto;transition:none !important;animation:none !important;}
}

/* d25fecda:faq-mini */
/* d25fecda:faq-mini */
#faq-mini.faq-mini{padding:clamp(1.5rem,4vw,3rem) var(--page-gutter,clamp(1rem,4vw,3rem)); max-width:72rem; margin:0 auto;}
#faq-mini.faq-mini{color:var(--d25fecda-text); background:var(--d25fecda-surface); border:1px solid var(--d25fecda-border); border-radius:var(--d25fecda-radius,14px);}
#faq-mini.faq-mini .faq-head{padding:clamp(1.25rem,3vw,2rem) clamp(1rem,2.5vw,2rem) 0;}
#faq-mini.faq-mini .faq-title{margin:0; font-family:var(--d25fecda-serif,'Iowan Old Style'); font-size:clamp(1.5rem,2.8vw,2.25rem); letter-spacing:-0.02em; line-height:1.15; text-wrap:balance;}
#faq-mini.faq-mini .faq-lead{margin:0.75rem 0 0; font-size:1rem; line-height:1.65; color:var(--d25fecda-slate); max-width:60ch;}
#faq-mini.faq-mini .faq-list{margin:clamp(1rem,2.5vw,1.75rem); padding:0; border-top:1px solid var(--d25fecda-border);}
#faq-mini.faq-mini .faq-item{border-bottom:1px solid var(--d25fecda-border);}
#faq-mini.faq-mini .faq-trigger{width:100%; display:flex; align-items:center; justify-content:space-between; gap:1rem; text-align:left; background:transparent; border:0; padding:1.05rem 0; cursor:pointer; color:var(--d25fecda-ink);}
#faq-mini.faq-mini .faq-q{font-family:var(--d25fecda-sans,'Iowan Old Style, Palatino, Georgia, Times New Roman'); font-size:1rem; font-weight:700; line-height:1.35;}
#faq-mini.faq-mini .faq-icon{flex:0 0 auto; width:2rem; height:2rem; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--d25fecda-border); color:var(--d25fecda-secondary); background:var(--d25fecda-bg); font-family:inherit; font-weight:700; font-size:1.05rem;}
#faq-mini.faq-mini .faq-trigger:focus-visible{outline:3px solid color-mix(in srgb, var(--d25fecda-accent) 35%, white 65%); outline-offset:3px; border-radius:var(--d25fecda-radius,14px);}
#faq-mini.faq-mini .faq-panel{padding:0 0 1.05rem; color:var(--d25fecda-slate);}
#faq-mini.faq-mini .faq-a{margin:0; line-height:1.7; font-size:0.98rem; max-width:72ch;}
#faq-mini.faq-mini .faq-cta-row{display:flex; align-items:flex-end; justify-content:space-between; gap:1.25rem; padding:0 clamp(1rem,2.5vw,2rem) clamp(1.25rem,3vw,2rem); border-top:1px solid var(--d25fecda-border);}
#faq-mini.faq-mini .faq-cta{display:inline-flex; align-items:center; justify-content:center; text-decoration:none; background:var(--d25fecda-primary); color:var(--d25fecda-bg); border:1px solid var(--d25fecda-primary); border-radius:var(--d25fecda-radius,14px); padding:0.8rem 1rem; font-weight:800; font-family:var(--d25fecda-sans,'Iowan Old Style');}
#faq-mini.faq-mini .faq-cta:hover{background:color-mix(in srgb, var(--d25fecda-primary) 88%, white 12%);}
#faq-mini.faq-mini .faq-cta:focus-visible{outline:3px solid color-mix(in srgb, var(--d25fecda-accent) 40%, white 60%); outline-offset:3px;}
#faq-mini.faq-mini .faq-disclaimer{margin:0; font-size:0.875rem; line-height:1.5; color:var(--d25fecda-slate); max-width:40ch;}
#faq-mini.faq-mini ::selection{background:color-mix(in srgb, var(--d25fecda-secondary) 30%, white 70%); color:var(--d25fecda-ink);}
@media (max-width:640px){#faq-mini.faq-mini{border-radius:var(--d25fecda-radius,14px);}#faq-mini.faq-mini .faq-cta-row{flex-direction:column; align-items:flex-start; padding-top:1rem;}#faq-mini.faq-mini .faq-trigger{padding:0.95rem 0;}}
@media (prefers-reduced-motion:reduce){#faq-mini.faq-mini *{scroll-behavior:auto; transition:none !important; animation:none !important;}}
/* d25fecda:contact-intro */
/* d25fecda:contact-intro */
#contact-intro.contact-intro{background:var(--d25fecda-bg);color:var(--d25fecda-text);padding:clamp(2rem,4vw,3.5rem) 0;}
#contact-intro .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,2rem);}
#contact-intro .intro-grid{display:grid;grid-template-columns:1fr;gap:clamp(1.25rem,3vw,2rem);align-items:start;}
#contact-intro .headline{font-family:var(--d25fecda-font-serif,inherit);font-family:var(--d25fecda-primary);}
#contact-intro .intro-copy .headline{font-family:var(--d25fecda-font-serif,inherit);font-family:inherit;}
#contact-intro .intro-copy{padding-top:0;}
#contact-intro .headline{font-family:'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.1;letter-spacing:-0.02em;margin:0 0 0.75rem 0;color:var(--d25fecda-ink);text-wrap:balance;}
#contact-intro .lead{margin:0 0 1.25rem 0;font-size:1rem;line-height:1.65;color:var(--d25fecda-text);max-width:46rem;}
#contact-intro .disclaimer{border:1px solid var(--d25fecda-border);background:var(--d25fecda-surface);border-radius:var(--d25fecda-radius-md,14px);padding:1rem 1.05rem;}
#contact-intro .disclaimer-title{margin:0 0 0.35rem 0;font-size:0.95rem;letter-spacing:0.01em;color:var(--d25fecda-ink);font-weight:700;}
#contact-intro .disclaimer-text{margin:0;font-size:0.98rem;line-height:1.6;color:var(--d25fecda-text);}
#contact-intro .next-steps{margin-top:1.25rem;}
#contact-intro .steps-title{margin:0 0 0.75rem 0;font-size:1rem;color:var(--d25fecda-ink);font-weight:800;letter-spacing:0.01em;}
#contact-intro .steps-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.65rem;}
#contact-intro .step{display:flex;gap:0.65rem;align-items:flex-start;}
#contact-intro .step-index{min-width:2rem;height:2rem;border-radius:999px;border:1px solid var(--d25fecda-border);display:inline-flex;align-items:center;justify-content:center;font-weight:800;color:var(--d25fecda-ink);background:var(--d25fecda-bg);font-variant-numeric:tabular-nums;}
#contact-intro .step-text{line-height:1.65;color:var(--d25fecda-text);font-size:1rem;}
#contact-intro .intro-aside{border:1px solid var(--d25fecda-border);background:var(--d25fecda-surface);border-radius:var(--d25fecda-radius-md,14px);padding:1.1rem 1.1rem 1.05rem 1.1rem;}
#contact-intro .aside-title{margin:0 0 0.8rem 0;color:var(--d25fecda-ink);font-size:1rem;font-weight:900;letter-spacing:0.01em;}
#contact-intro .aside-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0.7rem;}
#contact-intro .aside-item{display:flex;gap:0.55rem;align-items:flex-start;line-height:1.55;color:var(--d25fecda-text);font-size:0.98rem;}
#contact-intro .check{width:1.25rem;height:1.25rem;border-radius:999px;background:var(--d25fecda-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:0.85rem;font-weight:900;flex:0 0 auto;margin-top:0.05rem;}
#contact-intro .aside-links{margin-top:1rem;padding-top:0.9rem;border-top:1px solid var(--d25fecda-border);display:flex;flex-direction:column;gap:0.5rem;}
#contact-intro .link{color:var(--d25fecda-primary);text-decoration:underline;text-decoration-color:var(--d25fecda-accent);text-underline-offset:0.22em;}
#contact-intro .link:focus-visible{outline:3px solid var(--d25fecda-accent);outline-offset:3px;border-radius:8px;}
#contact-intro .link:hover{color:var(--d25fecda-ink);}
#contact-intro .link[aria-disabled="true"]{opacity:0.75;text-decoration-style:dotted;}
#contact-intro ::selection{background:rgba(47,167,163,0.28);}
@media (min-width: 768px){
  #contact-intro .intro-grid{grid-template-columns:1.25fr 0.75fr;gap:clamp(1.5rem,4vw,3rem);}
  #contact-intro .intro-aside{position:relative;top:0;}
}
@media (prefers-reduced-motion: reduce){
  #contact-intro *{scroll-behavior:auto;}
}

/* d25fecda:quote-form */
/* d25fecda:quote-form */
#quote-form.quote-form-section{padding:clamp(2.2rem,5vw,4.2rem) 0;background:var(--d25fecda-bg);} 
#quote-form .quote-form-header{max-width:72rem;margin:0 auto;padding:0 var(--gutter,clamp(1rem,4vw,3rem));}
#quote-form .quote-form-title{font-family:var(--d25fecda-serif,var(--font-serif));font-weight:650;letter-spacing:-0.02em;line-height:1.15;margin:0 0 .6rem 0;font-size:clamp(1.6rem,3.2vw,2.2rem);text-wrap:balance;color:var(--d25fecda-ink);} 
#quote-form .quote-form-lead{margin:0;color:var(--d25fecda-slate);max-width:58ch;line-height:1.65;font-size:1rem;} 
#quote-form .quote-form-layout{max-width:72rem;margin:clamp(1.6rem,3vw,2.6rem) auto 0; padding:0 var(--gutter,clamp(1rem,4vw,3rem)); display:grid; grid-template-columns: 1.4fr .9fr; gap:clamp(1.1rem,2.5vw,2rem); align-items:start;} 
#quote-form .quote-form-card{background:var(--d25fecda-surface);border:1px solid var(--d25fecda-border);border-radius:var(--d25fecda-radius-lg,18px); padding:clamp(1.1rem,2.3vw,1.7rem);} 
#quote-form .quote-request{display:block;} 
#quote-form .field{margin:0 0 1rem 0;} 
#quote-form .field-row{display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin:0 0 1rem 0;} 
#quote-form .label{display:block;font-size:.95rem;line-height:1.2;margin:0 0 .45rem 0;color:var(--d25fecda-ink);font-family:var(--d25fecda-sans,var(--font-sans));} 
#quote-form .control{width:100%; box-sizing:border-box; border:1px solid var(--d25fecda-border); background:var(--d25fecda-bg); border-radius:var(--d25fecda-radius-md,14px); padding:.75rem .85rem; font-size:1rem; color:var(--d25fecda-text); outline:none; font-family:var(--d25fecda-sans,var(--font-sans));} 
#quote-form .textarea{resize:vertical; min-height:120px;} 
#quote-form .control:focus-visible{border-color:var(--d25fecda-secondary); box-shadow:0 0 0 3px rgba(47,167,163,.18);} 
#quote-form .control[required]{ } 
#quote-form .form-disclaimer{margin:1.1rem 0 0 0;padding:.9rem 1rem;border-top:1px solid var(--d25fecda-border);color:var(--d25fecda-slate);line-height:1.6;font-size:.95rem;} 
#quote-form .form-actions{margin-top:1.15rem;display:flex;align-items:flex-start;gap:1rem;justify-content:space-between;flex-wrap:wrap;} 
#quote-form .primary-button{appearance:none;border:1px solid var(--d25fecda-secondary); background:var(--d25fecda-primary); color:#fff; padding:.95rem 1.1rem; border-radius:var(--d25fecda-radius-md,14px); font-size:1rem; font-weight:650; cursor:pointer; min-height:44px; box-shadow:0 10px 24px rgba(20,59,43,.14);} 
#quote-form .primary-button:hover{background:var(--d25fecda-ink);} 
#quote-form .primary-button:active{transform:translateY(1px);} 
#quote-form .primary-button:focus-visible{outline:none; box-shadow:0 0 0 3px rgba(47,167,163,.22), 0 10px 24px rgba(20,59,43,.14);} 
#quote-form .form-small{margin:0;color:var(--d25fecda-mist);font-size:.9rem;line-height:1.45;max-width:34ch;} 
#quote-form .quote-form-side{padding:1rem 0;} 
#quote-form .side-title{margin:0 0 .9rem 0; font-family:var(--d25fecda-serif,var(--font-serif)); color:var(--d25fecda-ink); letter-spacing:-0.01em; font-size:1.35rem; line-height:1.2;} 
#quote-form .steps{margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:.85rem;} 
#quote-form .step{display:flex; gap:.8rem; align-items:flex-start;} 
#quote-form .step-index{width:34px; height:34px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center; background:rgba(47,167,163,.12); color:var(--d25fecda-primary); border:1px solid rgba(47,167,163,.35); font-weight:700; font-family:var(--d25fecda-sans,var(--font-sans));} 
#quote-form .step-text{color:var(--d25fecda-slate); line-height:1.6; font-size:.98rem;} 
#quote-form .side-links{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--d25fecda-border);} 
#quote-form .side-lead{margin:0 0 .6rem 0;color:var(--d25fecda-slate);line-height:1.6;font-size:.95rem;} 
#quote-form .secondary-link{display:block; color:var(--d25fecda-secondary); text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:3px; margin:.45rem 0; font-weight:600;}
#quote-form .secondary-link:focus-visible{outline:none; box-shadow:0 0 0 3px rgba(47,167,163,.22); border-radius:10px;}
#quote-form ::selection{background:rgba(47,167,163,.25);}
#quote-form *{box-sizing:border-box;}
@media (max-width: 900px){
  #quote-form .quote-form-layout{grid-template-columns:1fr;}
  #quote-form .field-row{grid-template-columns:1fr;}
  #quote-form .form-actions{flex-direction:column; align-items:flex-start;}
}
@media (prefers-reduced-motion: reduce){
  #quote-form .primary-button{transition:none;}
}

/* d25fecda:form-disclosure */
/* d25fecda:form-disclosure */
.form-disclosure{background:var(--d25fecda-bg);color:var(--d25fecda-text);padding:clamp(2rem,4vw,3rem) 0;}
.form-disclosure .container{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
.form-disclosure .title{font-family:var(--font-serif, 'Iowan Old Style', Palatino, Georgia, 'Times New Roman', serif);font-weight:700;letter-spacing:-0.02em;font-size:clamp(1.4rem,2.3vw,2rem);margin:0 0 0.75rem 0;line-height:1.2;text-wrap:balance;}
.form-disclosure .lead{margin:0 0 1.25rem 0;font-size:1rem;line-height:1.65;color:var(--d25fecda-ink);max-width:62ch;}
.form-disclosure .disclosure-box{border:1px solid var(--d25fecda-border);background:var(--d25fecda-surface);border-radius:var(--radius-md);padding:1.05rem 1.1rem;}
.form-disclosure .box-text{margin:0 0 0.6rem 0;font-size:0.95rem;line-height:1.65;color:var(--d25fecda-ink);} 
.form-disclosure .box-text:last-child{margin-bottom:0;}
.form-disclosure .link{color:var(--d25fecda-secondary);text-decoration:underline;text-underline-offset:0.18em;}
.form-disclosure .link:focus-visible{outline:3px solid rgba(47,167,163,0.35);outline-offset:3px;border-radius:8px;}
.form-disclosure ::selection{background:rgba(47,167,163,0.25);}
@media (max-width:640px){.form-disclosure{padding:2rem 0;} .form-disclosure .disclosure-box{padding:0.95rem 0.95rem;}}
@media (prefers-reduced-motion:reduce){.form-disclosure .link{transition:none;}}
.policy-page{background:var(--d25fecda-bg);color:var(--d25fecda-text);font-family:var(--d25fecda-font);}
.policy-container{max-width:980px;margin:0 auto;padding:28px 18px 36px 18px;}
.policy-title{margin:0 0 12px 0;font-size:34px;line-height:1.15;color:var(--d25fecda-primary);font-family:var(--d25fecda-font-display);font-weight:700;}
.policy-lead{margin:0 0 18px 0;max-width:72ch;color:var(--d25fecda-text);font-size:16px;line-height:1.65;}
.policy-section{margin:18px 0; padding:18px 18px; border:1px solid var(--d25fecda-border); border-radius:var(--radius-md); background:var(--d25fecda-surface);}
.policy-h2{margin:0 0 10px 0;font-size:18px;line-height:1.4;color:var(--d25fecda-primary);font-family:var(--d25fecda-font-display);}
.policy-p{margin:10px 0;line-height:1.7;font-size:15px;}
.policy-list{margin:8px 0 0 18px;padding:0;}
.policy-li{margin:8px 0;line-height:1.7;font-size:15px;}
.policy-footer{background:var(--d25fecda-bg);border-color:var(--d25fecda-border);}
.policy-footer .policy-h2{margin-bottom:8px;}
strong{color:var(--d25fecda-ink);}
@media (max-width:560px){.policy-container{padding:22px 14px 30px 14px;}.policy-title{font-size:28px;}}

/* Base */
.policy-page{--policy-primary:var(--d25fecda-primary);--policy-secondary:var(--d25fecda-secondary);--policy-accent:var(--d25fecda-accent);--policy-ink:var(--d25fecda-ink);--policy-slate:var(--d25fecda-slate);--policy-mist:var(--d25fecda-mist);--policy-border:var(--d25fecda-border);--policy-surface:var(--d25fecda-surface);--policy-bg:var(--d25fecda-bg);--policy-text:var(--d25fecda-text);font-family:var(--d25fecda-font);background:var(--d25fecda-bg);color:var(--d25fecda-text);}
.policy-wrapper{max-width:980px;margin:0 auto;padding:28px 18px 34px 18px;}
.policy-header{padding:18px 18px 10px 18px;border:1px solid var(--policy-border);border-radius:var(--radius-lg,18px);background:linear-gradient(180deg, rgba(47,167,163,0.08), rgba(47,167,163,0.02));}
.policy-title{margin:0 0 10px 0;font-size:34px;line-height:1.15;color:var(--policy-ink);letter-spacing:-0.2px;font-family:var(--d25fecda-font-display, var(--d25fecda-font));}
.policy-lead{margin:0;max-width:74ch;font-size:16px;line-height:1.55;color:var(--policy-text);}
.policy-section{margin-top:18px;padding:16px 18px;border:1px solid var(--policy-border);border-radius:var(--radius-lg,18px);background:var(--policy-surface);}
.policy-h2{margin:0 0 10px 0;font-size:18px;line-height:1.35;color:var(--policy-ink);}
.policy-p{margin:10px 0;font-size:15px;line-height:1.65;}
.policy-small{font-size:13px;color:var(--policy-slate);}
.policy-list{margin:10px 0 0 18px;padding:0;}
.policy-li{margin:6px 0;font-size:15px;line-height:1.6;}
.policy-strong{font-weight:700;color:var(--policy-ink);}
.policy-link{color:var(--policy-secondary);text-decoration:underline;text-decoration-color:rgba(47,167,163,0.5);text-underline-offset:3px;}
.policy-link:hover{color:var(--policy-accent);}
.policy-footer{background:var(--policy-bg);}
.policy-footer .policy-h2{margin-bottom:6px;}
@media (max-width:520px){.policy-title{font-size:28px;}.policy-wrapper{padding:22px 14px 26px 14px;}.policy-header,.policy-section{padding-left:14px;padding-right:14px;}}

.thanks-page{background:var(--d25fecda-bg);color:var(--d25fecda-text);font-family:var(--d25fecda-font);padding:24px 16px;}.
thanks-wrapper{max-width:920px;margin:0 auto;background:var(--d25fecda-surface);border:1px solid var(--d25fecda-border);border-radius:var(--d25fecda-lg);padding:28px 22px;box-shadow:0 6px 22px rgba(20,59,43,0.08);}.
thanks-header{padding:4px 2px 18px 2px;border-bottom:1px solid rgba(226,222,210,0.9);margin-bottom:18px;}.
thanks-badge{width:44px;height:44px;border-radius:50%;background:rgba(47,167,163,0.15);border:1px solid rgba(47,167,163,0.35);display:flex;align-items:center;justify-content:center;color:var(--d25fecda-accent);font-weight:700;font-size:22px;margin-bottom:12px;}.
thanks-title{margin:0 0 8px 0;font-family:var(--d25fecda-font-display);font-size:40px;letter-spacing:-0.02em;color:var(--d25fecda-ink);}.
thanks-subtitle{margin:0;line-height:1.55;color:var(--d25fecda-text);font-size:16px;max-width:72ch;}.
thanks-details{margin:0 0 18px 0;padding:0 2px;}.
thanks-section-title{margin:0 0 10px 0;font-size:18px;color:var(--d25fecda-ink);}.
thanks-list{margin:0;padding-left:18px;line-height:1.6;color:var(--d25fecda-text);}.
thanks-list li{margin:6px 0;}.
thanks-note{margin:12px 0 0 0;line-height:1.55;color:var(--d25fecda-slate);}.
thanks-contacts{padding:0 2px;margin:0 0 18px 0;}.
thanks-dl{margin:0;display:block;}.
thanks-dt{margin:0 0 10px 0;}.
thanks-dt dt{font-weight:700;color:var(--d25fecda-ink);margin:0 0 2px 0;}.
thanks-dt dd{margin:0;color:var(--d25fecda-text);line-height:1.45;}.
thanks-link{color:var(--d25fecda-secondary);text-decoration:underline;text-underline-offset:3px;}.
thanks-link:focus{outline:2px solid rgba(47,167,163,0.35);outline-offset:2px;border-radius:6px;}.
thanks-footer{border-top:1px solid rgba(226,222,210,0.9);padding-top:14px;margin-top:12px;}.
thanks-footer-text{margin:10px 0 0 0;line-height:1.55;color:var(--d25fecda-slate);font-size:14px;}.
@media (max-width:520px){.thanks-wrapper{padding:22px 16px;}.
thanks-title{font-size:32px;}.
}
section[data-d25fecda-xc2]:not([data-d25fecda-xc2='header']):not([data-d25fecda-xc2='footer']) { position: relative; }
section[data-d25fecda-xc2]:not([data-d25fecda-xc2='header']):not([data-d25fecda-xc2='footer']) { border-top: 1px solid var(--d25fecda-border); }
section[data-d25fecda-xc2]:not([data-d25fecda-xc2='header']) h1,section[data-d25fecda-xc2]:not([data-d25fecda-xc2='header']) h2 { max-width: 20ch; letter-spacing: -0.035em; }
section[data-d25fecda-xc2]:nth-of-type(even)::before { content: ''; position: absolute; top: 0; left: 0; width: 5rem; border-top: 3px solid var(--d25fecda-accent); }
:root {
  --d25fecda-c-content-width: 72rem;
  --d25fecda-c-gutter: clamp(1rem, 4vw, 3rem);
  --d25fecda-c-measure: 65ch;
  --d25fecda-c-heading-display: clamp(2.5rem, 6vw, 5.5rem);
}
[data-d25fecda-dr] { scroll-margin-top: 1.5rem; }
main > section, main [data-d25fecda-xc2] { padding-inline: var(--d25fecda-c-gutter); }
[data-d25fecda-dr*='article'], [data-d25fecda-dr*='review'] { max-width: var(--d25fecda-c-measure); }
h1 { font-size: var(--d25fecda-c-heading-display); }
@media (max-width: 768px) { [data-d25fecda-dr] { min-width: 0; } }