/* Interior page shell. Load after css/tokens.css and css/lp.css. Reuses lp.css: .skip .wrap .btn .eyebrow .lede
   .section .head .card .tile .quote .steps .faq .dock .sticky .consent. Nothing here needs JavaScript to read. */

/* header: native <details> menu below 1100px, inline links from 1100px */
.site-header{position:sticky;top:0;z-index:var(--z-bar);background:rgba(10,10,11,.94);border-bottom:1px solid var(--c-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.site-header__in{display:flex;align-items:center;gap:var(--sp-3);min-height:64px}
.site-brand{margin-right:auto;font:500 20px/1 var(--f-display);color:var(--c-ink);letter-spacing:-.01em;text-decoration:none;white-space:nowrap}
.site-brand:hover{color:var(--c-ink)}
.site-brand i{font-style:normal;color:var(--c-amber)}
.site-menu>summary{list-style:none;display:flex;align-items:center;min-height:44px;padding:0 var(--sp-4);border-radius:var(--r-pill);box-shadow:inset 0 0 0 1px var(--c-border-strong);color:var(--c-ink);font:500 15px/1 var(--f-body);cursor:pointer}
.site-menu>summary::-webkit-details-marker{display:none}
.site-menu[open]>summary{background:rgba(244,239,230,.06)}
.site-menu>ul{position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - 64px);overflow:auto;background:var(--c-raised);border-bottom:1px solid var(--c-border-strong);padding:var(--sp-2) var(--gutter) var(--sp-5)}
.site-menu li:not(.site-nav__book) a{display:flex;align-items:center;min-height:48px;color:var(--c-ink);border-bottom:1px solid var(--c-border);font:500 17px/1.3 var(--f-body);text-decoration:none}
.site-menu a[aria-current]{color:var(--c-amber)}
.site-nav__book{display:none;padding-top:var(--sp-4)}
.site-nav__book .btn{display:flex;width:100%}
@media (max-width:479px){.site-cta{display:none}.site-nav__book{display:block}}
@media (min-width:1100px){
  .site-header__in{gap:var(--sp-6)}
  .site-menu>summary{display:none}
  .site-menu::details-content{content-visibility:visible;display:block}
  .site-menu>ul{position:static;display:flex;gap:var(--sp-5);max-height:none;overflow:visible;background:none;border:0;padding:0}
  .site-menu li:not(.site-nav__book) a{min-height:44px;border:0;color:var(--c-body);font-size:15px;font-weight:500}
  .site-menu li a:hover{color:var(--c-ink)}
  .site-menu a[aria-current]{color:var(--c-amber)}
  .site-nav__book{display:none!important}
}
@supports not selector(::details-content){@media (min-width:1100px){.site-menu>summary{display:flex}}}

/* footer: columns of links, legal row, space for the fixed dock (JS sets --dock-h) */
.site-foot{border-top:1px solid var(--c-border);padding:var(--sp-8) 0 calc(var(--sp-7) + var(--dock-h,0px) + env(safe-area-inset-bottom));font-size:var(--fs-small)}
.site-foot__grid{display:grid;gap:var(--sp-6)}
.site-foot .site-foot__h{font:600 12px/1.3 var(--f-body);letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--c-faint);margin-bottom:var(--sp-2)}
.site-foot a,.site-foot button{display:inline-flex;align-items:center;min-height:44px;color:var(--c-body);text-decoration:none}
.site-foot a:hover,.site-foot button:hover{color:var(--c-ink);text-decoration:underline;text-underline-offset:.2em}
.site-foot button{background:none;border:0;padding:0;font:inherit;cursor:pointer}
.site-foot__about{max-width:34em}
.site-foot__legal{margin-top:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--c-border);display:flex;flex-wrap:wrap;gap:0 var(--sp-5)}
@media (min-width:768px){.site-foot__grid{grid-template-columns:1.4fr 1fr 1fr}}

/* breadcrumb and page head */
.crumbs{padding-top:var(--sp-5);font-size:var(--fs-small)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:0 var(--sp-2)}
.crumbs li+li::before{content:"/";content:"/" / "";margin-right:var(--sp-2);color:var(--c-faint)}
.crumbs a{display:inline-flex;align-items:center;min-height:32px;color:var(--c-body)}
.crumbs [aria-current]{color:var(--c-ink)}
.page-head{padding:var(--sp-6) 0 var(--sp-7)}
.page-head .lede{max-width:40em}

/* section rhythm */
.section--tight{padding:var(--sp-7) 0}
.section--flush{border-top:0}
.stack>*+*{margin-top:var(--sp-4)}
.stack--lg>*+*{margin-top:var(--sp-6)}
.measure{max-width:68ch}

/* prose: long text at 62 to 68 characters */
.prose{max-width:68ch;font-size:var(--fs-body);line-height:var(--lh-body)}
.prose>*+*{margin-top:var(--sp-4)}
.prose h2{margin-top:var(--sp-8)}
.prose h3{margin-top:var(--sp-6)}
.prose h2+*,.prose h3+*{margin-top:var(--sp-3)}
.prose ul,.prose ol{padding-left:1.4em}
.prose ul{list-style:disc}
.prose ol{list-style:decimal}
.prose li::marker{color:var(--c-amber)}
.prose li+li{margin-top:var(--sp-2)}
.prose strong{color:var(--c-ink);font-weight:600}
.prose blockquote{border-left:2px solid var(--c-amber);padding-left:var(--sp-5);font:italic 400 clamp(20px,17.5px + .7vw,24px)/1.4 var(--f-display);color:var(--c-ink)}
.prose code{font:.9em/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--c-card);color:var(--c-ink);padding:.1em .35em;border-radius:6px}
.prose pre{overflow-x:auto;background:var(--c-card);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-4)}
.prose pre code{background:none;padding:0}
.prose table{width:100%;border-collapse:collapse;font-size:15px}
.prose th,.prose td{padding:var(--sp-3);text-align:left;vertical-align:top;border-bottom:1px solid var(--c-border-strong)}
.prose th{color:var(--c-ink);font-weight:600}
.prose hr{border:0;border-top:1px solid var(--c-border-strong);margin:var(--sp-7) 0}
.prose img{border-radius:var(--r-md)}
.prose figcaption{margin-top:var(--sp-2);font-size:var(--fs-small);color:var(--c-faint)}
.table-wrap{overflow-x:auto}

/* paper: light section for proof and pricing. Re-themes lp.css components by redefining the tokens.
   Every pair below is checked at 4.5:1 or better by tests/b0-static.test.mjs. */
.section--paper{--c-ink:#14130f;--c-body:#3d3a33;--c-faint:#5f5b52;--c-amber:#7a4d00;--c-amber-hover:#14130f;--c-card:#fbf8f2;--c-raised:#ebe5d8;--c-border:rgba(20,19,15,.14);--c-border-strong:rgba(20,19,15,.24);--paper:#f4efe6;--btn:#e8b65a;--btn-hover:#f5d79a;background:var(--paper);color:var(--c-body);border-top:0}
.section--paper .btn{background:var(--btn);color:#0a0a0b}
.section--paper .btn:hover{background:var(--btn-hover);color:#0a0a0b}
.section--paper .btn--ghost{background:transparent;color:var(--c-ink);box-shadow:inset 0 0 0 1px var(--c-border-strong)}
.section--paper .card .tag{border-color:rgba(122,77,0,.45)}

/* card grids: one column on mobile */
.grid{display:grid;gap:var(--sp-4)}
@media (min-width:768px){.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}}

/* CTA band: carries data-az-cta so the sticky Book button stays out of its way */
.cta-band{display:grid;gap:var(--sp-4);justify-items:start;background:var(--c-card);border:1px solid rgba(232,182,90,.35);border-radius:var(--r-md);padding:var(--sp-6)}
.cta-band p{max-width:52ch}
@media (min-width:768px){.cta-band{grid-template-columns:1fr auto;align-items:center;gap:var(--sp-6);padding:var(--sp-7)}}

/* comparison table: a real table from 768px, stacked cards below (cells carry data-label) */
.compare{width:100%;border-collapse:collapse}
.compare th,.compare td{padding:var(--sp-4);text-align:left;vertical-align:top;border-bottom:1px solid var(--c-border-strong)}
.compare thead th{font:600 12px/1.3 var(--f-body);letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--c-faint)}
.compare tbody th{font:500 18px/1.3 var(--f-display);color:var(--c-ink)}
@media (max-width:767px){
  .compare thead{position:absolute;left:-9999px}
  .compare,.compare tbody,.compare tr,.compare th,.compare td{display:block}
  .compare tr{background:var(--c-card);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-4);margin-bottom:var(--sp-4)}
  .compare th,.compare td{border:0;padding:var(--sp-2) 0}
  .compare td::before{content:attr(data-label);display:block;font:600 12px/1.3 var(--f-body);letter-spacing:var(--track-eyebrow);text-transform:uppercase;color:var(--c-faint)}
}
