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

/* design tokens */
:root {
  --rihkfaw-primary: #E2703A;
  --rihkfaw-secondary: #6E767B;
  --rihkfaw-accent: #F08A52;
  --rihkfaw-ink: #F2F4F5;
  --rihkfaw-slate: #9AA1A6;
  --rihkfaw-mist: #20262A;
  --rihkfaw-border: #333A3F;
  --rihkfaw-surface: #16191C;
  --rihkfaw-bg: #0E1012;
  --rihkfaw-text: #E7EAEC;
  --rihkfaw-font: Charter, 'Sitka Text', Cambria, Georgia, serif;
  --rihkfaw-font-display: Charter, 'Bitstream Charter', 'Sitka Text', Cambria, Georgia, serif;
}

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

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

/* sections */
/* rihkfaw:header */
/* rihkfaw:header */
#header{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);border-bottom:1px solid var(--rihkfaw-border);position:relative;z-index:20}
#header .shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
.topbar{background:var(--rihkfaw-surface);border-bottom:1px solid var(--rihkfaw-border)}
.topbar-inner{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0.4rem 1.5rem;padding-top:0.7rem;padding-bottom:0.7rem}
.wordmark{display:flex;flex-wrap:wrap;align-items:baseline;gap:0.6rem;color:var(--rihkfaw-ink);font-size:1.05rem;letter-spacing:-0.01em;text-decoration:none}
.wordmark-note{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:0.66rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--rihkfaw-slate)}
.topbar-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:0.6rem;font-size:0.82rem}
.meta-item{color:var(--rihkfaw-text);text-decoration:none}
.meta-phone{border-bottom:1px solid var(--rihkfaw-border);padding-bottom:1px}
.meta-phone:hover,.meta-phone:focus-visible{color:var(--rihkfaw-ink);border-bottom-color:var(--rihkfaw-primary)}
.meta-address{font-style:normal;color:var(--rihkfaw-slate)}
.meta-divider{width:1px;height:1em;background:var(--rihkfaw-border)}
.navbar-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0.6rem 1.5rem;padding-top:0.55rem;padding-bottom:0.55rem}
.nav-list{display:flex;flex-wrap:wrap;gap:1.4rem;margin:0;padding:0;list-style:none;font-size:0.9rem}
.nav-list a{display:inline-block;padding:0.55rem 0;color:var(--rihkfaw-slate);text-decoration:none}
.nav-list a:hover,.nav-list a:focus-visible{color:var(--rihkfaw-ink)}
.btn-accent{display:inline-flex;align-items:center;min-height:44px;padding:0.55rem 1.1rem;border:1px solid var(--rihkfaw-primary);background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);font-size:0.88rem;text-decoration:none}
.btn-accent:hover,.btn-accent:focus-visible{background:var(--rihkfaw-accent);border-color:var(--rihkfaw-accent)}
#header :focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:2px}
#header ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
@media (max-width:640px){.topbar-meta{font-size:0.78rem}.nav-list{gap:1rem}.btn-accent{width:100%;justify-content:center}}
@media (prefers-reduced-motion:reduce){#header *{transition:none}}
/* rihkfaw:footer */
/* rihkfaw:footer */
#footer{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);border-top:1px solid var(--rihkfaw-border);font-family:Charter,'Sitka Text',Cambria,Georgia,serif;font-size:0.9375rem;line-height:1.6}
#footer .footer-inner{max-width:72rem;margin:0 auto;padding:clamp(2rem,5vw,3.5rem) clamp(1rem,4vw,3rem) clamp(1.5rem,4vw,2.5rem)}
#footer .footer-index{margin:0 0 0.5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--rihkfaw-slate)}
#footer .footer-grid{display:grid;grid-template-columns:1fr;gap:1.75rem;border-top:1px solid var(--rihkfaw-border);padding-top:1.75rem}
#footer .footer-head{margin:0 0 0.75rem;font-size:0.8125rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;color:var(--rihkfaw-primary)}
#footer .footer-address{margin:0;font-style:normal;color:var(--rihkfaw-text)}
#footer .footer-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:0.375rem}
#footer .footer-list a{color:var(--rihkfaw-text);text-decoration:none;border-bottom:1px solid var(--rihkfaw-border);padding-bottom:1px;min-height:1.5rem;display:inline-block}
#footer .footer-list a:hover,#footer .footer-list a:focus-visible{color:var(--rihkfaw-accent);border-bottom-color:var(--rihkfaw-accent)}
#footer .footer-notes{color:var(--rihkfaw-slate);font-size:0.875rem;gap:0.75rem}
#footer .footer-bottom{margin-top:clamp(1.75rem,4vw,2.5rem);border-top:1px solid var(--rihkfaw-border);padding-top:1.25rem;display:flex;flex-direction:column;gap:0.75rem}
#footer .footer-copy{margin:0;color:var(--rihkfaw-slate);font-size:0.875rem;font-variant-numeric:tabular-nums}
#footer .footer-policy{display:flex;flex-wrap:wrap;gap:0.5rem 1.25rem}
#footer .footer-policy a{color:var(--rihkfaw-slate);font-size:0.875rem;text-decoration:underline;text-underline-offset:3px}
#footer .footer-policy a:hover,#footer .footer-policy a:focus-visible{color:var(--rihkfaw-accent)}
#footer a:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:2px}
#footer ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
@media (min-width:768px){#footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 2.5rem}}
@media (min-width:1024px){#footer .footer-grid{grid-template-columns:1.1fr 0.9fr 0.9fr 1.3fr;gap:2rem 3rem}#footer .footer-bottom{flex-direction:row;align-items:center;justify-content:space-between}}
@media (prefers-reduced-motion:reduce){#footer *{transition:none!important}}
/* rihkfaw:hero */
/* rihkfaw:hero */
#hero{--m:ui-monospace,Menlo,Consolas,monospace;background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,7vw,6rem) 0 clamp(2.5rem,5vw,4rem)}
#hero .hero-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(1.5rem,3vw,2.5rem);max-width:1440px;margin:auto;padding-left:clamp(1rem,4vw,3rem)}
#hero .hero-copy{display:flex;flex-direction:column;gap:clamp(1rem,2.2vw,1.6rem)}
#hero .hero-index{margin:0;padding-bottom:.7rem;border-bottom:1px solid var(--rihkfaw-border);font:11px/1 var(--m);letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate)}
#hero .hero-title{margin:0;font-size:clamp(2.3rem,5vw,3.4rem);line-height:1.04;letter-spacing:-.02em;text-wrap:balance;color:var(--rihkfaw-ink)}
#hero .hero-qualifier{margin:0;max-width:46ch;color:var(--rihkfaw-slate);line-height:1.6}
#hero .hero-specs{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none;border-block:1px solid var(--rihkfaw-border)}
#hero .hero-spec{flex:1 1 7rem;padding:1rem 1.2rem 1rem 0;border-right:1px solid var(--rihkfaw-border)}
#hero .hero-spec:last-child{border:0;padding-right:0}
#hero .hero-spec-value,#hero .hero-spec-label{display:block}
#hero .hero-spec-value{font:600 1.5rem/1 var(--m);font-variant-numeric:tabular-nums;color:var(--rihkfaw-accent)}
#hero .hero-spec-label{margin-top:.3rem;font-size:.8rem;line-height:1.4;color:var(--rihkfaw-slate)}
#hero .hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}
#hero .hero-actions a{display:inline-flex;align-items:center;min-height:44px;padding:.68rem 1.3rem;text-decoration:none;border:1px solid;border-radius:2px}
#hero .hero-cta{background:var(--rihkfaw-primary);border-color:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
#hero .hero-cta:hover{background:var(--rihkfaw-accent);border-color:var(--rihkfaw-accent)}
#hero .hero-cta-secondary{color:var(--rihkfaw-text);border-color:var(--rihkfaw-border)}
#hero .hero-cta-secondary:hover{color:var(--rihkfaw-ink);border-color:var(--rihkfaw-slate)}
#hero .hero-media{margin:0;min-height:22rem;margin-right:min(0px,calc((100vw - 1440px)/-2))}
#hero .hero-media img{display:block;width:100%;height:100%;min-height:22rem;object-fit:cover}
#hero :focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:3px}
#hero ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
@media(max-width:900px){#hero .hero-grid{grid-template-columns:1fr;padding-right:clamp(1rem,4vw,3rem)}#hero .hero-media{margin-right:0;min-height:14rem}#hero .hero-media img{min-height:14rem}}
@media(prefers-reduced-motion:reduce){#hero *{animation:none!important;transition:none!important}}
/* rihkfaw:services-index */
/* rihkfaw:services-index */
.services-index{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem)}
.services-index__inner{max-width:72rem;margin:0 auto}
.services-index__index{margin:0 0 1.25rem;padding-top:.75rem;border-top:1px solid var(--rihkfaw-border);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate)}
.services-index__title{margin:0 0 .85rem;font-family:var(--rihkfaw-serif,Charter,Georgia,serif);font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.12;letter-spacing:-.02em;color:var(--rihkfaw-ink);text-wrap:balance;max-width:34ch}
.services-index__lead{margin:0 0 clamp(1.5rem,3vw,2.25rem);max-width:58ch;font-size:1rem;line-height:1.6;color:var(--rihkfaw-slate)}
.services-index__scroll{overflow-x:auto;box-shadow:inset -18px 0 18px -18px var(--rihkfaw-border)}
.services-index__table{width:100%;min-width:40rem;border-collapse:collapse;font-size:.95rem}
.services-index__caption{text-align:left;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--rihkfaw-slate);padding-bottom:.75rem}
.services-index__table th,.services-index__table td{padding:.95rem 1rem .95rem 0;border-top:1px solid var(--rihkfaw-border);vertical-align:top;text-align:left}
.services-index__table thead th{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rihkfaw-slate);font-weight:600;border-top:1px solid var(--rihkfaw-ink)}
.services-index__table tbody th{color:var(--rihkfaw-ink);font-weight:600;white-space:nowrap}
.services-index__table tbody td{color:var(--rihkfaw-text);line-height:1.45}
.services-index__table tbody tr:last-child th,.services-index__table tbody tr:last-child td{border-bottom:1px solid var(--rihkfaw-border)}
.services-index__table tbody tr:hover th,.services-index__table tbody tr:hover td{background:var(--rihkfaw-surface)}
.services-index__num{text-align:right;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap;color:var(--rihkfaw-accent)}
.services-index__table thead th:nth-child(3),.services-index__table thead th:nth-child(4){text-align:right}
.services-index__note{margin:clamp(1.5rem,3vw,2rem) 0 0;max-width:64ch;font-size:.875rem;line-height:1.65;color:var(--rihkfaw-slate)}
.services-index__link{color:var(--rihkfaw-accent);text-decoration:underline;text-underline-offset:3px}
.services-index__link:hover{color:var(--rihkfaw-ink)}
.services-index__link:focus-visible,.services-index__scroll:focus-visible{outline:2px solid var(--rihkfaw-primary);outline-offset:3px}
.services-index ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
@media (max-width:640px){.services-index__table{min-width:34rem;font-size:.875rem}.services-index__table th,.services-index__table td{padding:.8rem .75rem .8rem 0}}
@media (prefers-reduced-motion:reduce){.services-index *{transition:none!important;animation:none!important}}
/* rihkfaw:evidence */
/* rihkfaw:evidence */
.evidence{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,7rem) 0;font-family:Charter,'Sitka Text',Cambria,Georgia,serif}
.evidence-shell{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
.evidence-index{margin:0 0 clamp(1.5rem,4vw,3rem);padding-top:.85rem;border-top:1px solid var(--rihkfaw-border);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate)}
.evidence-title{margin:0 0 .75rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.1;letter-spacing:-.02em;font-weight:600;text-wrap:balance;color:var(--rihkfaw-ink)}
.evidence-lede{max-width:46rem;margin:0 0 clamp(1.5rem,4vw,3rem);font-size:1rem;line-height:1.65;color:var(--rihkfaw-text)}
.evidence-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(1.5rem,4vw,3rem);align-items:start}
.evidence-table-wrap{overflow-x:auto;border-top:1px solid var(--rihkfaw-border);border-bottom:1px solid var(--rihkfaw-border)}
.evidence-table{width:100%;border-collapse:collapse;font-size:.9375rem;font-variant-numeric:tabular-nums}
.evidence-caption{caption-side:top;text-align:left;padding:.75rem 0;font-size:.8125rem;color:var(--rihkfaw-slate)}
.evidence-table th,.evidence-table td{padding:.7rem .5rem;text-align:right;border-bottom:1px solid var(--rihkfaw-border);white-space:nowrap}
.evidence-table thead th{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rihkfaw-slate);font-weight:500}
.evidence-table tbody th{text-align:left;font-weight:500;color:var(--rihkfaw-text)}
.evidence-table tbody tr:last-child th,.evidence-table tbody tr:last-child td{border-bottom:0;color:var(--rihkfaw-accent)}
.evidence-figure{margin:0}
.evidence-figure img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:var(--rihkfaw-mist)}
.evidence-figure figcaption{padding-top:.65rem;font-size:.8125rem;line-height:1.5;color:var(--rihkfaw-slate)}
.evidence-note{margin:clamp(1.5rem,4vw,3rem) 0 0;padding-top:1rem;border-top:1px solid var(--rihkfaw-border);font-size:.9375rem;line-height:1.6;color:var(--rihkfaw-text)}
.evidence-note a{color:var(--rihkfaw-accent);text-decoration:none;border-bottom:1px solid var(--rihkfaw-accent);padding-bottom:1px}
.evidence-note a:hover{color:var(--rihkfaw-ink);border-bottom-color:var(--rihkfaw-ink)}
.evidence a:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:2px}
.evidence ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
@media (max-width:1024px){.evidence-grid{grid-template-columns:1fr}}
@media (max-width:640px){.evidence-table{font-size:.875rem}.evidence-table th,.evidence-table td{padding:.6rem .35rem}}
/* rihkfaw:warranty-terms */
/* rihkfaw:warranty-terms */
#warranty-terms{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);font-family:Charter,'Sitka Text',Cambria,Georgia,serif;padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem);}
#warranty-terms .warranty-shell{max-width:72rem;margin:0 auto;}
#warranty-terms .warranty-index{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate);margin:0 0 .75rem;}
#warranty-terms .warranty-index span{color:var(--rihkfaw-accent);}
#warranty-terms .warranty-rule{border:0;border-top:1px solid var(--rihkfaw-border);margin:0 0 clamp(1.5rem,4vw,3rem);}
#warranty-terms .warranty-head{max-width:46rem;margin-bottom:clamp(1.5rem,4vw,2.5rem);}
#warranty-terms h2{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.12;letter-spacing:-.02em;color:var(--rihkfaw-ink);margin:0 0 .75rem;text-wrap:balance;}
#warranty-terms .warranty-lede{margin:0;color:var(--rihkfaw-slate);line-height:1.65;}
#warranty-terms .warranty-table-wrap{overflow-x:auto;}
#warranty-terms .warranty-table{width:100%;min-width:44rem;border-collapse:collapse;border-top:1px solid var(--rihkfaw-border);font-size:.9375rem;font-variant-numeric:tabular-nums;}
#warranty-terms .warranty-table caption{text-align:left;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate);padding:.75rem 0 1rem;}
#warranty-terms .warranty-table th,#warranty-terms .warranty-table td{text-align:left;vertical-align:top;padding:.875rem 1.25rem .875rem 0;border-bottom:1px solid var(--rihkfaw-border);line-height:1.5;}
#warranty-terms .warranty-table thead th{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--rihkfaw-slate);font-weight:400;}
#warranty-terms .warranty-table tbody th{color:var(--rihkfaw-ink);font-weight:600;white-space:nowrap;}
#warranty-terms .warranty-table .warranty-num{text-align:right;padding-right:1.5rem;}
#warranty-terms .warranty-table thead th:last-child,#warranty-terms .warranty-table tbody td:last-child{padding-right:0;}
#warranty-terms .warranty-list{margin:clamp(1.5rem,4vw,2.5rem) 0 0;padding:0;border-top:1px solid var(--rihkfaw-border);}
#warranty-terms .warranty-list>div{display:grid;gap:.35rem;padding:1rem 0;border-bottom:1px solid var(--rihkfaw-border);}
#warranty-terms .warranty-list dt{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--rihkfaw-slate);}
#warranty-terms .warranty-list dd{margin:0;color:var(--rihkfaw-text);line-height:1.65;}
#warranty-terms .warranty-note{margin:clamp(1.5rem,4vw,2.5rem) 0 0;color:var(--rihkfaw-slate);font-size:.9375rem;}
#warranty-terms .warranty-note a{color:var(--rihkfaw-ink);text-decoration:underline;text-underline-offset:3px;}
#warranty-terms .warranty-links{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem;}
#warranty-terms .warranty-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 1.25rem;border:1px solid var(--rihkfaw-border);color:var(--rihkfaw-ink);text-decoration:none;font-size:.9375rem;}
#warranty-terms .warranty-links a:hover{border-color:var(--rihkfaw-accent);color:var(--rihkfaw-accent);}
#warranty-terms .warranty-links a:focus-visible,#warranty-terms .warranty-note a:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:2px;}
#warranty-terms ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);}
@media (min-width:768px){#warranty-terms .warranty-list>div{grid-template-columns:14rem 1fr;gap:1.5rem;}}
@media (prefers-reduced-motion:reduce){#warranty-terms *{transition:none!important;}}

/* rihkfaw:winter-brief */
/* rihkfaw:winter-brief */
.winter-brief{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem);}
.winter-brief__inner{max-width:72rem;margin:0 auto;}
.winter-brief__index{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--rihkfaw-slate);margin:0 0 .75rem;}
.winter-brief__rule{height:1px;background:var(--rihkfaw-border);margin:0 0 clamp(1.5rem,4vw,3rem);}
.winter-brief__title{font-size:clamp(1.5rem,3vw,2.5rem);font-weight:600;letter-spacing:-.01em;line-height:1.15;text-wrap:balance;color:var(--rihkfaw-ink);margin:0 0 clamp(1.5rem,4vw,3rem);}
.winter-brief__grid{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,4vw,3rem);}
.winter-brief__body p{font-size:1rem;line-height:1.7;margin:0 0 1rem;max-width:62ch;color:var(--rihkfaw-text);}
.winter-brief__body p:last-child{margin-bottom:0;}
.winter-brief__lead{color:var(--rihkfaw-ink);}
.winter-brief__panel{border-top:1px solid var(--rihkfaw-border);padding-top:clamp(1rem,3vw,1.5rem);}
.winter-brief__panel-title{font-size:.8125rem;text-transform:uppercase;letter-spacing:.14em;font-weight:600;color:var(--rihkfaw-slate);margin:0 0 1rem;}
.winter-brief__data{margin:0;}
.winter-brief__data div{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--rihkfaw-border);}
.winter-brief__data dt{font-size:.875rem;color:var(--rihkfaw-slate);}
.winter-brief__data dd{margin:0;font-size:.875rem;color:var(--rihkfaw-ink);font-variant-numeric:tabular-nums;text-align:right;}
.winter-brief__links{margin:1.5rem 0 0;font-size:.9375rem;line-height:2;color:var(--rihkfaw-text);}
.winter-brief__links a{color:var(--rihkfaw-accent);text-decoration:none;border-bottom:1px solid var(--rihkfaw-border);padding-bottom:1px;}
.winter-brief__links a:hover{border-bottom-color:var(--rihkfaw-accent);}
.winter-brief a:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:3px;}
.winter-brief ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);}
@media (min-width:1024px){.winter-brief__grid{grid-template-columns:7fr 5fr;align-items:start;gap:clamp(2rem,5vw,4rem);}}
@media (prefers-reduced-motion:reduce){.winter-brief *{transition:none !important;animation:none !important;}}
/* rihkfaw:contact */
/* rihkfaw:contact */
#contact{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem);font-family:Charter,'Sitka Text',Cambria,Georgia,serif;}
#contact .contact-inner{max-width:72rem;margin:0 auto;}
#contact .contact-index{margin:0 0 .75rem;font:11px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate);}
#contact .contact-rule{border:0;border-top:1px solid var(--rihkfaw-border);margin:0 0 clamp(1.5rem,4vw,2.5rem);}
#contact .contact-split{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(1.5rem,4vw,3rem);align-items:start;}
#contact .contact-title{margin:0 0 1rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.1;letter-spacing:-.02em;text-wrap:balance;}
#contact .contact-note{margin:0 0 1.75rem;max-width:40ch;font-size:1rem;line-height:1.6;color:var(--rihkfaw-text);}
#contact .contact-cta{display:inline-block;min-height:44px;padding:.85rem 1.5rem;border:1px solid var(--rihkfaw-primary);background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);font-size:.9375rem;text-decoration:none;}
#contact .contact-cta:hover{background:var(--rihkfaw-accent);border-color:var(--rihkfaw-accent);}
#contact .contact-facts{margin:0;border-top:1px solid var(--rihkfaw-border);}
#contact .contact-row{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--rihkfaw-border);}
#contact .contact-row dt{font:11px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate);}
#contact .contact-row dd{margin:0;font-variant-numeric:tabular-nums;line-height:1.6;}
#contact .contact-row a{color:var(--rihkfaw-ink);text-decoration:underline;text-underline-offset:3px;}
#contact .contact-row a:hover{color:var(--rihkfaw-accent);}
#contact .contact-cta:focus-visible,#contact .contact-row a:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:3px;}
#contact ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);}
@media (max-width:768px){#contact .contact-split{grid-template-columns:1fr;}#contact .contact-row{grid-template-columns:1fr;gap:.2rem;}}
@media (prefers-reduced-motion:reduce){#contact *{transition:none!important;animation:none!important;}}
/* rihkfaw:services-intro */
/* rihkfaw:services-intro */
#services-intro{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,6rem) clamp(1rem,4vw,3rem);}
.services-intro__inner{max-width:72rem;margin:0 auto;}
.services-intro__index{margin:0 0 .5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate);}
.services-intro__rule{height:1px;background:var(--rihkfaw-border);}
.services-intro__grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(1.5rem,4vw,3rem);padding-top:clamp(1.5rem,3vw,2.5rem);}
.services-intro__heading{margin:0 0 .75rem;font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.01em;text-wrap:balance;color:var(--rihkfaw-ink);}
.services-intro__body{margin:0 0 1.5rem;color:var(--rihkfaw-slate);line-height:1.65;}
.services-intro__lines{list-style:none;margin:0 0 1.75rem;padding:0;}
.services-intro__lines li{display:grid;gap:.3rem;padding:.9rem 0;border-top:1px solid var(--rihkfaw-border);}
.services-intro__lines li span{color:var(--rihkfaw-slate);line-height:1.6;}
.services-intro__label{font-weight:600;color:var(--rihkfaw-ink);}
.services-intro__label a{color:var(--rihkfaw-accent);text-decoration:none;border-bottom:1px solid var(--rihkfaw-border);}
.services-intro__label a:hover{border-bottom-color:var(--rihkfaw-accent);}
.services-intro__cta{display:inline-flex;align-items:center;min-height:44px;padding:.75rem 1.375rem;background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);border:1px solid var(--rihkfaw-primary);font-weight:600;text-decoration:none;}
.services-intro__cta:hover{background:var(--rihkfaw-accent);border-color:var(--rihkfaw-accent);}
.services-intro__rail-heading{margin:0 0 .25rem;font-size:1.125rem;color:var(--rihkfaw-ink);}
.services-intro__table{width:100%;border-collapse:collapse;font-size:.9375rem;}
.services-intro__caption{caption-side:top;text-align:left;padding-bottom:.75rem;font-size:.8125rem;color:var(--rihkfaw-slate);}
.services-intro__table th,.services-intro__table td{border-top:1px solid var(--rihkfaw-border);padding:.75rem .75rem .75rem 0;text-align:left;vertical-align:top;line-height:1.5;}
.services-intro__table thead th{border-top:0;border-bottom:1px solid var(--rihkfaw-border);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate);}
.services-intro__table tbody th{width:36%;font-weight:600;color:var(--rihkfaw-ink);}
.services-intro__table tbody td{color:var(--rihkfaw-slate);font-variant-numeric:tabular-nums;}
.services-intro__table tbody tr:hover{background:var(--rihkfaw-surface);}
#services-intro a:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:2px;}
#services-intro ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);}
@media (max-width:1023px){.services-intro__grid{grid-template-columns:1fr;}}
@media (max-width:640px){.services-intro__table{font-size:.875rem;}.services-intro__table tbody th{width:42%;}}
@media (prefers-reduced-motion:reduce){#services-intro *{transition:none !important;}}
/* rihkfaw:ceramic-spec */
/* rihkfaw:ceramic-spec */
#ceramic-spec{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,7rem) 0;}
.ceramic-spec__inner{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem);}
.ceramic-spec__index{margin:0 0 .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-primary);}
.ceramic-spec__rule{height:1px;border:0;background:var(--rihkfaw-border);margin:0 0 1.75rem;}
.ceramic-spec__title{margin:0 0 1rem;max-width:34ch;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.02em;font-weight:600;text-wrap:balance;}
.ceramic-spec__lede{margin:0 0 2.25rem;max-width:62ch;color:var(--rihkfaw-slate);line-height:1.6;}
.ceramic-spec__scroll{overflow-x:auto;border-top:1px solid var(--rihkfaw-border);}
.spec-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;}
.spec-table__caption{padding:0 0 .85rem;text-align:left;font-size:.8125rem;color:var(--rihkfaw-slate);}
.spec-table th,.spec-table td{padding:1rem 1.25rem 1rem 0;text-align:left;vertical-align:baseline;border-bottom:1px solid var(--rihkfaw-border);white-space:nowrap;}
.spec-table thead th{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;font-weight:400;color:var(--rihkfaw-slate);}
.spec-table tbody th{font-weight:600;color:var(--rihkfaw-ink);position:sticky;left:0;background:var(--rihkfaw-bg);}
.spec-table .num{text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;}
.spec-table .unit{margin-left:.3em;font-size:.75rem;color:var(--rihkfaw-slate);}
.spec-table .price{font-weight:600;color:var(--rihkfaw-ink);}
.spec-table tbody tr:hover>*{background:var(--rihkfaw-mist);}
.ceramic-spec__note{margin:1.75rem 0 2rem;max-width:68ch;color:var(--rihkfaw-slate);line-height:1.65;font-size:.9375rem;}
.ceramic-spec__note a{color:var(--rihkfaw-accent);text-decoration:underline;text-underline-offset:3px;}
.ceramic-spec__cta{display:inline-block;padding:.9rem 1.6rem;border:1px solid var(--rihkfaw-primary);color:var(--rihkfaw-primary);text-decoration:none;font-weight:600;letter-spacing:.01em;background:transparent;transition:background-color .2s ease,color .2s ease;}
.ceramic-spec__cta:hover,.ceramic-spec__cta:focus-visible{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);}
#ceramic-spec a:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:2px;}
#ceramic-spec ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);}
@media (max-width:640px){.spec-table th,.spec-table td{padding:.85rem 1rem .85rem 0;font-size:.9375rem;}.ceramic-spec__note{font-size:.875rem;}}
@media (prefers-reduced-motion:reduce){#ceramic-spec *{transition:none!important;}}
/* rihkfaw:ppf-spec */
/* rihkfaw:ppf-spec */
#ppf-spec{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,7rem) 0}
#ppf-spec ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
.ppf-wrap{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
.ppf-index,.ppf-cap,.ppf-table th{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--rihkfaw-slate)}
.ppf-index{margin:0 0 .75rem}
.ppf-head{border-top:1px solid var(--rihkfaw-border);padding-top:1.25rem;margin-bottom:2rem}
.ppf-head h2{margin:0 0 .75rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.12;letter-spacing:-.02em;text-wrap:balance;color:var(--rihkfaw-ink)}
.ppf-lead{margin:0;max-width:46rem;line-height:1.6;color:var(--rihkfaw-slate)}
.ppf-grid{display:grid;grid-template-columns:7fr 5fr;gap:clamp(1.5rem,4vw,3rem);align-items:start}
.ppf-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.ppf-cap{text-align:left;padding-bottom:.6rem}
.ppf-table th{text-align:left;font-weight:400;padding:.6rem .5rem .6rem 0;border-bottom:1px solid var(--rihkfaw-border)}
.ppf-table td,.ppf-table tbody th{padding:.7rem .5rem .7rem 0;border-bottom:1px solid var(--rihkfaw-border);vertical-align:top;font-size:.9rem}
.ppf-table tbody th{color:var(--rihkfaw-ink);font-weight:600}
.ppf-table .num{text-align:right;padding-right:0}
.ppf-photo{margin:0}
.ppf-photo img{display:block;width:100%;height:auto}
.ppf-notes{margin-top:2.5rem;border-top:1px solid var(--rihkfaw-border);padding-top:1.5rem;display:grid;gap:1rem}
.ppf-notes h3{margin:0;font-size:1.1rem;letter-spacing:-.01em;color:var(--rihkfaw-ink)}
.ppf-notes ul{margin:0;padding:0;list-style:none;display:grid;gap:.6rem;max-width:52rem}
.ppf-notes li{padding-top:.6rem;border-top:1px solid var(--rihkfaw-border);font-size:.9rem;line-height:1.55;color:var(--rihkfaw-slate)}
.ppf-links{margin:0;font-size:.9rem;color:var(--rihkfaw-slate)}
.ppf-links a{color:var(--rihkfaw-accent)}
.ppf-links a:hover{color:var(--rihkfaw-primary)}
.ppf-cta{justify-self:start;display:inline-block;min-height:44px;padding:.85rem 1.6rem;background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);border:1px solid var(--rihkfaw-primary);border-radius:1px;text-decoration:none}
.ppf-cta:hover{background:var(--rihkfaw-accent);border-color:var(--rihkfaw-accent)}
.ppf-cta:focus-visible,.ppf-links a:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:2px}
@media(max-width:1024px){.ppf-grid{grid-template-columns:1fr}.ppf-table-box{overflow-x:auto}}
@media(max-width:640px){.ppf-table th,.ppf-table td,.ppf-table tbody th{padding-right:.4rem}}
@media(prefers-reduced-motion:reduce){#ppf-spec *{transition:none!important}}
/* rihkfaw:process */
/* rihkfaw:process */
#process{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem)}
.process-inner{max-width:72rem;margin:0 auto}
.process-index{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate);margin:0 0 .75rem}
.process-index-num{color:var(--rihkfaw-primary)}
.process-rule{border:0;border-top:1px solid var(--rihkfaw-border);margin:0 0 clamp(1.5rem,4vw,3rem)}
.process-title{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.1;letter-spacing:-.02em;font-weight:600;color:var(--rihkfaw-ink);text-wrap:balance;max-width:30ch;margin:0 0 .75rem}
.process-lede{max-width:62ch;color:var(--rihkfaw-slate);font-size:1rem;line-height:1.6;margin:0 0 clamp(2rem,4vw,3rem)}
.process-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--rihkfaw-border)}
.process-step{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem clamp(1rem,3vw,2.5rem);align-items:baseline;padding:1.25rem 0;border-bottom:1px solid var(--rihkfaw-border)}
.process-step-num{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;letter-spacing:.08em;font-variant-numeric:tabular-nums;color:var(--rihkfaw-primary)}
.process-step-title{font-size:1.0625rem;font-weight:600;letter-spacing:-.01em;color:var(--rihkfaw-ink);margin:0 0 .35rem}
.process-step-text{font-size:.9375rem;line-height:1.6;color:var(--rihkfaw-slate);max-width:64ch;margin:0}
.process-step-meta{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--rihkfaw-slate);white-space:nowrap}
.process-foot{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.75rem;margin-top:clamp(1.5rem,4vw,2.5rem)}
.process-note{font-size:.875rem;color:var(--rihkfaw-slate);margin:0}
.process-link{display:inline-flex;align-items:center;min-height:44px;color:var(--rihkfaw-primary);text-decoration:none;border-bottom:1px solid var(--rihkfaw-primary)}
.process-link:hover{color:var(--rihkfaw-accent);border-color:var(--rihkfaw-accent)}
.process-link:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:3px}
#process ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
@media (max-width:640px){.process-step{grid-template-columns:auto minmax(0,1fr)}.process-step-meta{grid-column:2}}
@media (prefers-reduced-motion:reduce){.process-link{transition:none}}
/* rihkfaw:warranty-detail */
/* rihkfaw:warranty-detail */
.warranty{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem)}
.warranty-inner{max-width:72rem;margin:0 auto}
.warranty-index{margin:0 0 .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate)}
.warranty-rule{border:0;border-top:1px solid var(--rihkfaw-border);margin:0 0 1.75rem}
.warranty-title{margin:0 0 1rem;max-width:32ch;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.1;letter-spacing:-.02em;text-wrap:balance;color:var(--rihkfaw-ink)}
.warranty-lede{margin:0 0 2.5rem;max-width:64ch;line-height:1.65;color:var(--rihkfaw-slate)}
.warranty-table-wrap{overflow-x:auto;border-top:1px solid var(--rihkfaw-border)}
.warranty-table{width:100%;min-width:40rem;border-collapse:collapse;font-variant-numeric:tabular-nums}
.warranty-table caption{text-align:left;padding:1rem 0 .5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--rihkfaw-slate)}
.warranty-table th,.warranty-table td{padding:.9rem 1.25rem .9rem 0;border-bottom:1px solid var(--rihkfaw-border);text-align:left;vertical-align:top;font-weight:400}
.warranty-table thead th{font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rihkfaw-slate)}
.warranty-table tbody th{font-weight:600;color:var(--rihkfaw-ink)}
.warranty-table td{color:var(--rihkfaw-slate)}
.warranty-table .num{text-align:right;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--rihkfaw-text)}
.warranty-grid{display:grid;gap:2.5rem;margin-top:3rem}
@media (min-width:768px){.warranty-grid{grid-template-columns:1.15fr 1fr}}
.warranty-block h3{margin:0 0 1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-primary)}
.warranty-list,.warranty-steps{margin:0;padding:0;list-style:none}
.warranty-steps{counter-reset:step}
.warranty-list li,.warranty-steps li{padding:.75rem 0;border-bottom:1px solid var(--rihkfaw-border);color:var(--rihkfaw-slate);line-height:1.55}
.warranty-steps li{position:relative;padding-left:2rem;counter-increment:step}
.warranty-steps li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;color:var(--rihkfaw-primary)}
.warranty-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.75rem}
.warranty-btn{display:inline-flex;align-items:center;min-height:44px;padding:.85rem 1.4rem;border:1px solid var(--rihkfaw-primary);background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);font-weight:600;text-decoration:none;transition:background .18s ease}
.warranty-btn:hover{background:var(--rihkfaw-accent);border-color:var(--rihkfaw-accent)}
.warranty-btn-ghost{background:transparent;color:var(--rihkfaw-text);border-color:var(--rihkfaw-border)}
.warranty-btn-ghost:hover{background:var(--rihkfaw-mist);border-color:var(--rihkfaw-slate);color:var(--rihkfaw-ink)}
.warranty-btn:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:2px}
.warranty ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
@media (prefers-reduced-motion:reduce){.warranty-btn{transition:none}}
/* rihkfaw:book */
/* rihkfaw:book */
#book{background:var(--rihkfaw-surface);color:var(--rihkfaw-text);border-top:1px solid var(--rihkfaw-border)}
#book .book-inner{max-width:72rem;margin:0 auto;padding:clamp(3rem,8vw,7rem) clamp(1rem,4vw,3rem)}
#book .book-index{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate);margin:0 0 .75rem}
#book .book-index-num{color:var(--rihkfaw-primary)}
#book .book-rule{border:0;border-top:1px solid var(--rihkfaw-border);margin:0 0 clamp(1.5rem,4vw,2.5rem)}
#book .book-grid{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,4vw,3rem)}
#book .book-title{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.14;letter-spacing:-.02em;text-wrap:balance;margin:0 0 1rem}
#book .book-lede{margin:0;max-width:48ch;color:var(--rihkfaw-text);font-size:1rem;line-height:1.6}
#book .book-facts{list-style:none;display:flex;flex-wrap:wrap;gap:1.25rem 2.25rem;margin:clamp(1.25rem,3vw,2rem) 0 0;padding:1.25rem 0 0;border-top:1px solid var(--rihkfaw-border);font-size:.875rem;color:var(--rihkfaw-slate)}
#book .book-fact-value{font-variant-numeric:tabular-nums;color:var(--rihkfaw-ink);font-size:1.25rem;margin-right:.3rem}
#book .book-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.9rem 1.75rem;background:var(--rihkfaw-primary);color:var(--rihkfaw-bg);border:1px solid var(--rihkfaw-primary);border-radius:2px;font-size:1rem;font-weight:700;letter-spacing:.01em;text-decoration:none;transition:background-color .18s ease,border-color .18s ease}
#book .book-cta:hover{background:var(--rihkfaw-accent);border-color:var(--rihkfaw-accent)}
#book .book-cta:active{background:var(--rihkfaw-primary);transform:translateY(1px)}
#book .book-cta:focus-visible,#book .book-alt a:focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:3px}
#book .book-alt{margin:1.25rem 0 0;font-size:.9375rem;color:var(--rihkfaw-text)}
#book .book-alt a{color:var(--rihkfaw-ink);text-decoration:underline;text-underline-offset:3px}
#book .book-note{margin:.75rem 0 0;font-size:.875rem;color:var(--rihkfaw-slate);max-width:34ch}
#book ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
@media (min-width:1024px){
#book .book-grid{grid-template-columns:7fr 5fr;align-items:start}
#book .book-action{border-left:1px solid var(--rihkfaw-border);padding-left:clamp(1.5rem,3vw,2.5rem)}
}
@media (prefers-reduced-motion:reduce){#book .book-cta{transition:none}}

/* rihkfaw:contact-details */
/* rihkfaw:contact-details */
#contact-details{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,7rem) 0;font-family:Charter,'Sitka Text',Cambria,Georgia,serif}
#contact-details .contact-details__inner{max-width:72rem;margin:0 auto;padding:0 clamp(1rem,4vw,3rem)}
#contact-details .section-index{margin:0 0 .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate)}
#contact-details .section-rule{margin:0 0 clamp(1.5rem,4vw,3rem);border:0;border-top:1px solid var(--rihkfaw-border)}
#contact-details .section-heading{margin:0 0 clamp(1.5rem,4vw,3rem);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:600;letter-spacing:-.015em;line-height:1.15;text-wrap:balance;color:var(--rihkfaw-ink);max-width:28ch}
#contact-details .contact-details__grid{display:grid;grid-template-columns:1fr;gap:clamp(2rem,5vw,3.5rem)}
#contact-details .detail-list{margin:0;display:grid;gap:0}
#contact-details .detail-row{display:grid;grid-template-columns:1fr;gap:.35rem;padding:1rem 0;border-top:1px solid var(--rihkfaw-border)}
#contact-details .detail-row:last-child{border-bottom:1px solid var(--rihkfaw-border)}
#contact-details dt{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--rihkfaw-slate)}
#contact-details dd{margin:0;font-size:1rem;line-height:1.6;color:var(--rihkfaw-text);font-variant-numeric:tabular-nums}
#contact-details dd a{color:var(--rihkfaw-accent);text-decoration:none;border-bottom:1px solid var(--rihkfaw-border);padding-bottom:1px}
#contact-details dd a:hover{border-bottom-color:var(--rihkfaw-accent)}
#contact-details .sub-heading{margin:0 0 1rem;font-size:1.0625rem;font-weight:600;letter-spacing:.01em;color:var(--rihkfaw-ink);text-transform:none}
#contact-details .logistics-list{margin:0 0 1.75rem;padding:0;list-style:none;display:grid;gap:0}
#contact-details .logistics-list li{display:grid;grid-template-columns:2.25rem 1fr;gap:.75rem;padding:.85rem 0;border-top:1px solid var(--rihkfaw-border);font-size:.9375rem;line-height:1.55;color:var(--rihkfaw-text)}
#contact-details .logistics-list li:last-child{border-bottom:1px solid var(--rihkfaw-border)}
#contact-details .num{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;letter-spacing:.1em;color:var(--rihkfaw-slate);padding-top:.2rem;font-variant-numeric:tabular-nums}
#contact-details .ghost-button{display:inline-block;min-height:44px;padding:.8rem 1.4rem;border:1px solid var(--rihkfaw-primary);color:var(--rihkfaw-ink);background:transparent;font-size:.9375rem;letter-spacing:.02em;text-decoration:none;border-radius:1px}
#contact-details .ghost-button:hover{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
#contact-details :focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:3px}
#contact-details ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
@media (min-width:768px){#contact-details .detail-row{grid-template-columns:11rem 1fr;gap:1.25rem;align-items:baseline}}
@media (min-width:1024px){#contact-details .contact-details__grid{grid-template-columns:7fr 5fr;gap:clamp(2.5rem,4vw,4rem)}}
@media (prefers-reduced-motion:reduce){#contact-details *{transition:none!important}}
/* rihkfaw:inspection-form */
/* rihkfaw:inspection-form */
#inspection-form{background:var(--rihkfaw-bg);color:var(--rihkfaw-text);padding:clamp(3rem,8vw,6rem) clamp(1rem,4vw,3rem);font-family:Charter,'Sitka Text',Cambria,Georgia,serif}
.inspection-inner{max-width:72rem;margin:0 auto}
.inspection-label,.field label{margin:0;font-family:ui-monospace,Menlo,monospace;font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;color:var(--rihkfaw-slate)}
.inspection-rule{height:1px;background:var(--rihkfaw-border);margin:.75rem 0 1.75rem}
.inspection-head h2{margin:0 0 .5rem;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.1;letter-spacing:-.015em;text-wrap:balance}
.inspection-head p{margin:0 0 2rem;max-width:52ch;color:var(--rihkfaw-slate)}
.inspection-grid{display:grid;grid-template-columns:1fr;gap:2.5rem}
.form-grid{display:grid;grid-template-columns:1fr;gap:1.1rem}
.field{display:flex;flex-direction:column;gap:.4rem}
.field input,.field select,.field textarea{width:100%;min-height:44px;padding:.7rem .8rem;font:inherit;color:var(--rihkfaw-text);background:var(--rihkfaw-surface);border:1px solid var(--rihkfaw-border);border-radius:1px}
.field textarea{min-height:7rem}
.field ::placeholder{color:var(--rihkfaw-slate)}
#inspection-form :focus-visible{outline:2px solid var(--rihkfaw-accent);outline-offset:2px}
.consent{display:flex;gap:.6rem;align-items:flex-start}
.consent input{flex:0 0 auto;width:1.15rem;height:1.15rem;accent-color:var(--rihkfaw-primary)}
.consent label{font-size:.8125rem;line-height:1.55}
.submit{justify-self:start;min-height:44px;padding:.9rem 1.6rem;font:inherit;font-size:.9375rem;letter-spacing:.06em;text-transform:uppercase;color:var(--rihkfaw-bg);background:var(--rihkfaw-primary);border:1px solid var(--rihkfaw-primary);border-radius:1px;cursor:pointer}
.submit:hover{background:var(--rihkfaw-accent);border-color:var(--rihkfaw-accent)}
.inspection-aside{border-top:1px solid var(--rihkfaw-border);padding-top:1.25rem}
.inspection-aside h3{margin:0 0 .5rem;font-size:1.125rem}
.inspection-aside p{margin:0 0 1.25rem;font-size:.9375rem;color:var(--rihkfaw-slate)}
.intake-list{list-style:none;margin:0;padding:0;font-variant-numeric:tabular-nums;font-size:.9375rem}
.intake-list li{display:flex;gap:1rem;justify-content:space-between;padding:.85rem 0;border-bottom:1px solid var(--rihkfaw-border)}
.intake-list .value{color:var(--rihkfaw-accent)}
#inspection-form ::selection{background:var(--rihkfaw-primary);color:var(--rihkfaw-bg)}
@media(min-width:640px){.form-grid{grid-template-columns:1fr 1fr}.field.wide,.consent,.submit{grid-column:1/-1}}
@media(min-width:1024px){.inspection-grid{grid-template-columns:7fr 5fr}.inspection-aside{border-top:0;border-left:1px solid var(--rihkfaw-border);padding:0 0 0 2rem}}
@media(prefers-reduced-motion:reduce){#inspection-form *{transition:none;animation:none}}
:root {
  --rihkfaw-primary: #E2703A;
  --rihkfaw-secondary: #6E767B;
  --rihkfaw-accent: #F08A52;
  --rihkfaw-ink: #F2F4F5;
  --rihkfaw-slate: #9AA1A6;
  --rihkfaw-mist: #20262A;
  --rihkfaw-border: #333A3F;
  --rihkfaw-surface: #16191C;
  --rihkfaw-bg: #0E1012;
  --rihkfaw-text: #E7EAEC;
  --rihkfaw-font: Charter, 'Sitka Text', Cambria, Georgia, serif;
}

body {
  margin: 0;
  background: var(--rihkfaw-bg);
  color: var(--rihkfaw-text);
  font-family: var(--rihkfaw-font);
  line-height: 1.6;
}

.policy-page {
  max-width: 800px;
  margin: 0 auto;
  padding: 2rem 1.5rem;
}

.policy-header {
  margin-bottom: 2rem;
  border-bottom: 1px solid var(--rihkfaw-border);
  padding-bottom: 1rem;
}

.policy-header h1 {
  font-size: 2rem;
  color: var(--rihkfaw-ink);
  margin: 0 0 0.5rem;
}

.policy-intro {
  color: var(--rihkfaw-slate);
  font-size: 1.1rem;
}

.policy-section {
  margin-bottom: 2rem;
}

.policy-section h2 {
  font-size: 1.4rem;
  color: var(--rihkfaw-accent);
  margin: 0 0 0.75rem;
  border-left: 3px solid var(--rihkfaw-primary);
  padding-left: 0.75rem;
}

.policy-section p,
.policy-section ul,
.policy-section ol {
  margin: 0 0 1rem;
}

.policy-section ul,
.policy-section ol {
  padding-left: 1.5rem;
}

.policy-section li {
  margin-bottom: 0.5rem;
}

.policy-contact {
  background: var(--rihkfaw-surface);
  padding: 1.25rem;
  border: 1px solid var(--rihkfaw-border);
  border-radius: 2px;
  font-style: normal;
}

.policy-contact a {
  color: var(--rihkfaw-primary);
  text-decoration: none;
}

.policy-contact a:hover {
  text-decoration: underline;
}

.policy-footer {
  margin-top: 2rem;
  padding-top: 1rem;
  border-top: 1px solid var(--rihkfaw-border);
  font-size: 0.9rem;
  color: var(--rihkfaw-slate);
}

.policy-footer p {
  margin: 0.25rem 0;
}
body {
  background: var(--rihkfaw-bg);
  color: var(--rihkfaw-text);
  font-family: var(--rihkfaw-font);
  margin: 0;
  padding: 0;
  line-height: 1.6;
}

.policy-page {
  max-width: 800px;
  margin: 0 auto;
  padding: 2rem 1rem;
}

.policy-header {
  border-bottom: 1px solid var(--rihkfaw-border);
  margin-bottom: 2rem;
  padding-bottom: 1rem;
}

.policy-header h1 {
  font-family: var(--rihkfaw-font-display);
  font-size: 2rem;
  margin: 0 0 0.5rem;
  color: var(--rihkfaw-ink);
}

.policy-meta {
  color: var(--rihkfaw-slate);
  font-size: 0.9rem;
  margin: 0;
}

.policy-section {
  margin-bottom: 2rem;
}

.policy-section h2 {
  font-family: var(--rihkfaw-font-display);
  font-size: 1.4rem;
  color: var(--rihkfaw-primary);
  margin-bottom: 0.75rem;
}

.policy-section p {
  margin: 0 0 1rem;
}

.policy-contact {
  background: var(--rihkfaw-surface);
  border: 1px solid var(--rihkfaw-border);
  border-radius: var(--radius-lg);
  padding: 1.5rem;
}

.contact-form {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 1rem;
}

.contact-form label {
  color: var(--rihkfaw-slate);
  font-size: 0.9rem;
}

.contact-form input,
.contact-form textarea {
  background: var(--rihkfaw-mist);
  border: 1px solid var(--rihkfaw-border);
  border-radius: var(--radius-sm);
  color: var(--rihkfaw-text);
  font-family: var(--rihkfaw-font);
  padding: 0.6rem;
  font-size: 1rem;
}

.contact-form input:focus,
.contact-form textarea:focus {
  outline: 1px solid var(--rihkfaw-accent);
  border-color: var(--rihkfaw-accent);
}

.contact-form button {
  background: var(--rihkfaw-primary);
  border: none;
  border-radius: var(--radius-sm);
  color: var(--rihkfaw-ink);
  cursor: pointer;
  font-family: var(--rihkfaw-font);
  font-size: 1rem;
  padding: 0.75rem 1.5rem;
  transition: background 0.2s;
  align-self: flex-start;
}

.contact-form button:hover {
  background: var(--rihkfaw-accent);
}

.policy-footer {
  color: var(--rihkfaw-slate);
  font-size: 0.8rem;
  margin-top: 1.5rem;
  border-top: 1px solid var(--rihkfaw-border);
  padding-top: 1rem;
}
.policy-page { max-width: 800px; margin: 0 auto; padding: 2rem 1rem; background: var(--rihkfaw-bg); color: var(--rihkfaw-text); font-family: var(--rihkfaw-font); line-height: 1.6; }
.policy-header { margin-bottom: 2rem; border-bottom: 1px solid var(--rihkfaw-border); padding-bottom: 1rem; }
.policy-header h1 { font-size: 2rem; margin: 0; color: var(--rihkfaw-ink); font-family: var(--rihkfaw-font-display); }
.policy-section { margin-bottom: 2rem; }
.policy-section h2 { font-size: 1.25rem; color: var(--rihkfaw-primary); margin: 0 0 0.75rem; font-family: var(--rihkfaw-font-display); }
.policy-section p { margin: 0 0 1rem; }
.policy-section a { color: var(--rihkfaw-accent); text-decoration: none; }
.policy-section a:hover { text-decoration: underline; }
.thanks-page{max-width:760px;margin:0 auto;padding:48px 20px 64px;background:var(--rihkfaw-bg);color:var(--rihkfaw-text);font-family:var(--rihkfaw-font);line-height:1.65}
.thanks-hero{border-bottom:1px solid var(--rihkfaw-border);padding-bottom:24px;margin-bottom:32px}
.thanks-eyebrow{margin:0 0 12px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--rihkfaw-accent)}
.thanks-page h1{margin:0 0 12px;font-family:var(--rihkfaw-font-display);font-size:30px;font-weight:600;line-height:1.25;color:var(--rihkfaw-ink)}
.thanks-lede{margin:0;font-size:17px;color:var(--rihkfaw-slate)}
.thanks-block{margin-bottom:32px}
.thanks-block h2{margin:0 0 12px;font-size:19px;font-weight:600;color:var(--rihkfaw-ink)}
.thanks-block p{margin:0 0 12px;font-size:15px}
.thanks-steps{margin:0;padding-left:20px}
.thanks-steps li{margin-bottom:8px;font-size:15px}
.thanks-footer{margin-top:40px;padding:24px 20px;border-top:1px solid var(--rihkfaw-border);background:var(--rihkfaw-surface);border-radius:2px}
.thanks-footer h2{margin:0 0 12px;font-size:17px;font-weight:600;color:var(--rihkfaw-ink)}
.thanks-address{margin:0 0 14px;font-style:normal;font-size:15px;line-height:1.85;color:var(--rihkfaw-text)}
.thanks-address a{color:var(--rihkfaw-accent);text-decoration:none}
.thanks-address a:hover,.thanks-address a:focus{text-decoration:underline}
.thanks-fineprint{margin:0;font-size:13px;color:var(--rihkfaw-slate)}
@media (max-width:600px){.thanks-page{padding:32px 16px 48px}.thanks-page h1{font-size:24px}.thanks-footer{padding:20px 16px}}
section[data-rihkfaw-cwb]:not([data-rihkfaw-cwb='header']):not([data-rihkfaw-cwb='footer']) { position: relative; }
section[data-rihkfaw-cwb]:not([data-rihkfaw-cwb='header']):not([data-rihkfaw-cwb='footer']) { border-top: 1px solid var(--rihkfaw-border); }
section[data-rihkfaw-cwb] [class*='grid'] > * { border-radius: 0 !important; border-color: var(--rihkfaw-border); }
section[data-rihkfaw-cwb] h2 { letter-spacing: -0.025em; }
:root {
  --rihkfaw-c-content-width: 72rem;
  --rihkfaw-c-gutter: clamp(1rem, 4vw, 3rem);
  --rihkfaw-c-measure: 65ch;
  --rihkfaw-c-heading-display: clamp(2.5rem, 6vw, 5.5rem);
}
[data-rihkfaw-dr] { scroll-margin-top: 1.5rem; }
main > section, main [data-rihkfaw-cwb] { padding-inline: var(--rihkfaw-c-gutter); }
[data-rihkfaw-dr*='article'], [data-rihkfaw-dr*='review'] { max-width: var(--rihkfaw-c-measure); }
h1 { font-size: var(--rihkfaw-c-heading-display); }
@media (max-width: 768px) { [data-rihkfaw-dr] { min-width: 0; } }