
html,body{overflow-x:clip}
.rd-br-m{display:none}
@media(max-width:640px){.rd-br-m{display:inline}}
.rd-root{font-family:var(--rd-font-body,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);color:var(--rd-text,#111827);background:var(--rd-background,#ffffff);line-height:var(--rd-lh-body,1.6);-webkit-font-smoothing:antialiased}
.rd-root h1,.rd-root h2,.rd-root h3,.rd-root h4{font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);line-height:var(--rd-lh-heading,1.15);letter-spacing:var(--rd-ls-heading,0em);margin:0}
.rd-root p{margin:0}
/* Paragraph rhythm lives here, not as an inline style, so a trailing paragraph
   can drop it. A Text block as the last child of a section was adding 14px below
   the content, which made every section look bottom-heavy against its own equal
   padding. Both selectors need the .rd-root prefix to outrank the reset above. */
.rd-root .rd-text{margin-bottom:14px}
.rd-root .rd-text:last-child{margin-bottom:0}
.rd-container{max-width:var(--rd-max-width,1120px);margin-inline:auto;padding-inline:24px}
.rd-container--narrow{max-width:760px}
.rd-section{padding-block:var(--rd-section-pad,64px)}
.rd-section--compact{padding-block:calc(var(--rd-section-pad,64px)*.5)}
.rd-section--spacious{padding-block:calc(var(--rd-section-pad,64px)*1.75)}
.rd-section--surface{background:var(--rd-surface,#f4f5f7)}
.rd-section--primary{background:var(--rd-primary,#1d4ed8);color:var(--rd-primary-contrast,#ffffff)}
.rd-section--dark{background:#0f172a;color:#f8fafc}
/* Waves: a tiled sine line drawn as a mask over currentColor, so the pattern
   picks up the section text colour instead of a hardcoded stroke. Light lines
   on a dark tenant, dark lines on a light one, no per-site override needed.
   Tile is one full period (80x14) so it repeats seamlessly on both axes. */
/* Split section: narrow intro rail beside a wider content area. Pairs with
   .rd-checkcards for guarantee/feature lists (intro left, item cards right). */
.rd-split{display:grid;gap:48px;grid-template-columns:.85fr 1.15fr;align-items:start}
@media(max-width:900px){.rd-split{grid-template-columns:1fr;gap:32px}}
.rd-checkcards{display:grid;gap:16px;grid-template-columns:1fr 1fr;list-style:none;margin:0;padding:0}
@media(max-width:640px){.rd-checkcards{grid-template-columns:1fr}}
.rd-checkcards li{background:var(--rd-surface,#f4f5f7);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:24px;transition:border-color .15s}
.rd-checkcards li:hover{border-color:color-mix(in srgb,var(--rd-accent,#f59e0b) 50%,transparent)}
.rd-checkcards li:last-child:nth-child(odd){grid-column:1/-1}
.rd-checkcards .rd-check{display:grid;place-items:center;width:24px;height:24px;flex-shrink:0;margin-top:2px;border-radius:999px;background:var(--rd-accent,#f59e0b);color:#111;font-size:12px;font-weight:700}
.rd-checkcards .rd-checkrow{display:flex;align-items:flex-start;gap:12px}
.rd-checkcards h3{font-size:1.1rem;margin:0 0 6px}
.rd-checkcards p{color:var(--rd-muted,#6b7280);font-size:.9rem;line-height:1.6;margin:0}
/* Section header row: title block left, short aside bottom-aligned right. */
.rd-sechead{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px}
.rd-sechead__aside{max-width:24rem;color:var(--rd-muted,#6b7280);line-height:1.7;margin:0}
/* Numbered-circle step rail: on desktop the 48px circles sit on a gradient
   hairline; each circle carries the page background so the line reads as
   threading behind them. Circle top offset and line top must match. */
.rd-steps{position:relative;margin-top:56px}
.rd-steps__line{display:none}
.rd-steps ol{list-style:none;margin:0;padding:0;display:grid;gap:36px}
.rd-steps__num{position:relative;z-index:1;display:grid;place-items:center;width:48px;height:48px;border-radius:999px;border:1px solid var(--rd-border,#e5e7eb);background:var(--rd-background,#ffffff);color:var(--rd-muted,#6b7280);font-size:14px;transition:border-color .15s,color .15s}
.rd-steps li:hover .rd-steps__num{border-color:var(--rd-accent,#f59e0b);color:var(--rd-accent,#f59e0b)}
.rd-steps h3{font-size:1.25rem;margin:22px 0 8px}
.rd-steps li p{color:var(--rd-muted,#6b7280);font-size:.875rem;line-height:1.65;margin:0}
@media(min-width:1024px){.rd-steps ol{grid-template-columns:repeat(var(--rd-steps-n,5),minmax(0,1fr));gap:40px}.rd-steps__line{display:block;position:absolute;left:24px;right:24px;top:24px;height:1px;background:linear-gradient(90deg,var(--rd-primary,#1d4ed8),var(--rd-c-cyan,#00FFFF),var(--rd-accent,#f59e0b));opacity:.5}}
/* Pair cards: two chip labels joined by an accent arrow over a one-line claim. */
.rd-vstack{display:grid;gap:16px}
.rd-paircard{background:var(--rd-surface,#f4f5f7);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:24px;transition:border-color .15s}
.rd-paircard:hover{border-color:color-mix(in srgb,var(--rd-accent,#f59e0b) 50%,transparent)}
.rd-paircard__row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.rd-paircard__row .rd-arrow{color:var(--rd-accent,#f59e0b);font-size:15px;line-height:1}
.rd-paircard p{color:var(--rd-muted,#6b7280);line-height:1.6;margin:0}
.rd-chip{display:inline-block;font-size:12px;letter-spacing:.02em;padding:4px 12px;border-radius:999px;border:1px solid var(--rd-border,#e5e7eb);color:var(--rd-muted,#6b7280)}
.rd-chip--accent{color:var(--rd-accent,#f59e0b);border-color:color-mix(in srgb,var(--rd-accent,#f59e0b) 45%,transparent);background:color-mix(in srgb,var(--rd-accent,#f59e0b) 8%,transparent)}
/* Solid primary closing card for the end of a card stack. */
.rd-card--electric{background:linear-gradient(135deg,var(--rd-primary,#1d4ed8),color-mix(in srgb,var(--rd-primary,#1d4ed8) 55%,#8A94FF));border-radius:20px;padding:24px;color:#fff}
.rd-card--electric h3{font-size:1.25rem;margin:0 0 8px;color:#fff}
.rd-card--electric p{color:rgba(255,255,255,.85);line-height:1.6;margin:0}
/* Hairline stat tiles: 1px gap over a border-colour ground reads as ruled cells. */
.rd-tiles{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rd-border,#e5e7eb);border:1px solid var(--rd-border,#e5e7eb);border-radius:20px;overflow:hidden}
.rd-tiles>div{background:var(--rd-surface,#f4f5f7);padding:24px}
.rd-tiles strong{display:block;font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-size:1.9rem;font-weight:700;line-height:1.15}
.rd-tiles span{display:block;margin-top:8px;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--rd-muted,#6b7280);line-height:1.6}
@media(max-width:640px){.rd-tiles{grid-template-columns:1fr}}
.rd-split--even{grid-template-columns:1fr 1fr}
@media(max-width:900px){.rd-split--even{grid-template-columns:1fr}}
/* Glow hero: dot grid (currentColor, so it adapts to the section text colour)
   under a breathing radial glow that bleeds down from above the top edge. */
.rd-section--glow{position:relative;overflow:hidden;isolation:isolate}
.rd-section--glow::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(currentColor 1px,transparent 1px);background-size:26px 26px;opacity:.05}
.rd-section--glow::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(120% 90% at 50% -10%,color-mix(in srgb,var(--rd-primary,#1d4ed8) 28%,transparent),transparent 70%);animation:rdPulseGlow 3.6s ease-in-out infinite}
@keyframes rdPulseGlow{0%,100%{opacity:.35}50%{opacity:.9}}
@media(prefers-reduced-motion:reduce){.rd-section--glow::after{animation:none;opacity:.5}}
.rd-text-gradient{background:linear-gradient(100deg,var(--rd-c-cyan,#00FFFF),var(--rd-primary,#1d4ed8) 90%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
/* Door cards: service grid with an oversized ghost number bleeding off the top
   right corner; the whole card is the hover group (border, ghost, and link). */
.rd-doorcards{display:grid;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1023px){.rd-doorcards{grid-template-columns:1fr 1fr}}
@media(max-width:639px){.rd-doorcards{grid-template-columns:1fr}}
.rd-doorcard{position:relative;display:flex;flex-direction:column;overflow:hidden;background:var(--rd-surface,#f4f5f7);border:1px solid var(--rd-border,#e5e7eb);border-radius:20px;padding:32px;transition:border-color .15s}
.rd-doorcard:hover{border-color:color-mix(in srgb,var(--rd-accent,#f59e0b) 50%,transparent)}
.rd-doorcard__ghost{position:absolute;top:-32px;right:-8px;font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-size:96px;font-weight:800;line-height:1;color:color-mix(in srgb,var(--rd-text,#111827) 4%,transparent);transition:color .15s;pointer-events:none}
.rd-doorcard:hover .rd-doorcard__ghost{color:color-mix(in srgb,var(--rd-accent,#f59e0b) 10%,transparent)}
.rd-doorcard__eb{font-size:11px;letter-spacing:.15em;color:var(--rd-muted,#6b7280)}
.rd-doorcard__eb b{font-weight:400;color:var(--rd-accent,#f59e0b)}
.rd-doorcard h3{font-size:1.5rem;margin:16px 0 0}
.rd-doorcard__desc{color:var(--rd-muted,#6b7280);line-height:1.6;margin:12px 0 0}
.rd-doorcard ul{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:8px}
.rd-doorcard ul li{display:flex;align-items:baseline;gap:8px;font-size:.875rem;color:var(--rd-muted,#6b7280)}
.rd-doorcard ul li::before{content:'\25B8';color:var(--rd-accent,#f59e0b);font-size:.75rem}
.rd-doorcard__link{margin-top:auto;padding-top:32px;font-size:.875rem;font-weight:600;color:var(--rd-accent,#f59e0b);text-decoration:none;align-self:flex-start;transition:transform .15s}
.rd-doorcard:hover .rd-doorcard__link{transform:translateX(4px)}
/* Ladder rows: number | name | description in one hoverable rail per row. */
.rd-ladder{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.rd-ladder>li{display:grid;gap:24px;background:var(--rd-surface,#f4f5f7);border:1px solid var(--rd-border,#e5e7eb);border-radius:20px;padding:32px;transition:border-color .15s}
@media(min-width:1024px){.rd-ladder>li{grid-template-columns:auto .9fr 1.6fr;align-items:center}}
.rd-ladder>li:hover{border-color:color-mix(in srgb,var(--rd-accent,#f59e0b) 50%,transparent)}
.rd-ladder__ghost{font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-size:48px;font-weight:800;line-height:1;color:color-mix(in srgb,var(--rd-text,#111827) 10%,transparent);transition:color .15s}
.rd-ladder>li:hover .rd-ladder__ghost{color:color-mix(in srgb,var(--rd-accent,#f59e0b) 25%,transparent)}
.rd-ladder__eb{font-size:11px;letter-spacing:.15em;color:var(--rd-accent,#f59e0b)}
.rd-ladder h3{font-size:1.5rem;margin:8px 0 0}
.rd-ladder__desc{color:var(--rd-muted,#6b7280);line-height:1.6;margin:0}
.rd-ladder__link{display:inline-block;margin-top:16px;font-size:.875rem;font-weight:600;color:var(--rd-accent,#f59e0b);text-decoration:none}
.rd-section--waves{position:relative;overflow:hidden;isolation:isolate}
.rd-section--waves::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:currentColor;opacity:.06;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='14'%3E%3Cpath d='M0 7 Q 20 1 40 7 T 80 7' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E"),linear-gradient(to bottom,transparent 0,#000 18%,#000 82%,transparent 100%);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='14'%3E%3Cpath d='M0 7 Q 20 1 40 7 T 80 7' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E"),linear-gradient(to bottom,transparent 0,#000 18%,#000 82%,transparent 100%);-webkit-mask-repeat:repeat,no-repeat;mask-repeat:repeat,no-repeat;-webkit-mask-size:80px 14px,100% 100%;mask-size:80px 14px,100% 100%;-webkit-mask-composite:source-in;mask-composite:intersect}
.rd-align-center{text-align:center}
.rd-columns{display:grid;gap:var(--rd-gap,32px);grid-template-columns:repeat(var(--rd-cols,2),minmax(0,1fr))}
.rd-cards{display:grid;gap:calc(var(--rd-gap,32px)*.75);grid-template-columns:repeat(var(--rd-cols,3),minmax(0,1fr))}
/* 767, not 768: an iPad in portrait is exactly 768 and should get the tablet
   layout, not the phone one. The file previously used both values - .rd-pillars
   had a rule at each - so grids stacked on tablets that other blocks treated as
   desktop. */
@media(max-width:767px){.rd-columns,.rd-cards{grid-template-columns:1fr}}
/* Grid items stretch by default, which makes position:sticky a no-op — the
   item is already as tall as the row. align-self:start is what lets it pin. */
.rd-columns--sticky-first>:first-child{position:sticky;top:var(--rd-sticky-top,96px);align-self:start}
@media(max-width:767px){.rd-columns--sticky-first>:first-child{position:static}}
@media(prefers-reduced-motion:reduce){.rd-columns--sticky-first>:first-child{position:static}}
.rd-btn{display:inline-block;padding:12px 22px;border-radius:var(--rd-radius,10px);font-weight:600;text-decoration:none;border:2px solid transparent;font-size:1rem;line-height:1.2}
.rd-btn--primary{background:var(--rd-primary,#1d4ed8);color:var(--rd-primary-contrast,#ffffff)}
.rd-btn--accent{background:var(--rd-accent,#f59e0b);color:#111}
.rd-btn--outline{border-color:currentColor;color:inherit}
.rd-btn-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.rd-btn-row--center{justify-content:center}
.rd-eyebrow{color:var(--rd-accent,#f59e0b);font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.875rem}
.rd-hero{padding-block:96px}
.rd-hero__title{font-size:clamp(2.2rem,5vw,3.4rem);margin:14px 0 18px}
.rd-hero__sub{font-size:1.25rem;opacity:.85;max-width:640px}
.rd-align-center .rd-hero__sub{margin-inline:auto}
.rd-heading--xl{font-size:clamp(2rem,4vw,2.8rem)}
.rd-heading--lg{font-size:clamp(1.6rem,3vw,2.1rem)}
.rd-heading--md{font-size:1.35rem}
.rd-text{white-space:pre-line;max-width:70ch}
.rd-text--muted{color:var(--rd-muted,#6b7280)}
.rd-section--primary .rd-text--muted,.rd-section--dark .rd-text--muted{color:inherit;opacity:.75}
.rd-text--lg{font-size:1.2rem}
.rd-align-center .rd-text,.rd-text.rd-align-center{margin-inline:auto}
.rd-card{background:var(--rd-surface,#f4f5f7);border:1px solid var(--rd-border,#e5e7eb);border-radius:var(--rd-radius,10px);padding:28px}
.rd-section--surface .rd-card{background:var(--rd-background,#ffffff)}
.rd-card h3{margin-bottom:10px;font-size:1.15rem}
.rd-card__icon{display:block;margin-bottom:12px}
.rd-card__icon svg{width:24px;height:24px;fill:var(--rd-text,#111827);display:block}
.rd-card p{color:var(--rd-muted,#6b7280)}
.rd-card a{color:var(--rd-primary,#1d4ed8);font-weight:600;text-decoration:none;display:inline-block;margin-top:14px}
.rd-testimonial{border-left:4px solid var(--rd-accent,#f59e0b);padding:8px 0 8px 28px;margin:0}
.rd-testimonial p{font-size:1.3rem;font-style:italic;max-width:60ch}
.rd-testimonial footer{margin-top:16px;color:var(--rd-muted,#6b7280);font-weight:600}
.rd-faq details{border:1px solid var(--rd-border,#e5e7eb);border-radius:var(--rd-radius,10px);padding:16px 20px;margin-bottom:12px;background:var(--rd-background,#ffffff)}
.rd-faq summary{font-weight:600;cursor:pointer}
.rd-faq details p{margin-top:10px;color:var(--rd-muted,#6b7280)}
.rd-img{max-width:100%;height:auto;display:block}
.rd-img--rounded{border-radius:var(--rd-radius,10px)}
.rd-video{aspect-ratio:16/9;width:100%}
.rd-video iframe{width:100%;height:100%;border:0;border-radius:var(--rd-radius,10px)}
.rd-divider{border:0;border-top:1px solid var(--rd-border,#e5e7eb);margin-block:8px}
.rd-shell--bg-surface{background:var(--rd-surface,#f4f5f7)}
.rd-shell--bg-primary{background:var(--rd-primary,#1d4ed8);color:var(--rd-primary-contrast,#ffffff)}
.rd-shell--bg-dark{background:#0f172a;color:#f8fafc}
.rd-shell--corners-rounded{border-radius:var(--rd-radius,10px);overflow:hidden}
.rd-shell--corners-xl{border-radius:24px;overflow:hidden}
.rd-shell--shadow-sm{box-shadow:0 2px 10px rgba(0,0,0,.09)}
.rd-shell--shadow-lg{box-shadow:0 12px 40px rgba(0,0,0,.16)}
.rd-shell--border{border:1px solid var(--rd-border,#e5e7eb)}
.rd-anim-fade{animation:rdFadeIn .6s ease-out both}
@keyframes rdFadeIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){.rd-anim-fade{animation:none}}
.rd-root :focus-visible{outline:3px solid var(--rd-accent,#f59e0b);outline-offset:2px;border-radius:2px}
.rd-faq summary:focus-visible{outline:3px solid var(--rd-accent,#f59e0b);outline-offset:2px}
.rd-faq details[open]>*:not(summary){animation:rdFaqReveal .22s ease}
@keyframes rdFaqReveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.rd-faq details[open]>*:not(summary){animation:none}}
.rd-btngrid{display:grid;gap:calc(var(--rd-gap,32px)*.5);grid-template-columns:repeat(var(--rd-cols,3),minmax(0,1fr))}
.rd-btngrid .rd-btn{text-align:center}
.rd-masonry{columns:var(--rd-cols,3);column-gap:var(--rd-gap,32px)}
.rd-masonry>*{break-inside:avoid;margin-bottom:var(--rd-gap,32px)}
.rd-navx{display:flex;align-items:center;gap:24px;margin-left:auto}
.rd-nav__megabtn{background:none;border:none;cursor:pointer;color:var(--rd-text,#111827);font-weight:600;font-size:1rem;font-family:inherit;display:inline-flex;align-items:center;gap:5px;padding:0;text-decoration:none}
.rd-nav__caret{display:inline-flex;align-items:center;transition:transform .2s}
.rd-nav__caret svg{width:13px;height:13px;fill:currentColor;display:block}
.rd-nav__caret--up{transform:rotate(180deg)}
.rd-nav--frosted .rd-nav__megabtn{font-weight:500;font-size:.9rem;padding:8px 16px;border-radius:999px;transition:background .15s,color .15s;color:var(--rd-text,#111827)}
.rd-nav--frosted .rd-nav__megabtn:hover{background:rgba(255,255,255,.08)}
.rd-mega{position:absolute;top:calc(100% + 10px);left:50%;width:min(var(--rd-max-width,1120px),calc(100vw - 48px));background:color-mix(in srgb,var(--rd-background,#0E0C19) 96%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.08);border-radius:14px;opacity:0;transform:translateX(-50%) translateY(-8px);pointer-events:none;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:120}
.rd-mega--open{opacity:1;transform:translateX(-50%);pointer-events:auto;visibility:visible}
.rd-mega::before{content:'';position:absolute;top:-38px;left:0;right:0;height:38px}
.rd-mega__inner{display:grid;grid-template-columns:250px 1fr;gap:44px;padding:30px 24px;max-width:var(--rd-max-width,1120px);margin:0 auto}
.rd-mega__tabs{display:flex;flex-direction:column;gap:2px;border-right:1px solid rgba(255,255,255,.08);padding-right:22px}
.rd-mega__tab{text-align:left;background:none;border:none;color:var(--rd-muted,#6b7280);font-family:inherit;font-size:.9rem;font-weight:500;padding:8px 16px;border-radius:999px;cursor:pointer;transition:background .12s,color .12s}
.rd-mega__tab--on{color:var(--rd-accent,#f59e0b);background:rgba(255,255,255,.05)}
.rd-mega__content{animation:rdFadeIn .18s ease both;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.rd-mega__hub{font-family:var(--rd-font-heading,sans-serif);font-weight:700;font-size:1.15rem;color:var(--rd-text,#111827);text-decoration:none}
.rd-mega__hub:hover{color:var(--rd-accent,#f59e0b)}
.rd-mega__desc{color:var(--rd-muted,#6b7280);font-size:.9rem;margin:0}
.rd-mega__links{display:grid;grid-template-columns:1fr 1fr;gap:6px 32px;margin-top:8px;width:100%}
/* Same treatment as .rd-dd__panel a, so Services behaves like About and
   Locations on hover. The pill needs the dropdown's padding and radius to
   render, which is why the old border-bottom separators are gone. */
/* 999px, not 8px, to match what the dropdown items ACTUALLY render as. Their
   own rule says 8px, but .rd-nav--frosted .rd-nav__links a also matches them
   (they sit inside that ul) and wins on specificity, so on screen they are
   pills at 8px 16px. The mega panel renders outside that ul and never
   inherited it, which is why it looked different. Values mirrored here
   deliberately rather than inherited, since the panel is not a descendant. */
.rd-mega__links a{display:block;color:var(--rd-text,#111827);text-decoration:none;font-size:.92rem;padding:8px 16px;border-radius:999px;font-weight:500;transition:background .12s,color .12s}
.rd-mega__links a:hover{background:rgba(255,255,255,.07);color:var(--rd-accent,#f59e0b)}
.rd-mega__all{margin-top:10px;color:var(--rd-accent,#f59e0b);font-size:.85rem;font-weight:600;text-decoration:none}
.rd-mmenu{position:fixed;inset:0;z-index:400;background:var(--rd-background,#fff);display:flex;flex-direction:column;padding:14px 24px 36px;overflow-y:auto;animation:rdMenuIn .25s ease}
.rd-mmenu__bar{display:flex;align-items:center;justify-content:space-between;min-height:48px;margin-bottom:26px}
.rd-mmenu__close{background:none;border:1px solid var(--rd-border,#e5e7eb);border-radius:50%;width:38px;height:38px;color:var(--rd-text,#111827);font-size:.95rem;cursor:pointer;display:flex;align-items:center;justify-content:center}
.rd-mmenu__nav{display:flex;flex-direction:column;gap:2px}
.rd-mmenu__link{font-size:1.35rem;font-weight:600;color:var(--rd-text,#111827);text-decoration:none;padding:8px 0;font-family:var(--rd-font-heading,sans-serif);display:block}
.rd-mmenu__group{display:flex;flex-direction:column;gap:0;margin:0 0 10px;padding-left:16px;border-left:1px solid var(--rd-border,#e5e7eb)}
.rd-mmenu__row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rd-mmenu__expand{background:none;border:1px solid var(--rd-border,#e5e7eb);border-radius:50%;width:32px;height:32px;color:var(--rd-text,#111827);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;line-height:1;transition:transform .2s;flex-shrink:0}
.rd-mmenu__expand--open{transform:rotate(180deg)}
.rd-mmenu__sub{text-decoration:none;padding:7px 0;display:block}
.rd-mmenu__sub b{display:block;color:var(--rd-text,#111827);font-size:1rem;font-weight:600}
.rd-mmenu__sub small{display:block;color:var(--rd-muted,#6b7280);font-size:.8rem;margin-top:1px}
.rd-mmenu>.rd-mmenu__item:last-child{margin-top:auto;padding-top:26px}
.rd-mmenu__cta{display:block;text-align:center;padding:14px 24px;font-size:1rem}
.rd-mmenu__item{opacity:0;transform:translateY(16px);animation:rdMenuItem .45s cubic-bezier(.22,.61,.36,1) forwards}
@keyframes rdMenuIn{from{opacity:0}to{opacity:1}}
@keyframes rdMenuItem{to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.rd-mmenu,.rd-mmenu__item{animation:none;opacity:1;transform:none}}
.rd-nav{background:var(--rd-background,#ffffff);border-bottom:1px solid var(--rd-border,#e5e7eb)}
.rd-nav__inner{display:flex;align-items:center;gap:28px;padding-block:14px}
.rd-nav__brand{font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-weight:800;font-size:1.25rem;color:var(--rd-text,#111827);text-decoration:none;display:inline-flex;align-items:center}
.rd-nav__logo{display:block;width:auto;max-width:100%}
.rd-nav__desktop{margin-left:auto}
.rd-nav__links{display:flex;gap:24px;list-style:none;margin:0;padding:0;align-items:center}
.rd-nav__links li{display:flex;align-items:center}
.rd-nav__links a{display:inline-flex;align-items:center;gap:5px}
.rd-nav__links a{color:var(--rd-text,#111827);text-decoration:none;font-weight:600}
.rd-nav__links a:hover{color:var(--rd-primary,#1d4ed8)}
.rd-nav__cta{padding:9px 18px}
.rd-nav__mobile{display:none;margin-left:auto;position:relative}
.rd-nav__phone{display:flex;align-items:center;color:var(--rd-text,#111827)}
.rd-nav__phone svg{width:24px;height:24px;fill:currentColor;display:block}
.rd-nav__burger{cursor:pointer;padding:0;border:none;background:none;display:flex;align-items:center;color:var(--rd-text,#111827)}
.rd-nav__burger svg{width:24px;height:24px;fill:currentColor;display:block}
.rd-nav__mobile[open] .rd-nav__burger{background:var(--rd-surface,#f4f5f7)}
.rd-nav__mobile nav{position:absolute;right:0;top:calc(100% + 8px);background:var(--rd-background,#ffffff);border:1px solid var(--rd-border,#e5e7eb);border-radius:var(--rd-radius,10px);box-shadow:0 12px 40px rgba(0,0,0,.14);min-width:220px;z-index:50}
.rd-nav__mobile li a{display:block;padding:10px 14px;color:var(--rd-text,#111827);text-decoration:none;font-weight:600;border-radius:6px}
.rd-nav__mobile li a:hover{background:var(--rd-surface,#f4f5f7)}
.rd-btn--light{background:#fff;color:#0d0d0d}
.rd-btn--light:hover{background:#e8e8e8}
.rd-nav--frosted{position:fixed;top:0;left:0;right:0;z-index:100;background:transparent;border-bottom:1px solid transparent;transition:transform .3s ease,background .25s ease,border-color .25s ease}
.rd-nav--frosted.rd-nav--scrolled{background:var(--rd-background,#ffffff);border-bottom-color:rgba(255,255,255,.08)}
.rd-nav--hidden{transform:translateY(-100%)}
.rd-nav--frosted .rd-nav__inner{padding-block:12px}
.rd-nav--frosted .rd-nav__links{gap:4px}
.rd-nav--frosted .rd-nav__links a{font-weight:500;font-size:.9rem;padding:8px 16px;border-radius:999px;transition:background .15s,color .15s}
.rd-nav--frosted .rd-nav__links a:hover{background:rgba(255,255,255,.08);color:var(--rd-text,#111827)}
.rd-nav--frosted .rd-nav__cta{border-radius:999px;padding:10px 24px;font-weight:600;font-size:.9rem}
/* padding-top matches the spacious section that sits above it (168px), so the
   gap into the footer reads as one rhythm rather than a seam. */
.rd-footer.rd-footer--showcase{background:transparent;padding-block:96px 20px}
.rd-fcard{background:var(--rd-primary,#1d4ed8);border-radius:28px;padding:56px 48px;color:#fff}
/* minmax(0,...) not bare fr: a bare fr keeps an automatic auto minimum, so the
   feature cards' min-content pushes this grid wider than the card that holds it
   and the whole column overflows the viewport. (No backticks in this file's
   comments — baseCss is a template literal and they would close it.) */
.rd-fcard__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;margin-bottom:48px;align-items:start}
/* The two halves stack before they get cramped. The mobile block below starts at
   767px, which left 768-1023 running the desktop split in roughly half the room. */
@media(max-width:900px){.rd-fcard__top{grid-template-columns:minmax(0,1fr);gap:32px}}
.rd-fcard__heading{font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-size:clamp(2rem,4vw,2.8rem);font-weight:800;color:#fff;margin-bottom:14px;line-height:1.05}
.rd-fcard__email{display:block;color:#fff;font-size:1.05rem;text-decoration:none;margin-bottom:8px}
.rd-fcard__email:hover{text-decoration:underline}
.rd-fcard__book{color:#fff;text-decoration:underline;font-size:.95rem}
.rd-fcard__features{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rd-fcard__feature{background:#fff;border-radius:12px;padding:16px 18px;display:flex;gap:12px;text-decoration:none;color:#0d0d0d;align-items:flex-start;transition:transform .15s}
.rd-fcard__feature:hover{transform:translateY(-2px)}
.rd-fcard__feature b{display:block;font-size:.95rem;line-height:1.3}
.rd-fcard__feature small{display:block;font-size:.78rem;color:#555;line-height:1.45;margin-top:3px}
.rd-fcard__icon{font-size:1.25rem;line-height:1.2}
.rd-fcard__grid{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}
.rd-fcard__grid .rd-footer__cols{flex:0 1 auto;display:grid;grid-template-columns:repeat(3,minmax(130px,180px));gap:36px;justify-content:start}
.rd-fcard__socials{display:flex;gap:12px;flex-shrink:0}
.rd-fcard__soc{display:flex;align-items:center;justify-content:center;color:#fff;transition:opacity .15s,transform .15s}
.rd-fcard__soc:hover{opacity:.7;transform:translateY(-2px)}
.rd-fcard__soc svg{width:24px;height:24px;fill:currentColor;display:block}
/* Below 900px the link columns and the socials stop fitting on one row: three
   columns at their 130px floor plus the gap plus the icon strip exceeds the
   card's inner width, and neither side can shrink (socials are flex-shrink:0,
   the columns are already at their minimum). Let the row wrap so the icons drop
   underneath instead of running past the card's padding. The stacking rule below
   only started at 767px, which left 768-900 overflowing. */
@media(max-width:900px){
  .rd-fcard__grid{flex-wrap:wrap;align-items:flex-start;gap:30px}
  .rd-fcard__grid .rd-footer__cols{flex:1 1 100%;grid-template-columns:repeat(3,minmax(0,1fr))}
  .rd-fcard__socials{flex-basis:100%}
}
.rd-fcard__mark{width:150px;height:auto;display:block;flex-shrink:0}
.rd-fcard__say{display:flex;align-items:center;gap:34px}
.rd-fcard__featlabel{color:#fff;font-weight:600;font-size:1rem;margin-bottom:14px}
.rd-fcard__features{grid-auto-rows:1fr}
.rd-fcard__icon svg{width:22px;height:22px;fill:var(--rd-primary,#1d4ed8);display:block}
.rd-reveal{opacity:0;transform:translateY(56px) scale(.98);transition:opacity .7s ease,transform .8s cubic-bezier(.22,.61,.36,1)}
.rd-reveal--in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rd-reveal{opacity:1;transform:none;transition:none}}
.rd-fcard .rd-footer__heading{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.8)}
.rd-footer .rd-fcard li a{color:rgba(255,255,255,.92)}
.rd-footer .rd-fcard li a:hover{color:#fff;text-decoration:underline}
.rd-footer__giant{font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-weight:800;font-size:clamp(2.6rem,11.5vw,10.5rem);line-height:.95;letter-spacing:-.03em;color:var(--rd-primary,#1d4ed8);text-align:center;white-space:nowrap;margin:36px 0 4px;user-select:none}
.rd-footer__giant img{display:block;width:100%;height:auto}
.rd-footer--showcase .rd-footer__giant{position:sticky;bottom:-1px;z-index:1;margin-bottom:0}
.rd-footer--showcase .rd-fcard{position:relative;z-index:2}
@media(prefers-reduced-motion:reduce){.rd-footer--showcase .rd-footer__giant{position:static}}
.rd-fcard__bottom{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:32px}
.rd-fcard__prompt{color:rgba(255,255,255,.85);font-size:.95rem}
.rd-fcard__bookbtn{background:#fff;color:#0d0d0d;border-radius:999px;padding:11px 24px;font-weight:600;font-size:.9rem;text-decoration:none;transition:transform .15s}
.rd-fcard__bookbtn:hover{transform:translateY(-2px)}
.rd-footer__addr{text-align:center;color:#94a3b8;font-size:.8rem;letter-spacing:.03em;margin-top:20px;line-height:1.8}
.rd-footer__addrlink{color:inherit;text-decoration:none;border-bottom:1px solid rgba(148,163,184,.35)}
.rd-footer__addrlink:hover{color:#fff;border-bottom-color:currentColor}
.rd-footer__addrsep{opacity:.55}
.rd-footer--showcase .rd-footer__note,.rd-footer--showcase .rd-footer__legal{text-align:center;max-width:none}
.rd-footer:not(.rd-footer--showcase) .rd-footer__policies{justify-content:flex-start;text-align:left}
/* Policy row: its own line under the address, above the copyright rule. Wraps
   rather than scrolls on narrow screens — four link labels do not fit 320px. */
.rd-footer__policies{text-align:center;margin-top:12px;font-size:12px;color:#94a3b8;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0}
.rd-footer__legalsep{opacity:.55;margin:0 9px}
.rd-footer__legallink{color:inherit;text-decoration:none;border-bottom:1px solid rgba(148,163,184,.3)}
.rd-footer__legallink:hover{color:#fff;border-bottom-color:currentColor}
/* The note is measured off the giant wordmark, not the container, so the two
   read as one centred block. Both sides take the width from the same variable
   — change it once and they stay aligned. (The 11M site's custom CSS pins the
   wordmark image to 80% independently; the default here matches it.) */
.rd-footer--showcase{--rd-footer-giant-w:80%}
.rd-footer--showcase .rd-footer__giant img{width:var(--rd-footer-giant-w);margin-inline:auto}
.rd-footer--showcase .rd-footer__note{width:var(--rd-footer-giant-w);margin-inline:auto}
.rd-stack{position:relative}
.rd-stack__runway{height:34vh}
.rd-stack__card{position:sticky;display:grid;grid-template-columns:1fr 1.25fr;background:var(--rd-background,#ffffff);border:1px solid var(--rd-border,#e5e7eb);border-radius:14px;overflow:hidden;margin-bottom:24px;box-shadow:0 -12px 44px rgba(0,0,0,.5)}
.rd-stack__card:last-child{margin-bottom:0}
.rd-stack__left{padding:34px 32px;border-right:1px solid var(--rd-border,#e5e7eb);display:flex;flex-direction:column;justify-content:space-between;gap:28px;background:linear-gradient(160deg,var(--rd-surface,#f4f5f7) 0%,var(--rd-background,#ffffff) 100%)}
.rd-stack__right{padding:34px 32px;display:flex;flex-direction:column;justify-content:center;gap:12px}
.rd-stack__client{font-weight:600;font-size:1.05rem;color:var(--rd-text,#111827)}
.rd-stack__meta{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--rd-muted,#6b7280);margin-top:4px}
.rd-stack__services{font-size:.75rem;color:var(--rd-muted,#6b7280);font-style:italic;margin-top:6px}
.rd-stack__big{font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-weight:800;font-size:4rem;line-height:1;letter-spacing:-.02em}
.rd-stack__hl{font-size:.95rem;margin-top:6px;color:var(--rd-text,#111827)}
.rd-stack__hlsub{font-size:.75rem;color:var(--rd-muted,#6b7280);margin-top:2px}
.rd-stack__stats{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rd-stack__stat{background:var(--rd-surface,#f4f5f7);border:1px solid var(--rd-border,#e5e7eb);border-radius:8px;padding:10px;text-align:center}
.rd-stack__stat b{font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-weight:800;font-size:1.25rem;display:block;color:var(--rd-text,#111827)}
.rd-stack__stat span{font-size:.62rem;color:var(--rd-muted,#6b7280);text-transform:uppercase;letter-spacing:.04em;display:block;margin-top:3px;line-height:1.4}
.rd-stack__stat small{font-size:.6rem;color:var(--rd-muted,#6b7280);display:block;margin-top:2px}
.rd-stack__ai{background:rgba(0,255,255,.06);border:1px solid rgba(0,255,255,.18);border-radius:8px;padding:9px 12px;font-size:.75rem;color:var(--rd-c-cyan,#00FFFF);letter-spacing:.04em}
.rd-stack__context{background:rgba(32,47,255,.08);border:1px solid rgba(32,47,255,.18);border-radius:8px;padding:9px 12px;font-size:.75rem;color:var(--rd-muted,#6b7280);line-height:1.55}
@media(max-width:820px){.rd-stack__runway{display:none}.rd-stack__card{grid-template-columns:1fr;position:relative;top:auto!important}.rd-stack__left{border-right:none;border-bottom:1px solid var(--rd-border,#e5e7eb)}}
@media(prefers-reduced-motion:reduce){.rd-stack__runway{display:none}.rd-stack__card{position:relative;top:auto!important}}
.rd-qslider{max-width:820px}
.rd-qslider__quote{font-size:1.35rem;line-height:1.5;color:var(--rd-text,#111827);max-width:46ch;min-height:150px;margin:0;transition:opacity .22s ease}
.rd-qslider__quote--fade{opacity:0}
.rd-qslider__meta{transition:opacity .22s ease}
.rd-qslider__footer{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-top:20px}
.rd-qslider__pill{display:inline-flex;align-items:center;gap:9px;background:#fff;color:#0d0d0d;border-radius:999px;padding:4px 15px 4px 4px;font-size:.8rem;font-weight:600;white-space:nowrap}
.rd-qslider__avatar{width:26px;height:26px;border-radius:50%;background:var(--rd-primary,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}
.rd-qslider__nav{display:inline-flex;gap:8px}
.rd-qslider__btn{width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);color:var(--rd-text,#111827);cursor:pointer;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s}
.rd-qslider__btn:hover{background:rgba(255,255,255,.2)}
@media(prefers-reduced-motion:reduce){.rd-qslider__quote,.rd-qslider__meta{transition:none}}
@media(max-width:767px){.rd-qslider__quote{font-size:1.15rem;min-height:0}}
.rd-workgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.rd-workcard{display:flex;flex-direction:column;background:#26232D;border:1px solid var(--rd-border,#e5e7eb);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--rd-text,#111827);transition:transform .15s,background .15s}
.rd-workcard:hover{transform:translateY(-2px)}
.rd-workcard__media{aspect-ratio:4/3;background:linear-gradient(150deg,rgba(32,47,255,.30) 0%,rgba(14,12,25,.92) 75%);display:flex;align-items:center;justify-content:center}
.rd-workcard__media span{font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-weight:800;font-size:1.2rem;opacity:.65}
.rd-workcard__body{padding:20px 22px 24px}
.rd-workcard__cat{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rd-accent,#f59e0b)}
.rd-workcard__body h2,.rd-workcard__body h3{font-size:1.1rem;margin:8px 0 8px}
.rd-workcard__body p{color:var(--rd-muted,#6b7280);font-size:.88rem;line-height:1.6}
.rd-workhero{display:grid;grid-template-columns:1.4fr .8fr;gap:48px;align-items:start;margin-bottom:36px}
.rd-workchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.rd-workchip{font-size:.72rem;letter-spacing:.05em;padding:5px 12px;border-radius:999px;border:1px solid var(--rd-border,#e5e7eb);color:var(--rd-muted,#6b7280)}
/* Work teaser. Multi-column (not grid) so cards of unequal height interlock
   into a masonry wall; images keep their natural ratio to drive that stagger.
   Card internals are spans, not divs — the whole card is one <a>, and a block
   element inside an inline-level anchor is invalid HTML that browsers reflow. */
.rd-wteaser__head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:36px}
.rd-wteaser__h{font-size:clamp(1.9rem,3.4vw,2.9rem);margin-top:10px}
.rd-root .rd-wteaser__intro{color:var(--rd-muted,#6b7280);margin-top:14px;max-width:52ch;line-height:1.65}
.rd-wteaser__all{white-space:nowrap;text-decoration:none;color:var(--rd-text,#111827);border-bottom:1px solid var(--rd-border,#e5e7eb);padding-bottom:3px;font-size:.95rem}
.rd-wteaser__all:hover{border-bottom-color:var(--rd-primary,#1d4ed8)}
.rd-wteaser__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.rd-wteaser__col{display:flex;flex-direction:column;gap:24px;min-width:0}
/* Desktop-only stagger: drop the right column so the two sides never line up
   into rows. Removed below 820px, where the columns collapse to one and the
   offset would just be dead space above the second half. */
.rd-wteaser__col:nth-child(2){margin-top:88px}
.rd-wteaser__card{display:block;background:var(--rd-surface,#f4f5f7);border:1px solid var(--rd-border,#e5e7eb);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--rd-text,#111827);transition:transform .15s,border-color .15s}
.rd-wteaser__card:hover{transform:translateY(-2px);border-color:var(--rd-primary,#1d4ed8)}
.rd-wteaser__media{display:block}
.rd-wteaser__media img{display:block;width:100%;height:auto}
/* Cropped shapes anchor to the top: a website capture loses nothing that
   matters off the bottom, but centre-cropping throws away the header. */
.rd-wteaser__media--wide img,.rd-wteaser__media--tall img,.rd-wteaser__media--square img{height:100%;object-fit:cover;object-position:top}
.rd-wteaser__media--wide img{aspect-ratio:16/9}
.rd-wteaser__media--tall img{aspect-ratio:4/5}
.rd-wteaser__media--square img{aspect-ratio:1/1}
.rd-wteaser__body{display:block;padding:22px 24px 26px}
.rd-wteaser__title{display:block;font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-weight:700;font-size:1.15rem}
/* Clamped to two lines so every card is the same height. Without this a blurb
   that wraps to three lines makes one card taller than the rest and the grid
   stops reading as a set. Keep blurbs short enough that nothing is truncated —
   the clamp is a floor under the layout, not a licence to overwrite. */
.rd-wteaser__blurb{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--rd-muted,#6b7280);font-size:.9rem;line-height:1.6;margin-top:8px;min-height:2.88em}
.rd-wteaser__tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.rd-wteaser__tag{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--rd-muted,#6b7280);border:1px solid var(--rd-border,#e5e7eb);border-radius:999px;padding:4px 11px}
@media(max-width:820px){.rd-wteaser__grid{grid-template-columns:1fr}.rd-wteaser__col:nth-child(2){margin-top:0}.rd-wteaser__head{flex-direction:column;align-items:flex-start;gap:20px}}
@media(prefers-reduced-motion:reduce){.rd-wteaser__card{transition:none}.rd-wteaser__card:hover{transform:none}}
.rd-workmeta{background:#26232D;border:1px solid var(--rd-border,#e5e7eb);border-radius:14px;padding:26px 26px 10px}
.rd-workmeta__row{display:flex;justify-content:space-between;gap:18px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--rd-border,#e5e7eb)}
.rd-workmeta__row:last-child{border-bottom:none}
.rd-workmeta__row span{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rd-muted,#6b7280);padding-top:2px}
.rd-workmeta__row b{font-size:.9rem;font-weight:600;text-align:right}
.rd-workph{border-radius:14px;border:1px solid var(--rd-border,#e5e7eb);aspect-ratio:16/8;display:flex;align-items:center;justify-content:center;margin:18px 0}
.rd-workph span{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--rd-muted,#6b7280);opacity:.7}
.rd-worksection{margin-top:56px}
.rd-worksection h2{margin-bottom:14px}
.rd-worksection p{max-width:70ch;margin-bottom:10px}
.rd-workmore{margin-top:72px}
.rd-dd{position:relative}
.rd-dd__panel{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%) translateY(-6px);min-width:230px;background:color-mix(in srgb,var(--rd-background,#0E0C19) 96%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:10px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s,transform .18s,visibility .18s;z-index:120}
.rd-dd--open .rd-dd__panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%)}
.rd-dd__panel::before{content:'';position:absolute;top:-12px;left:0;right:0;height:12px}
.rd-dd__panel a{display:block;padding:9px 14px;border-radius:8px;color:var(--rd-text,#111827);text-decoration:none;font-size:.9rem;font-weight:500}
.rd-dd__panel a:hover{background:rgba(255,255,255,.07);color:var(--rd-accent,#f59e0b)}
@media(max-width:820px){.rd-workgrid{grid-template-columns:1fr}.rd-workhero{grid-template-columns:1fr;gap:28px}}
.rd-prail{display:grid;grid-template-columns:1fr;border-top:1px solid var(--rd-border,#e5e7eb);border-bottom:1px solid var(--rd-border,#e5e7eb)}
.rd-prail__step{display:flex;flex-direction:column;gap:12px;padding:32px 24px;position:relative;transition:background .3s;border-bottom:1px solid var(--rd-border,#e5e7eb)}
.rd-prail__step:last-child{border-bottom:0}
.rd-prail__step:hover{background:#26232D}
.rd-prail__num{font-size:12px;font-weight:700;letter-spacing:.2em;color:var(--rd-accent,#f59e0b)}
.rd-prail__title{font-size:1.25rem;font-weight:600;margin:0}
.rd-prail__body{color:var(--rd-muted,#6b7280);font-size:.95rem;line-height:1.55;margin:0}
@media(min-width:640px) and (max-width:1023px){.rd-prail{grid-template-columns:1fr 1fr}.rd-prail__step:nth-child(odd){border-right:1px solid var(--rd-border,#e5e7eb)}}
@media(min-width:1024px){.rd-prail{grid-template-columns:repeat(var(--rd-prail-n,5),1fr)}.rd-prail__step{border-bottom:0;border-right:1px solid var(--rd-border,#e5e7eb)}.rd-prail__step:last-child{border-right:0}}
.rd-carousel{position:relative}
.rd-carousel__track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding:4px}
.rd-carousel__track::-webkit-scrollbar{display:none}
.rd-carousel__track:focus-visible{outline:3px solid var(--rd-accent,#f59e0b);outline-offset:2px;border-radius:8px}
.rd-ccard{flex:0 0 calc((100% - (var(--rd-carousel-per,2) - 1)*20px)/var(--rd-carousel-per,2));scroll-snap-align:start;background:var(--rd-surface,#f4f5f7);border:1px solid var(--rd-border,#e5e7eb);border-radius:14px;padding:28px 24px;margin:0;display:flex;flex-direction:column}
.rd-ccard__stars{color:var(--rd-accent,#f59e0b);letter-spacing:3px;font-size:.85rem;margin-bottom:14px}
.rd-ccard__quote{font-style:italic;color:var(--rd-muted,#6b7280);line-height:1.7;font-size:.95rem;margin:0 0 18px;flex:1}
.rd-ccard__author{display:block;font-weight:600;font-size:.9rem;color:var(--rd-text,#111827)}
.rd-ccard__role{display:block;font-size:.75rem;color:var(--rd-muted,#6b7280);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}
.rd-ccard__tag{display:inline-block;font-size:.72rem;color:var(--rd-primary,#1d4ed8);letter-spacing:.06em;margin-top:6px}
.rd-carousel__nav{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:22px}
.rd-carousel__btn{width:38px;height:38px;border-radius:50%;border:1px solid var(--rd-border,#e5e7eb);background:transparent;color:var(--rd-text,#111827);cursor:pointer;font-size:1rem;transition:background .15s,border-color .15s}
.rd-carousel__btn:hover:not(:disabled){background:var(--rd-surface,#f4f5f7);border-color:var(--rd-accent,#f59e0b)}
.rd-carousel__btn:disabled{opacity:.35;cursor:default}
.rd-carousel__dots{display:flex;gap:8px}
.rd-carousel__dot{width:8px;height:8px;border-radius:50%;border:none;padding:0;background:var(--rd-border,#e5e7eb);cursor:pointer;transition:background .15s,transform .15s}
.rd-carousel__dot--on{background:var(--rd-accent,#f59e0b);transform:scale(1.25)}
.rd-footer{background:#0f172a;color:#e2e8f0;padding-block:56px;margin-top:auto}
.rd-footer__cols{display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.rd-footer__heading{font-weight:700;margin-bottom:12px;color:#fff}
.rd-footer ul{list-style:none;margin:0;padding:0}
.rd-footer li a{color:#cbd5e1;text-decoration:none;line-height:2}
.rd-footer li a:hover{color:#fff}
.rd-footer__note{margin-top:28px;color:#94a3b8;max-width:60ch;font-size:14px}
.rd-footer__legal{margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14);color:#94a3b8;font-size:.875rem}
@media(max-width:767px){
.rd-hide-mobile{display:none!important}
.rd-m-align-left{text-align:left!important}
.rd-m-align-center{text-align:center!important}
.rd-m-pad-none{padding-block:0!important}
.rd-m-pad-sm{padding-block:16px!important}
.rd-m-pad-md{padding-block:40px!important}
.rd-masonry{columns:1}
.rd-btngrid{grid-template-columns:1fr}
.rd-nav__desktop,.rd-nav__cta{display:none}
.rd-nav__mobile{display:block}
.rd-mega{display:none}
.rd-fcard{padding:36px 24px;border-radius:20px}
.rd-fcard__top{grid-template-columns:1fr;gap:28px}
.rd-fcard__features{grid-template-columns:1fr}
.rd-fcard__grid{flex-direction:column;align-items:flex-start}
.rd-fcard__grid .rd-footer__cols{grid-template-columns:1fr 1fr;width:100%}
.rd-fcard__say{flex-direction:column;align-items:flex-start;gap:20px}
.rd-fcard__mark{width:110px}
.rd-ccard{flex-basis:100%}
}
@media(min-width:768px) and (max-width:1023px){.rd-hide-tablet{display:none!important}}
@media(max-width:1023px){.rd-nav__desktop,.rd-nav__cta{display:none}.rd-nav__mobile{display:flex;align-items:center;gap:24px}.rd-mega{display:none}}
@media(min-width:1024px){.rd-hide-desktop{display:none!important}}
.rd-trustbar{padding-block:18px;border-block:1px solid var(--rd-border,#e5e7eb)}
.rd-trustbar__inner{display:flex;flex-wrap:wrap;gap:12px 36px;justify-content:center;align-items:center}
.rd-trustbar__item{font-size:.85rem;color:var(--rd-muted,#6b7280);font-weight:600;letter-spacing:.04em}
.rd-trustbar__item svg{width:15px;height:15px;fill:currentColor;display:inline-block;vertical-align:-2px;margin-right:8px}
.rd-trustbar--marquee{overflow:hidden;padding-block:0;border:none;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.rd-trustbar__fade{overflow:hidden}
.rd-trustbar__track{display:flex;width:max-content;animation:rdTrustScroll 38s linear infinite}
.rd-trustbar__track:hover{animation-play-state:paused}
.rd-trustbar__list{display:flex;align-items:center}
.rd-trustbar--marquee .rd-trustbar__item{white-space:nowrap;padding:14px 28px;border-right:1px solid rgba(255,255,255,.25)}
@keyframes rdTrustScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.rd-trustbar__track{animation:none;width:100%;flex-wrap:wrap;justify-content:center}.rd-trustbar__track [aria-hidden]{display:none}}
.rd-statgrid{display:grid;gap:20px;grid-template-columns:repeat(var(--rd-cols,2),minmax(0,1fr))}
.rd-statgrid--boxed{background:var(--rd-surface,#f4f5f7);border:1px solid var(--rd-border,#e5e7eb);border-radius:var(--rd-radius,10px);padding:28px}
.rd-stat__value{font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-weight:800;line-height:1}
.rd-stat--big .rd-stat__value{font-size:clamp(2rem,4vw,2.6rem)}
.rd-stat--small .rd-stat__value{font-size:1.4rem}
.rd-stat__label{margin-top:8px;font-weight:600;font-size:.9rem}
.rd-stat__sub{color:var(--rd-muted,#6b7280);font-size:.75rem;margin-top:2px}
.rd-pillars{display:grid;gap:1px;background:var(--rd-border,#e5e7eb);border:1px solid var(--rd-border,#e5e7eb);border-radius:var(--rd-radius,10px);overflow:hidden;grid-template-columns:repeat(var(--rd-cols,3),minmax(0,1fr))}
.rd-pillar{background:var(--rd-surface,#f4f5f7);padding:32px;display:flex;flex-direction:column}
.rd-pillar--featured{box-shadow:inset 0 2px 0 var(--rd-c-cyan,var(--rd-accent,#f59e0b))}
.rd-pillar__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.rd-pillar__number{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--rd-muted,#6b7280)}
.rd-pillar__badge{font-size:.7rem;color:var(--rd-c-cyan,var(--rd-accent,#f59e0b));letter-spacing:.08em}
.rd-pillar h3{font-size:1.15rem;margin-bottom:10px}
.rd-pillar p{color:var(--rd-muted,#6b7280);font-size:.95rem}
.rd-pillar__items{list-style:none;margin:14px 0 0;padding:0;font-size:.85rem;color:var(--rd-muted,#6b7280)}
.rd-pillar__items li{padding-block:4px;border-top:1px solid var(--rd-border,#e5e7eb)}
@media(max-width:767px){.rd-pillars{grid-template-columns:1fr}.rd-pillar{grid-column:auto!important}}
.rd-pillar__link{display:inline-block;margin-top:auto;padding-top:16px;color:var(--rd-primary,#1d4ed8);font-weight:600;text-decoration:none;font-size:.9rem}
.rd-pillar--featured .rd-pillar__link{color:var(--rd-c-cyan,var(--rd-primary,#1d4ed8))}
.rd-logostrip__heading{text-align:center;color:var(--rd-muted,#6b7280);font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px}
.rd-logostrip__row{display:flex;flex-wrap:wrap;gap:14px 40px;justify-content:center}
.rd-logostrip__name{font-family:var(--rd-font-heading,system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif);font-weight:700;font-size:1.05rem;color:var(--rd-muted,#6b7280);opacity:.85}
.rd-logostrip__mask{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.rd-logostrip__track{display:flex;width:max-content;animation:rdTrustScroll 30s linear infinite}
.rd-logostrip__track:hover{animation-play-state:paused}
.rd-logostrip__run{display:flex;align-items:center}
.rd-logostrip--marquee .rd-logostrip__name{white-space:nowrap;padding:6px 28px}
@media(prefers-reduced-motion:reduce){.rd-logostrip__track{animation:none;width:100%;flex-wrap:wrap;justify-content:center}.rd-logostrip__track [aria-hidden]{display:none}}
@media(max-width:767px){.rd-pillars,.rd-statgrid{grid-template-columns:1fr}}
.rd-formgrid{grid-template-columns:1fr 1fr}
.rd-formgrid>*{grid-column:1/-1}
.rd-formgrid>.rd-formgrid__half{grid-column:auto}
@media(max-width:600px){.rd-formgrid>.rd-formgrid__half{grid-column:1/-1}}

/* the broadsheet: PaperSheet renders ground + framed paper page */
.np-ground{padding:clamp(12px,3vw,40px) clamp(8px,2vw,24px)}
.np-page{max-width:1240px;margin-inline:auto;background:var(--rd-surface,#f7eee5);color:var(--rd-c-ink,#1c1a17);border:1px solid #0f0e0d;box-shadow:0 18px 60px rgba(0,0,0,.55);padding:clamp(14px,2.4vw,28px) clamp(14px,2.4vw,28px) 0;font-family:var(--rd-font-body,Georgia,serif);font-size:15px;line-height:1.55}
.np-page a{color:var(--rd-c-accent-deep,#7d5411)}
/* ink-on-paper links: outrank the .np-page a default */
.np-page .np-masthead__title-wrap,.np-page .np-masthead__brand,.np-page .np-masthead__phone,.np-page .np-box__phone,.np-page .np-linklist__title,.np-page .np-headline a,.np-page .np-mbar__wordmark{color:var(--rd-c-ink,#1c1a17)}
.np-mmenu .np-mmenu__quote{color:var(--rd-c-accent-soft,#facb8d)}
.np-mmenu .np-mmenu__call{color:#141310}
.np-page .np-callbar__phone{color:#141310}
.np-hr{height:1px;border:0;margin:0;background:var(--rd-c-faint,rgba(28,26,23,.16))}
.np-label{font-family:var(--rd-font-heading,Georgia,serif);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;color:var(--rd-c-ink,#1c1a17)}
.np-label--rule-heavy{border-bottom:2px solid var(--rd-c-ink,#1c1a17);padding-bottom:4px}
.np-label--rule-light{border-bottom:1px solid var(--rd-c-rule,rgba(28,26,23,.48));padding-bottom:4px}
.np-kicker{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--rd-c-accent-deep,#7d5411)}
.np-headline{font-family:var(--rd-font-heading,Georgia,serif);font-weight:400;text-transform:uppercase;color:var(--rd-c-ink,#1c1a17);margin:4px 0 10px}
.np-headline a{color:inherit;text-decoration:none}
.np-headline a:hover{text-decoration:underline;text-underline-offset:4px}
.np-headline--lead{font-size:clamp(32px,4vw,52px);line-height:.98;letter-spacing:-.01em}
.np-headline--section{font-size:clamp(24px,2.6vw,31px);line-height:1.05}
.np-headline--card{font-size:clamp(20px,1.9vw,24px);line-height:1.08;margin:4px 0 10px}
.np-h1{font-family:var(--rd-font-heading,Georgia,serif);font-weight:400;font-size:clamp(34px,4.4vw,56px);line-height:1;text-transform:uppercase;margin:0 0 10px;color:var(--rd-c-ink,#1c1a17)}
.np-reviewed{font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb,var(--rd-c-ink,#1c1a17) 55%,transparent);margin-bottom:14px}
.np-intro{font-size:17px;line-height:1.6;margin:0;max-width:80ch}
.np-crumbs{font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
.np-crumbs a{color:var(--rd-c-accent-deep,#7d5411);text-decoration:none}
.np-crumbs a:hover{text-decoration:underline}
.np-pagehead{border-bottom:2px solid var(--rd-c-ink,#1c1a17);padding:22px 0 26px}
.np-pagehead--bare{border-bottom:0;padding-bottom:8px}
/* masthead */
.np-masthead--front .np-masthead__toprow{display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;padding:2px 0 6px;border-bottom:1px solid var(--rd-c-rule,rgba(28,26,23,.48))}
.np-masthead__title-grid{display:grid;grid-template-columns:180px minmax(0,1fr) 180px;align-items:center;gap:18px;padding:18px 0 10px}
.np-masthead__title-art{display:block;text-decoration:none}
.np-masthead__title-art img{display:block;margin-inline:auto;width:min(440px,100%);height:auto}
.np-masthead__tagline--right{text-align:right}
.np-visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.np-masthead__tagline{font-size:11px;line-height:1.4;margin:0;font-style:italic}
.np-masthead__title-wrap{text-align:center;container-type:inline-size;text-decoration:none;color:inherit;display:block}
.np-masthead__the{display:block;font-size:11px;letter-spacing:.34em;text-transform:uppercase;margin-bottom:2px}
.np-masthead__title{font-family:var(--rd-font-heading,Georgia,serif);font-weight:400;font-size:min(76px,11.2cqw);white-space:nowrap;line-height:.9;letter-spacing:-.01em;margin:0;text-transform:uppercase}
.np-masthead__title-sub{letter-spacing:.06em}
.np-masthead__logo-cell{display:flex;justify-content:flex-end}
.np-logo{width:104px;height:104px;border-radius:50%;mix-blend-mode:multiply;display:block}
.np-logo--sm{width:44px;height:44px}
.np-masthead__folio{border-top:3px solid var(--rd-c-ink,#1c1a17);border-bottom:1px solid var(--rd-c-ink,#1c1a17);display:flex;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:6px 2px;font-variant-numeric:tabular-nums}
.np-masthead--interior{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:14px;border-bottom:3px solid var(--rd-c-ink,#1c1a17)}
.np-masthead--interior .np-masthead__brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit}
.np-masthead__name{display:block;font-family:var(--rd-font-heading,Georgia,serif);font-size:clamp(20px,2.4vw,28px);text-transform:uppercase;letter-spacing:.06em;line-height:1}
.np-masthead__est{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;margin-top:2px}
.np-masthead__right{text-align:right}
.np-masthead__section{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.np-masthead__phone{font-family:var(--rd-font-heading,Georgia,serif);font-size:20px;color:var(--rd-c-ink,#1c1a17);text-decoration:none;font-variant-numeric:tabular-nums}
/* nav */
.np-nav{position:sticky;top:0;z-index:40;background:var(--rd-c-ink,#1c1a17);color:var(--rd-c-paper-deep,#fbf3e6);display:flex;justify-content:space-between;align-items:center;gap:clamp(4px,.75vw,18px);padding:9px;font-family:var(--rd-font-heading,Georgia,serif);font-size:clamp(9.5px,1.05vw,13px);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;overflow-x:auto}
.np-nav a{color:var(--rd-c-paper-deep,#fbf3e6);text-decoration:none;flex:none;display:inline-flex;align-items:center;gap:.42em}
.np-nav__icon{width:.95em;height:.95em;flex:none}
.np-nav a:hover{text-decoration:underline;text-underline-offset:4px}
.np-nav__cta{color:var(--rd-c-accent-soft,#facb8d)!important;border:1px solid var(--rd-c-accent-soft,#facb8d);padding:.36em .85em;margin-left:.4em}
.np-nav__cta:hover{background:color-mix(in srgb,var(--rd-c-accent-soft,#facb8d) 18%,transparent);text-decoration:none!important}
/* ticker */
.np-ticker{display:flex;align-items:stretch;border-bottom:1px solid var(--rd-c-rule,rgba(28,26,23,.48));overflow:hidden;margin-top:1px}
.np-ticker__label{flex:none;background:var(--rd-c-ink,#1c1a17);color:var(--rd-c-paper-deep,#fbf3e6);font-family:var(--rd-font-heading,Georgia,serif);font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:8px 14px;display:flex;align-items:center}
.np-ticker__track{flex:1;overflow:hidden;padding:8px 0}
.np-ticker__reel{display:flex;gap:36px;width:max-content;animation:npTick 42s linear infinite;font-size:12px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
@keyframes npTick{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.np-ticker__reel{animation:none}}
/* columns */
.np-cols{display:grid;grid-template-columns:var(--np-cols)}
.np-cols--gap-none{gap:0}
.np-cols--gap-normal{gap:24px}
.np-cols--gap-wide{gap:36px}
.np-cols--padded{padding:26px 0}
.np-cols--b-heavy{border-bottom:2px solid var(--rd-c-ink,#1c1a17)}
.np-cols--b-light{border-bottom:1px solid var(--rd-c-rule,rgba(28,26,23,.48))}
.np-cols--rules{gap:0}
.np-cols__col{padding-bottom:8px}
.np-cols--rules>.np-cols__col{border-right:1px solid var(--rd-c-rule,rgba(28,26,23,.48));padding:18px}
.np-cols--rules>.np-cols__col:first-child{padding-left:0}
.np-cols--rules>.np-cols__col:last-child{border-right:0;padding-right:0}
/* story */
.np-story--centered .np-story__head{text-align:center}
.np-story__head{margin-bottom:8px}
.np-story__head--ruled{border-bottom:1px solid var(--rd-c-rule,rgba(28,26,23,.48));padding-bottom:14px;margin-bottom:16px}
.np-deck{font-style:italic;font-size:16px;max-width:62ch;margin:0;line-height:1.4}
.np-story--centered .np-deck{margin-inline:auto}
.np-figure{margin:16px 0}
.np-plate{display:block;max-width:100%;filter:sepia(.22) saturate(.82) contrast(1.05);border:6px solid var(--rd-c-paper-deep,#fbf3e6);outline:1px solid var(--rd-c-faint,rgba(28,26,23,.16));box-sizing:border-box}
.np-caption{font-size:11px;font-style:italic;margin:6px 0 0;border-bottom:1px solid var(--rd-c-faint,rgba(28,26,23,.16));padding-bottom:6px}
.np-imgslot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:12px;box-sizing:border-box;width:100%;background:color-mix(in srgb,var(--rd-c-paper-deep,#fbf3e6) 55%,transparent);border:1.5px dashed color-mix(in srgb,var(--rd-c-ink,#1c1a17) 35%,transparent);color:color-mix(in srgb,var(--rd-c-ink,#1c1a17) 55%,transparent)}
.np-imgslot svg{width:26px;height:26px;opacity:.45;flex:none}
.np-imgslot span{font-size:12px;font-style:italic;letter-spacing:.02em;max-width:90%}
.np-imgslot--circle{border-radius:50%;overflow:hidden;margin-inline:auto}
.np-imgslot--circle span{font-size:10.5px}
.np-plate--circle{border-radius:50%}
.np-body{font-size:14.5px;line-height:1.65}
.np-body p{margin:0 0 12px}
.np-body p:last-child{margin-bottom:0}
.np-body a{color:var(--rd-c-accent-deep,#7d5411)}
.np-body h2{font-family:var(--rd-font-heading,Georgia,serif);font-weight:400;font-size:clamp(26px,2.8vw,32px);margin:26px 0 10px;text-align:left;line-height:1.1}
.np-body h2:first-child{margin-top:0}
.np-body h3{font-family:var(--rd-font-heading,Georgia,serif);font-weight:400;font-size:24px;margin:20px 0 8px;line-height:1.12}
.np-body h4{font-family:var(--rd-font-heading,Georgia,serif);font-weight:400;font-size:20px;margin:16px 0 8px}
.np-body ul{margin:0 0 12px;padding-left:1.2em}
.np-body--justify{text-align:justify;hyphens:auto}
.np-body--justify h2,.np-body--justify h3,.np-body--justify h4{text-align:left}
.np-body--2col{columns:2;column-gap:32px;column-rule:1px solid var(--rd-c-faint,rgba(28,26,23,.16))}
.np-body--2col p,.np-body--2col ul{break-inside:avoid-column}
.np-body--dropcap>p:first-of-type::first-letter{float:left;font-family:var(--rd-font-heading,Georgia,serif);font-size:64px;line-height:.72;padding:7px 8px 0 0}
/* card */
.np-card--ruled{border-top:1px solid var(--rd-c-rule,rgba(28,26,23,.48));padding-top:12px;padding-bottom:8px}
.np-card__text{font-size:13px;line-height:1.55;text-align:justify;margin:10px 0 0}
.np-card__text a{color:var(--rd-c-accent-deep,#7d5411)}
.np-card .np-plate{margin-top:2px}
/* wire service Q&A */
.np-qa{background:color-mix(in srgb,var(--rd-c-paper-deep,#fbf3e6) 70%,transparent)}
.np-qa__masth{background:var(--rd-c-ink,#1c1a17);color:var(--rd-c-paper-deep,#fbf3e6);padding:7px 10px;text-align:center;margin-bottom:14px}
.np-qa__title{font-family:var(--rd-font-heading,Georgia,serif);font-size:19px;letter-spacing:.14em;text-transform:uppercase}
.np-qa__sub{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--rd-c-accent-soft,#facb8d)}
.np-qa__list{display:flex;flex-direction:column;gap:16px;font-size:13px;line-height:1.5}
.np-qa__q{font-family:var(--rd-font-heading,Georgia,serif);font-size:16px;margin-bottom:3px}
.np-qa__a{margin:0}
/* accordion */
.np-rulehead{display:flex;align-items:baseline;justify-content:space-between;gap:14px;border-bottom:2px solid var(--rd-c-ink,#1c1a17);margin:0 0 14px}
.np-rulehead .np-headline{margin-bottom:0}
.np-rulehead__aside{font-size:11px;letter-spacing:.14em;text-transform:uppercase;flex:none}
.np-acc__cols{columns:2;column-gap:36px}
.np-acc__item{break-inside:avoid;border-bottom:1px solid var(--rd-c-faint,rgba(28,26,23,.16));padding:12px 0}
.np-acc__item summary{cursor:pointer;font-family:var(--rd-font-heading,Georgia,serif);font-size:19px;list-style:none;display:flex;justify-content:space-between;gap:14px}
.np-acc__item summary::-webkit-details-marker{display:none}
.np-acc__mark{color:var(--rd-c-accent-deep,#7d5411);flex:none}
.np-acc__item[open] .np-acc__mark{transform:rotate(45deg)}
.np-acc__item p{margin:10px 0 0;font-size:13.5px;line-height:1.6;max-width:70ch}
/* tables */
.np-table{width:100%;border-collapse:collapse;font-size:13.5px;font-variant-numeric:tabular-nums}
.np-table caption{text-align:left;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding-bottom:10px}
.np-table th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--rd-c-ink,#1c1a17) 60%,transparent);padding:8px 8px 8px 0;border-bottom:1px solid var(--rd-c-rule,rgba(28,26,23,.48))}
.np-table td{padding:7px 8px 7px 0;border-bottom:1px solid var(--rd-c-faint,rgba(28,26,23,.16))}
.np-table--kv td:first-child{width:34%}
.np-table a{color:var(--rd-c-accent-deep,#7d5411)}
.np-tnote{font-size:12px;font-style:italic;margin:10px 0 0}
/* boxes */
.np-box{padding:18px}
/* breathing room when a box follows other content in the same column.
   Blocks may or may not carry an .rd-shell wrapper, so each side of the
   adjacency has to accept both shapes. */
:is(.np-linklist, .rd-shell:has(> .np-linklist)) + .np-box,
:is(.np-linklist, .rd-shell:has(> .np-linklist)) + .rd-shell > .np-box{margin-top:10px}
:is(.np-story, .rd-shell:has(> .np-story)) + .np-box,
:is(.np-story, .rd-shell:has(> .np-story)) + .rd-shell > .np-box{margin-top:5px}
:is(.np-box, .rd-shell:has(> .np-box)) + .np-box,
:is(.np-box, .rd-shell:has(> .np-box)) + .rd-shell > .np-box{margin-top:5px}
.np-box--double{border:3px double var(--rd-c-ink,#1c1a17);margin-bottom:8px}
/* per-instance spacing (Walt's Chronicle polish pass) */
[data-rd-block="PaperBox-9"]{margin-bottom:5px}
[data-rd-block="PaperBox-13"]{margin-top:5px}
/* accordion directly after a plain rate table (the Ledger article) */
:is(.np-table-wrap, .rd-shell:has(> .np-table-wrap)) + .np-acc,
:is(.np-table-wrap, .rd-shell:has(> .np-table-wrap)) + .rd-shell > .np-acc{margin-top:10px}
.np-box--solid{border:1px solid var(--rd-c-rule,rgba(28,26,23,.48))}
.np-box--heavy{border:2px solid var(--rd-c-ink,#1c1a17)}
.np-box--center{text-align:center}
.np-box__head{border-bottom:1px solid var(--rd-c-rule,rgba(28,26,23,.48));padding-bottom:8px;margin-bottom:14px}
.np-box__head--bare{border-bottom:1px solid var(--rd-c-rule,rgba(28,26,23,.48))}
.np-box__title{font-family:var(--rd-font-heading,Georgia,serif);font-size:22px;text-transform:uppercase;letter-spacing:.08em}
.np-box__sub{font-size:11px;font-style:italic}
.np-box__text{font-size:13px;line-height:1.55}
.np-box__text p{margin:8px 0}
.np-box__phone{display:block;font-family:var(--rd-font-heading,Georgia,serif);font-size:26px;color:var(--rd-c-ink,#1c1a17);text-decoration:none;margin:4px 0;font-variant-numeric:tabular-nums;white-space:nowrap}
/* narrow rail boxes (front-page left column): keep the number on one line */
.np-cols--rules .np-box__phone{font-size:19px}
.np-box__phonenote{font-size:11px;font-style:italic}
.np-box .rd-form{margin:0}
/* buttons */
.np-btnrow{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
.np-box--center .np-btnrow{justify-content:center}
.np-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;text-decoration:none;font-family:var(--rd-font-heading,Georgia,serif);font-weight:600;font-size:14px;line-height:1.2;color:var(--rd-c-ink,#1c1a17);background:transparent;border:1px solid transparent;padding:10px 17px;border-radius:0;white-space:nowrap;font-variant-numeric:tabular-nums}
.np-btn--primary{color:var(--rd-c-accent-deep,#7d5411);border-color:var(--rd-accent,#b68235)}
.np-btn--primary:hover{background:color-mix(in srgb,var(--rd-accent,#b68235) 12%,transparent)}
.np-btn--secondary{border-color:var(--rd-c-rule,rgba(28,26,23,.48))}
.np-btn--secondary:hover{background:color-mix(in srgb,var(--rd-c-ink,#1c1a17) 7%,transparent)}
.np-btn--ghost{color:var(--rd-c-accent-deep,#7d5411);padding-inline:4px}
.np-btn--ghost:hover{background:color-mix(in srgb,var(--rd-accent,#b68235) 10%,transparent)}
/* letters */
.np-letters__list{display:flex;flex-direction:column;gap:16px}
.np-letter{margin:0;border-left:2px solid var(--rd-c-accent-deep,#7d5411);padding-left:14px;font-size:14.5px;line-height:1.6}
.np-letter p{margin:0 0 4px;font-style:italic}
.np-letter footer{font-size:12px}
/* link list */
.np-linklist--boxed{border:1px solid var(--rd-c-rule,rgba(28,26,23,.48));padding:14px;margin-top:5px}
.np-linklist__lead{font-size:13.5px;margin:0 0 14px}
.np-linklist__items{display:grid;grid-template-columns:repeat(var(--np-ll-cols,1),minmax(0,1fr));gap:14px 18px}
.np-linklist__items--plain{gap:6px 14px}
.np-linklist__title{font-family:var(--rd-font-heading,Georgia,serif);color:var(--rd-c-ink,#1c1a17);text-decoration:none;display:inline-block}
a.np-linklist__title:hover{text-decoration:underline;text-underline-offset:3px}
.np-linklist__items--lg .np-linklist__title{font-size:18px}
.np-linklist__items--md .np-linklist__title{font-size:16px}
.np-linklist__items--plain .np-linklist__title{font-family:var(--rd-font-body,Georgia,serif);font-size:13.5px}
.np-linklist__item p{margin:2px 0 0;font-size:12px;line-height:1.4}
/* facts */
.np-facts{font-size:13.5px;line-height:1.8;padding-bottom:8px}
.np-facts--ruled{border-top:1px solid var(--rd-c-rule,rgba(28,26,23,.48));padding-top:12px;margin-top:14px}
.np-facts__line a{color:var(--rd-c-accent-deep,#7d5411)}
/* CTA band */
.np-cta{padding:26px 0;display:flex;flex-wrap:wrap;align-items:center;gap:18px}
.np-cta--between{justify-content:space-between}
.np-cta--ruled{border-bottom:2px solid var(--rd-c-ink,#1c1a17)}
.np-cta__text{font-size:15px;line-height:1.6;margin:0;max-width:60ch}
.np-cta .np-btnrow{margin-top:0}
/* footer */
.np-footer{padding:26px 0;display:grid;grid-template-columns:35fr 25fr 20fr 20fr;gap:24px;font-size:13px}
.np-footer__brand{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-family:var(--rd-font-heading,Georgia,serif);font-size:19px;text-transform:uppercase}
.np-footer__brand .np-logo--sm{width:52px;height:52px}
.np-footer__nap p{margin:0 0 10px;line-height:1.55}
.np-footer__nap p:last-child{margin-bottom:0}
.np-footer__nap a{color:var(--rd-c-accent-deep,#7d5411)}
.np-footer__links{display:flex;flex-direction:column;gap:4px}
.np-footer__links a{color:var(--rd-c-accent-deep,#7d5411);text-decoration:none}
.np-footer__links a:hover{text-decoration:underline}
.np-colophon{border-top:1px solid var(--rd-c-rule,rgba(28,26,23,.48));padding:14px 0;text-align:center;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.np-callbar{display:none}
/* forms on paper: FormRenderer uses inline styles tuned for app themes; on the
   broadsheet, fields go transparent with hairline rules and the submit button
   becomes the outlined primary */
.np-page form input:not([type=checkbox]),.np-page form select,.np-page form textarea{background:transparent!important;border:1px solid var(--rd-c-rule,rgba(28,26,23,.48))!important;border-radius:0!important;color:var(--rd-c-ink,#1c1a17)!important;font-size:14px!important;padding:8px 10px!important;caret-color:var(--rd-accent,#b68235)}
.np-page form label{font-size:10px!important;letter-spacing:.16em;text-transform:uppercase;font-weight:400!important}
.np-page form .rd-btn{background:transparent!important;color:var(--rd-c-accent-deep,#7d5411)!important;border:1px solid var(--rd-accent,#b68235)!important;border-radius:0!important;font-family:var(--rd-font-heading,Georgia,serif);font-weight:600;font-size:14px}
.np-page form .rd-btn:hover{background:color-mix(in srgb,var(--rd-accent,#b68235) 12%,transparent)!important}
/* mobile header: compact sticky bar + fullscreen ink menu (Chronicle mobile
   spec). Hidden on desktop; ≤920px it replaces the masthead + desktop strip. */
.np-mnav{display:none}
.np-mbar{position:sticky;top:0;z-index:60;background:var(--rd-surface,#f7eee5);border-bottom:2px solid var(--rd-c-ink,#1c1a17);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px 6px}
.np-mbar__burger{flex:none;width:44px;height:44px;background:transparent;border:1px solid var(--rd-c-rule,rgba(28,26,23,.48));cursor:pointer;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:0}
.np-mbar__burger span{display:block;width:20px;height:1.5px;background:var(--rd-c-ink,#1c1a17)}
.np-mbar__wordmark{text-align:center;flex:1;text-decoration:none;color:var(--rd-c-ink,#1c1a17)}
.np-mbar__the{display:block;font-size:8px;letter-spacing:.28em;text-transform:uppercase}
.np-mbar__title{font-family:var(--rd-font-heading,Georgia,serif);font-size:20px;line-height:1;text-transform:uppercase;letter-spacing:.02em}
.np-mbar__title-sub{letter-spacing:.22em;font-size:12px}
.np-mbar__art{display:block;height:40px;width:auto;margin-inline:auto}
.np-mbar__call{flex:none;min-height:44px;min-width:44px;font-size:11px;padding:6px 10px}
.np-mmenu{position:fixed;inset:0;z-index:200;background:var(--rd-c-ink,#1c1a17);color:var(--rd-c-paper-deep,#fbf3e6);display:flex;flex-direction:column;overflow-y:auto}
.np-mmenu__bar{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid color-mix(in srgb,#f3f2f2 22%,transparent)}
.np-mmenu__brand{display:flex;align-items:center;gap:9px;font-family:var(--rd-font-heading,Georgia,serif);font-size:13px;letter-spacing:.18em;text-transform:uppercase}
.np-mmenu__brand img{width:30px;height:30px;border-radius:50%;filter:invert(1)}
.np-mmenu__close{background:transparent;border:1px solid color-mix(in srgb,#f3f2f2 35%,transparent);color:inherit;width:44px;height:44px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.np-mmenu__x{position:relative;display:block;width:20px;height:13px}
.np-mmenu__x span{position:absolute;top:6px;left:0;width:20px;height:1.5px;background:currentColor}
.np-mmenu__x span:first-child{transform:rotate(45deg)}
.np-mmenu__x span:last-child{transform:rotate(-45deg)}
.np-mmenu__nav{display:flex;flex-direction:column;padding:12px 18px;gap:2px}
.np-mmenu__nav>a,.np-mmenu__group summary{color:inherit;font-family:var(--rd-font-heading,Georgia,serif);font-size:26px;text-transform:uppercase;letter-spacing:.04em;padding:11px 0;border-bottom:1px solid color-mix(in srgb,#f3f2f2 14%,transparent);text-decoration:none;min-height:44px;box-sizing:border-box}
.np-mmenu__group summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px}
.np-mmenu__group summary::-webkit-details-marker{display:none}
.np-mmenu__plus{color:var(--rd-c-accent-soft,#facb8d);font-size:22px;transition:transform .15s}
.np-mmenu__group[open] .np-mmenu__plus{transform:rotate(45deg)}
.np-mmenu__group{border-bottom:1px solid color-mix(in srgb,#f3f2f2 14%,transparent)}
.np-mmenu__group summary{border-bottom:none}
.np-mmenu__sub{display:flex;flex-direction:column;padding-bottom:6px}
.np-mmenu__sub a{color:color-mix(in srgb,#f3f2f2 82%,transparent);font-family:var(--rd-font-heading,Georgia,serif);font-size:19px;text-transform:uppercase;letter-spacing:.05em;padding:9px 0 9px 1.1em;border-bottom:1px solid color-mix(in srgb,#f3f2f2 10%,transparent);text-decoration:none;display:block;min-height:44px;box-sizing:border-box}
.np-mmenu__sub a:last-child{border-bottom:none}
.np-mmenu__foot{margin-top:auto;padding:18px;display:flex;flex-direction:column;gap:9px;border-top:1px solid color-mix(in srgb,#f3f2f2 22%,transparent)}
.np-mmenu__quote{display:flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--rd-c-accent-soft,#facb8d);color:var(--rd-c-accent-soft,#facb8d);font-family:var(--rd-font-heading,Georgia,serif);font-size:14px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}
.np-mmenu__call{display:flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;background:var(--rd-c-accent-soft,#facb8d);color:#141310;font-family:var(--rd-font-heading,Georgia,serif);font-size:15px;letter-spacing:.08em;text-decoration:none;font-variant-numeric:tabular-nums}
.np-mmenu__call svg{width:1em;height:1em;flex:none}
.np-mmenu__est{text-align:center;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:color-mix(in srgb,#f3f2f2 60%,transparent);margin-top:9px}
/* responsive */
@media(max-width:920px){
  .np-cols{grid-template-columns:1fr!important}
  .np-cols--rules>.np-cols__col{border-right:0;border-bottom:1px solid var(--rd-c-rule,rgba(28,26,23,.48));padding:14px 0}
  .np-cols--rules>.np-cols__col:last-child{border-bottom:0}
  .np-masthead{display:none}
  .np-nav{display:none}
  .np-mnav{display:block;position:sticky;top:0;z-index:100}
  .np-body--2col{columns:1}
  .np-acc__cols{columns:1}
  .np-footer{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .np-footer{grid-template-columns:1fr}
  .np-callbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:90;background:var(--rd-c-ink,#1c1a17);color:var(--rd-c-paper-deep,#fbf3e6);align-items:center;justify-content:center;gap:14px;padding:10px 16px;border-top:1px solid var(--rd-c-accent-soft,#facb8d)}
  .np-callbar__phone{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;background:var(--rd-c-accent-soft,#facb8d);color:#141310;font-family:var(--rd-font-heading,Georgia,serif);font-size:17px;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;font-variant-numeric:tabular-nums}
  .np-callbar__label{font-size:11px;letter-spacing:.14em;text-transform:uppercase}
  .rd-root:has(.np-callbar){padding-bottom:64px}
}

.cl-wrap{max-width:var(--rd-max-width,1180px);margin:0 auto}
.cl-sec{padding:96px 32px;background:var(--rd-background,#FFFFFF);color:var(--rd-text,#1D213E)}
.cl-sec--surface{background:var(--rd-surface,#F2F6FA)}
.cl-h2{font-size:40px;line-height:1.15;font-weight:800;margin:0;max-width:760px;color:var(--rd-accent,#1D213E);letter-spacing:var(--rd-ls-heading,-0.01em)}
.cl-h2--lg{font-size:44px;line-height:1.12;max-width:none}
.cl-h2--wide{font-size:38px;line-height:1.18;max-width:900px}
.cl-lead{font-size:18px;line-height:1.75;margin:20px 0 0;max-width:860px}
.cl-note{font-size:18px;line-height:1.75;margin:26px 0 0;max-width:820px}
.cl-eyebrow{font-size:13px;font-weight:700;letter-spacing:.16em;color:var(--rd-primary,#478EC1);margin-bottom:14px;text-transform:uppercase}

/* buttons */
.cl-btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.cl-btn{display:inline-block;padding:18px 30px;border-radius:8px;font-weight:700;font-size:18px;text-decoration:none;border:1.5px solid transparent}
.cl-btn--primary{background:var(--rd-primary,#478EC1);color:var(--rd-primary-contrast,#FFFFFF);box-shadow:0 4px 16px rgba(71,142,193,.30)}
.cl-btn--dark{background:var(--rd-accent,#1D213E);color:#FFFFFF}
.cl-btn--outline{background:transparent;border-color:var(--rd-primary,#478EC1);color:var(--rd-primary,#478EC1);padding:16.5px 28px;font-weight:600}

/* hero */
.cl-hero{padding:72px 32px 64px;background:linear-gradient(180deg,var(--rd-surface,#F2F6FA) 0%,var(--rd-background,#FFFFFF) 100%);color:var(--rd-text,#1D213E)}
.cl-hero__grid{display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:start}
.cl-pill{display:inline-flex;align-items:center;gap:10px;background:var(--rd-background,#FFFFFF);border:1px solid var(--rd-border,#DFE5EE);border-radius:999px;padding:8px 16px 8px 10px;font-size:14px;font-weight:600}
.cl-pill__icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--rd-primary,#478EC1);color:#fff;font-size:12px}
.cl-hero__h1{font-size:60px;line-height:1.06;font-weight:800;margin:18px 0 0;color:var(--rd-accent,#1D213E);letter-spacing:var(--rd-ls-heading,-0.01em)}
.cl-hero__lede{font-size:19px;line-height:1.6;color:var(--rd-muted,#474D6B);margin:20px 0 0;max-width:600px}
.cl-hero__sub{font-size:26px;font-weight:800;color:var(--rd-primary,#478EC1);margin:26px 0 0}
.cl-hero__body{font-size:18px;line-height:1.75;margin:14px 0 0;max-width:620px}
.cl-hero__img{width:100%;object-fit:cover;border-radius:16px;display:block}
.cl-badgecard{background:var(--rd-background,#FFFFFF);border:1px solid var(--rd-border,#DFE5EE);border-radius:14px;padding:16px 20px;display:flex;align-items:center;gap:14px;box-shadow:0 10px 30px rgba(29,33,62,.12);margin-top:-38px;margin-left:24px;margin-right:24px;position:relative}
.cl-badgecard img{height:64px;width:auto;display:block}
.cl-badgecard__text{font-size:14px;line-height:1.4;font-weight:600;color:var(--rd-accent,#1D213E);max-width:150px}

/* utility bar */
.cl-ubar{background:var(--rd-accent,#1D213E);color:#CCD3E8;font-size:15px;padding:10px 32px}
.cl-ubar__inner{max-width:var(--rd-max-width,1180px);margin:0 auto;display:flex;gap:28px;align-items:center;justify-content:center;flex-wrap:wrap}
.cl-ubar__item{color:#CCD3E8;text-decoration:none}
.cl-ubar__item--strong{color:#FFFFFF;font-weight:600}
.cl-ubar__sep{opacity:.4}

/* proof strip */
.cl-proof{background:var(--rd-accent,#1D213E);padding:26px 32px}
.cl-proof__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;color:#E6E9F4;font-size:16px}
.cl-proof__item{display:flex;flex-direction:column;gap:4px}
.cl-proof__label{font-weight:700;color:#FFFFFF;font-size:17px}
.cl-proof__sub{color:var(--rd-c-navy-mute,#9BA3C2)}

/* split intro */
.cl-si--surface{background:var(--rd-surface,#F2F6FA)}
.cl-si--dark{background:var(--rd-accent,#1D213E);color:#E6E9F4}
.cl-si--dark .cl-h2{color:#FFFFFF}
.cl-si__split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.cl-si__body{display:flex;flex-direction:column;gap:20px;font-size:18px;line-height:1.75}
.cl-si__body p{margin:0}
.cl-si__body .cl-btns{margin-top:4px}

/* step cards */
.cl-steps{display:grid;gap:18px;margin-top:38px}
.cl-steps--2{grid-template-columns:repeat(2,1fr)}
.cl-steps--3{grid-template-columns:repeat(3,1fr)}
.cl-steps--4{grid-template-columns:repeat(4,1fr)}
.cl-step{background:var(--rd-background,#FFFFFF);border:1px solid var(--rd-border,#DFE5EE);border-radius:14px;padding:26px}
.cl-step__n{font-weight:800;font-size:34px;color:var(--rd-primary,#478EC1);line-height:1}
.cl-step p{font-size:17px;line-height:1.7;margin:14px 0 0}

/* feature split */
.cl-fsplit{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.cl-fsplit--imgleft .cl-fsplit__main{order:2}
.cl-fsplit__cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}
.cl-fsplit__card{background:var(--rd-background,#FFFFFF);border-radius:12px;padding:22px}
.cl-fsplit__card h3{font-size:19px;font-weight:700;margin:0;color:var(--rd-accent,#1D213E)}
.cl-fsplit__card p{font-size:16.5px;line-height:1.6;margin:8px 0 0}
.cl-fsplit__media img{width:100%;object-fit:cover;border-radius:16px;display:block}

/* check grid */
.cl-checks{display:grid;gap:16px;margin-top:36px}
.cl-checks--2{grid-template-columns:repeat(2,1fr)}
.cl-checks--3{grid-template-columns:repeat(3,1fr)}
.cl-check{background:var(--rd-background,#FFFFFF);border:1px solid var(--rd-border,#DFE5EE);border-radius:12px;padding:20px 22px;display:flex;gap:14px;align-items:flex-start;font-size:18px;font-weight:600;line-height:1.5;color:var(--rd-accent,#1D213E)}
.cl-check__tick{color:var(--rd-primary,#478EC1);font-weight:700}
.cl-check--cta{background:var(--rd-accent,#1D213E);border-color:var(--rd-accent,#1D213E);flex-direction:column;gap:12px;align-items:flex-start}
.cl-check__ctatitle{color:#FFFFFF;font-size:18px;font-weight:700;line-height:1.5}
.cl-check--cta .cl-btn{padding:13px 22px;font-size:16px}

/* bio panel */
.cl-bio{display:grid;grid-template-columns:0.85fr 1.15fr;gap:60px;align-items:start}
.cl-bio__portrait{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:16px;display:block}
.cl-bio__sig{height:70px;width:auto;display:block;margin-top:22px}
.cl-bio__creds{border:1px solid var(--rd-border,#DFE5EE);border-radius:14px;padding:22px;margin-top:22px}
.cl-bio__credlist{display:flex;flex-direction:column;gap:12px;font-size:16px;line-height:1.55;color:var(--rd-muted,#474D6B)}
.cl-bio__body{display:flex;flex-direction:column;gap:18px;font-size:18px;line-height:1.78;margin-top:22px}
.cl-bio__body p{margin:0}
.cl-bio__cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}
.cl-bio__card{background:var(--rd-surface,#F2F6FA);border-radius:12px;padding:22px}
.cl-bio__card h3{font-size:20px;font-weight:700;margin:0;color:var(--rd-accent,#1D213E)}
.cl-bio__card p{font-size:16.5px;line-height:1.65;margin:8px 0 0}

/* compare */
.cl-cmp{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px}
.cl-cmp__col{border:1px solid var(--rd-border,#DFE5EE);border-radius:14px;padding:30px}
.cl-cmp__col--hi{border:2px solid var(--rd-primary,#478EC1);background:var(--rd-c-tint,#EFF5FB)}
.cl-cmp__title{font-size:21px;font-weight:700;margin:0;color:var(--rd-accent,#1D213E)}
.cl-cmp__title--dim{color:var(--rd-c-dim,#7A809B)}
.cl-cmp__list{display:flex;flex-direction:column;gap:12px;margin-top:16px;font-size:17px;line-height:1.6;color:var(--rd-c-deep,#2B3054)}
.cl-cmp__list--dim{color:var(--rd-c-dim,#7A809B)}

/* media cards */
.cl-mcards{display:grid;gap:22px;margin-top:36px}
.cl-mcards--2{grid-template-columns:repeat(2,1fr)}
.cl-mcards--3{grid-template-columns:repeat(3,1fr)}
.cl-mcard{border:1px solid var(--rd-border,#DFE5EE);border-radius:14px;overflow:hidden;background:var(--rd-background,#FFFFFF);display:flex;flex-direction:column}
.cl-mcard img{width:100%;object-fit:cover;display:block}
.cl-mcard__body{padding:22px;display:flex;flex-direction:column;gap:8px;flex:1}
.cl-mcard__body h3{font-size:21px;font-weight:700;margin:0;color:var(--rd-accent,#1D213E)}
.cl-mcard__body p{font-size:16.5px;line-height:1.6;margin:0;color:var(--rd-muted,#474D6B)}
.cl-mcard__link{margin-top:auto;padding-top:8px;color:var(--rd-primary,#478EC1);font-weight:600;text-decoration:none}

/* reviews */
.cl-rev__head{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:start}
.cl-ratecard{display:flex;align-items:center;gap:14px;border:1px solid var(--rd-border,#DFE5EE);border-radius:12px;padding:16px 20px}
.cl-ratecard__score{font-weight:800;font-size:38px;color:var(--rd-accent,#1D213E);line-height:1}
.cl-ratecard__meta{font-size:16px;line-height:1.4}
.cl-stars{color:var(--rd-c-gold,#E8A33D);letter-spacing:2px}
.cl-revs{display:grid;gap:22px;margin-top:36px}
.cl-revs--2{grid-template-columns:repeat(2,1fr)}
.cl-revs--3{grid-template-columns:repeat(3,1fr)}
.cl-rev{border:1px solid var(--rd-border,#DFE5EE);border-radius:14px;padding:26px;display:flex;flex-direction:column;gap:14px}
.cl-rev .cl-stars{font-size:18px}
.cl-rev__quote{font-size:17.5px;line-height:1.7;color:var(--rd-c-deep,#2B3054);margin:0}
.cl-rev__by{margin-top:auto;font-weight:700;color:var(--rd-accent,#1D213E)}
.cl-rev__src{font-weight:500;font-size:15px;margin-left:6px;color:var(--rd-primary,#478EC1)}

/* arrow links */
.cl-links{display:grid;gap:12px;margin-top:32px}
.cl-links--1{grid-template-columns:1fr}
.cl-links--2{grid-template-columns:repeat(2,1fr)}
.cl-linkrow{display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--rd-background,#FFFFFF);border:1px solid var(--rd-border,#DFE5EE);border-radius:12px;padding:20px 22px;font-size:17.5px;font-weight:600;color:var(--rd-text,#1D213E);text-decoration:none}
.cl-linkrow span:last-child{color:var(--rd-primary,#478EC1)}

/* feature bullets */
.cl-fb--dark{background:var(--rd-accent,#1D213E);color:#E6E9F4}
.cl-fb--dark .cl-h2{color:#FFFFFF}
.cl-fb--dark .cl-note{color:var(--rd-c-navy-mute,#9BA3C2)}
.cl-fb__listintro{font-weight:600}
.cl-fb__list{margin:20px 0 0;padding-left:22px;display:flex;flex-direction:column;gap:10px;font-size:17px;line-height:1.6;max-width:860px}

/* chips */
.cl-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.cl-chip{border:1px solid var(--rd-border,#DFE5EE);border-radius:999px;padding:9px 18px;font-size:16px;font-weight:600;color:var(--rd-accent,#1D213E);background:var(--rd-background,#FFFFFF)}
.cl-fb--dark .cl-chip{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#FFFFFF}

/* footer */
.cl-footer{background:var(--rd-c-footer,#151831);padding:72px 32px 32px;color:#DCE1F0}
.cl-footer__grid{display:grid;grid-template-columns:1.3fr 0.7fr 1fr 1fr;gap:40px}
.cl-footer__logo{height:auto;display:block}
.cl-footer__blurb{font-size:16px;line-height:1.7;color:var(--rd-c-navy-mute,#9BA3C2);margin:20px 0 0}
.cl-footer__socials{display:flex;flex-wrap:wrap;gap:16px;margin-top:20px;font-size:15px}
.cl-footer__socials a{color:#CCD3E8;text-decoration:none}
.cl-footer__badge{display:inline-block;margin-top:22px}
.cl-footer__badge img{height:56px;width:auto;display:block}
.cl-footer__label{font-size:13px;font-weight:700;letter-spacing:.16em;color:#7C85AD;margin-bottom:16px;text-transform:uppercase}
.cl-footer__links{display:flex;flex-direction:column;gap:10px;font-size:16px}
.cl-footer__links a{color:#DCE1F0;text-decoration:none}
.cl-footer__addr{font-size:16px;line-height:1.7;color:#DCE1F0}
.cl-footer__phone{display:inline-block;margin-top:14px;font-size:19px;font-weight:700;color:#FFFFFF;text-decoration:none}
.cl-footer__dirwrap{margin-top:14px}
.cl-footer__dir{color:var(--rd-c-link,#9CC6E8);font-weight:600;text-decoration:none}
.cl-footer__hours{display:flex;flex-direction:column;gap:10px;font-size:16px;color:#DCE1F0}
.cl-footer__day{color:#FFFFFF;font-weight:600}
.cl-footer__legal{margin-top:44px;padding-top:22px;border-top:1px solid rgba(255,255,255,.10);font-size:15px;color:var(--rd-c-navy-mute,#9BA3C2)}

/* ---- tablet: 768-1023px. Grids drop to 2-up or stack; 768 is a tablet, so
   the phone rules below must stop at 767px (see PERF/breakpoint note). ---- */
@media (max-width:1023px){
  .cl-sec{padding:72px 24px}
  .cl-hero{padding:56px 24px 48px}
  .cl-hero__grid{grid-template-columns:1fr;gap:36px}
  .cl-hero__h1{font-size:46px}
  .cl-badgecard{margin-top:16px;margin-left:0;margin-right:0}
  .cl-bio{grid-template-columns:1fr;gap:36px}
  .cl-si__split{grid-template-columns:1fr;gap:24px}
  .cl-steps--4{grid-template-columns:repeat(2,1fr)}
  .cl-fsplit{grid-template-columns:1fr;gap:32px}
  .cl-fsplit--imgleft .cl-fsplit__main{order:0}
  .cl-h2,.cl-h2--lg,.cl-h2--wide{font-size:34px}
  .cl-mcards--3,.cl-revs--3{grid-template-columns:repeat(2,1fr)}
  .cl-proof__grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .cl-footer__grid{grid-template-columns:1fr 1fr;gap:32px}
  .cl-footer{padding:56px 24px 28px}
}
@media (max-width:767px){
  .cl-hide-sm{display:none}
  .cl-ubar{font-size:14px;padding:8px 16px}
  .cl-ubar__inner{gap:10px}
  .cl-sec{padding:56px 20px}
  .cl-hero{padding:40px 20px 40px}
  .cl-hero__h1{font-size:36px;line-height:1.12}
  .cl-hero__lede{font-size:17px}
  .cl-hero__sub{font-size:22px}
  .cl-h2,.cl-h2--lg,.cl-h2--wide{font-size:28px}
  .cl-lead,.cl-note{font-size:17px}
  .cl-btns{gap:10px}
  .cl-btn{padding:15px 22px;font-size:16px;width:100%;text-align:center}
  .cl-btn--outline{padding:13.5px 20px}
  .cl-checks--2,.cl-checks--3,.cl-mcards--2,.cl-mcards--3,
  .cl-revs--2,.cl-revs--3,.cl-cmp,.cl-bio__cards,.cl-links--2{grid-template-columns:1fr}
  .cl-proof__grid{grid-template-columns:1fr}
  .cl-steps--2,.cl-steps--3,.cl-steps--4,.cl-fsplit__cards{grid-template-columns:1fr}
  .cl-rev__head{grid-template-columns:1fr}
  .cl-footer__grid{grid-template-columns:1fr}
  .cl-cmp__col{padding:22px}
}

.rt-h2{font-family:var(--rd-font-heading,inherit);font-size:clamp(28px,4vw,44px);line-height:1.05;letter-spacing:.01em;color:var(--rd-text,#1A1A1A);margin:0 0 18px;text-transform:uppercase}
.rt-eyebrow{font-family:var(--rd-font-heading,inherit);letter-spacing:.14em;text-transform:uppercase;color:var(--rd-c-brand-red,#E02B20);font-size:14px;margin-bottom:10px}
.rt-btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:24px}
.rt-align--center .rt-btns{justify-content:center}
.rt-btn{display:inline-flex;align-items:center;font-family:var(--rd-font-heading,inherit);text-transform:uppercase;letter-spacing:.06em;font-size:15px;padding:14px 40px;border-radius:3px;text-decoration:none;border:2px solid transparent;transition:background .2s,color .2s,border-color .2s;cursor:pointer}
.rt-btn::after{content:'→';max-width:0;opacity:0;overflow:hidden;transform:translateX(-6px);transition:max-width .25s,opacity .2s,transform .25s;white-space:nowrap}
.rt-btn:hover::after{max-width:1.4em;opacity:1;transform:translateX(0);margin-left:.5em}
.rt-btn--primary{background:var(--rd-c-brand-red,#E02B20);color:var(--rd-primary-contrast,#FFFFFF);border-color:var(--rd-c-brand-red,#E02B20)}
.rt-btn--primary:hover{background:var(--rd-c-deep-red,#AA220D);border-color:var(--rd-c-deep-red,#AA220D)}
.rt-btn--cream{background:var(--rd-c-cream,#EAE4CB);color:var(--rd-text,#1A1A1A);border-color:var(--rd-c-cream,#EAE4CB)}
.rt-btn--cream:hover{background:var(--rd-c-gold-tan,#DAD0A4);border-color:var(--rd-c-gold-tan,#DAD0A4)}
.rt-btn--outline{background:transparent;color:var(--rd-c-brand-red,#E02B20);border-color:var(--rd-c-brand-red,#E02B20)}
.rt-btn--outline:hover{background:var(--rd-c-brand-red,#E02B20);color:var(--rd-primary-contrast,#FFFFFF);border-color:var(--rd-c-brand-red,#E02B20)}

/* alignment helpers */
.rt-align--center{text-align:center}
.rt-align--left{text-align:left}
.rt-align--center .rt-eyebrow{}

/* tones */
.rt-tone--red{background:var(--rd-c-brand-red,#E02B20);color:var(--rd-primary-contrast,#FFFFFF)}
.rt-tone--red .rt-h2,.rt-tone--red .rt-eyebrow{color:var(--rd-primary-contrast,#FFFFFF)}
.rt-tone--cream{background:var(--rd-c-cream,#EAE4CB);color:var(--rd-text,#1A1A1A)}
.rt-tone--plain{background:var(--rd-background,#FFFFFF);color:var(--rd-text,#1A1A1A)}

/* announcement — red/dark-red checkerboard */
.rt-announce{color:#fff;background-color:var(--rd-c-brand-red,#E02B20);background-image:conic-gradient(from 0deg,var(--rd-c-deep-red,#AA220D) 0 25%,rgba(0,0,0,0) 0 50%,var(--rd-c-deep-red,#AA220D) 0 75%,rgba(0,0,0,0) 0);background-size:26px 26px}
.rt-announce__in{max-width:var(--rd-max-width,1200px);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:7px 24px;font-family:var(--rd-font-heading,inherit);letter-spacing:.1em;text-transform:uppercase;font-size:13px}
.rt-announce__socials{display:flex;gap:15px;align-items:center;flex:1}
.rt-announce__social{color:#fff;display:inline-flex}
.rt-announce__social svg{width:17px;height:17px;fill:currentColor;display:block}
.rt-announce__social:hover{opacity:.75}
.rt-announce__msg{color:#fff;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.rt-announce__msg::before{content:'◆';margin-right:12px;font-size:8px;vertical-align:middle;display:inline-block;text-decoration:none}
.rt-announce__msg::after{content:'◆';margin-left:12px;font-size:8px;vertical-align:middle;display:inline-block;text-decoration:none}
.rt-announce__see{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:9px;flex:1;justify-content:flex-end;white-space:nowrap}
.rt-announce__see:hover{opacity:.8}
.rt-announce__see-ic{display:inline-flex}
.rt-announce__see-ic svg{width:16px;height:16px;fill:currentColor;display:block}

/* header — two tier: flank buttons + centered logo, then nav bar */
.rt-header{background:var(--rd-c-cream,#EAE4CB);padding:14px 24px 0}
.rt-header__top{max-width:var(--rd-max-width,1200px);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative;min-height:54px}
.rt-header__flank{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;letter-spacing:.06em;font-size:15px;padding:15px 36px;border-radius:var(--rd-radius,6px);text-decoration:none;transition:background .2s}
.rt-header__flank--dark{background:var(--rd-text,#1A1A1A);color:#fff}
.rt-header__flank--dark:hover{background:var(--rd-c-charcoal,#3D3D3D)}
.rt-header__flank--red{background:var(--rd-c-brand-red,#E02B20);color:#fff}
.rt-header__flank--red:hover{background:var(--rd-c-deep-red,#AA220D)}
.rt-header__flank--ghost{visibility:hidden;padding:15px 36px}
.rt-header__logo{position:absolute;left:50%;top:-6px;transform:translateX(-50%);z-index:3}
.rt-header__logo img{height:122px;width:auto;display:block}
.rt-header__wordmark{font-family:var(--rd-font-heading,inherit);font-size:34px;text-transform:uppercase;color:var(--rd-text,#1A1A1A);text-decoration:none}
.rt-header__bar{max-width:var(--rd-max-width,1200px);margin:-16px auto 0;position:relative;z-index:1;display:flex;align-items:center;gap:22px;background:var(--rd-background,#FFFFFF);border:2px solid var(--rd-c-brand-red,#E02B20);border-radius:var(--rd-radius,6px);padding:9px 22px}
.rt-header__search{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:none;border:1.5px solid var(--rd-border,#E2DAC4);border-radius:var(--rd-radius,6px);color:var(--rd-text,#1A1A1A)}
.rt-header__search:hover{border-color:var(--rd-c-brand-red,#E02B20);color:var(--rd-c-brand-red,#E02B20)}
.rt-header__search svg{width:18px;height:18px;fill:currentColor}
.rt-header__nav{list-style:none;display:flex;gap:30px;margin:0 auto;padding:0;align-items:center}
.rt-header__nav>li{position:relative}
.rt-header__nav>li>a{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;letter-spacing:.05em;color:var(--rd-text,#1A1A1A);text-decoration:none;font-size:16px;display:inline-flex;align-items:center;gap:5px;padding:10px 0}
.rt-header__nav>li>a:hover{color:var(--rd-c-brand-red,#E02B20)}
.rt-caret{display:inline-flex}
.rt-caret svg{width:12px;height:12px;fill:currentColor}
.rt-subnav{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(6px);min-width:210px;background:var(--rd-background,#FFFFFF);border:1px solid var(--rd-border,#E2DAC4);border-radius:var(--rd-radius,6px);box-shadow:0 14px 34px rgba(0,0,0,.15);padding:8px;list-style:none;margin:0;opacity:0;visibility:hidden;transition:opacity .18s ease,transform .18s ease;z-index:40}
.rt-header__nav>li.rt-hassub:hover .rt-subnav{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.rt-subnav a{display:block;padding:9px 13px;color:var(--rd-text,#1A1A1A);text-decoration:none;font-size:14px;border-radius:4px;white-space:nowrap}
.rt-subnav a:hover{background:var(--rd-c-cream,#EAE4CB);color:var(--rd-c-brand-red,#E02B20)}
.rt-header__end{display:flex;align-items:center;gap:16px;margin-left:auto;flex:none}
.rt-header__phone{font-family:var(--rd-font-heading,inherit);color:var(--rd-c-brand-red,#E02B20);text-decoration:none;font-size:16px;white-space:nowrap;display:inline-flex;align-items:center;gap:7px}
.rt-header__phone-ic{display:inline-flex}
.rt-header__phone-ic svg{width:16px;height:16px;fill:currentColor;display:block}
.rt-mnav{display:none}

/* mobile nav (details/summary, no JS) */
.rt-mnav__toggle{list-style:none;cursor:pointer;display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;margin-left:auto}
.rt-mnav__toggle::-webkit-details-marker{display:none}
.rt-mnav__toggle span{display:block;height:3px;width:26px;background:var(--rd-text,#1A1A1A);border-radius:2px}
.rt-mnav__list{list-style:none;margin:14px 0 0;padding:14px 0 4px;border-top:1px solid var(--rd-border,#E2DAC4);display:flex;flex-direction:column;gap:12px;width:100%}
.rt-mnav__list a{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;color:var(--rd-text,#1A1A1A);text-decoration:none;font-size:18px}
.rt-mnav__cta{color:var(--rd-c-brand-red,#E02B20)!important}

/* hero */
.rt-hero{background:var(--rd-c-cream,#EAE4CB);padding:18px 24px var(--rd-section-padding,72px)}
.rt-hero__frame{max-width:var(--rd-max-width,1200px);margin:0 auto;border:2px solid var(--rd-c-brand-red,#E02B20);border-radius:var(--rd-radius,6px);padding:clamp(52px,6vw,88px) clamp(24px,5vw,72px) clamp(150px,18vw,240px);position:relative;overflow:hidden;text-align:center}
.rt-hero__pattern{position:absolute;inset:0;z-index:0;background-repeat:repeat;background-position:center;background-size:560px auto;opacity:.28;pointer-events:none}
.rt-hero__photo{position:absolute;bottom:-2px;z-index:1;width:min(21%,270px);height:auto;pointer-events:none}
.rt-hero__photo--l{left:-1%}
.rt-hero__photo--r{right:-1%}
.rt-hero__sticker{position:absolute;z-index:3;left:2.5%;top:58%;width:clamp(76px,8vw,116px);height:auto;transform:rotate(-9deg)}
.rt-hero__body{position:relative;z-index:2}
.rt-hero__badge{position:absolute;z-index:4;top:-2px;left:50%;transform:translateX(-50%);background:var(--rd-c-brand-red,#E02B20);color:#fff;font-family:var(--rd-font-heading,inherit);text-transform:uppercase;letter-spacing:.08em;font-size:14px;line-height:1.05;text-align:center;padding:14px 22px 12px;border-radius:0 0 16px 16px;max-width:96px}
.rt-hero__title{position:relative;font-family:var(--rd-font-heading,inherit);font-size:clamp(52px,10vw,120px);line-height:.92;letter-spacing:.005em;color:var(--rd-c-brand-red,#E02B20);text-transform:uppercase;margin:0}
.rt-hero__accent{position:absolute;z-index:4;top:9%;right:12%;width:clamp(30px,3.4vw,46px);height:auto}
.rt-hero__eyebrow{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;letter-spacing:.14em;color:var(--rd-c-brand-red,#E02B20);font-size:15px;margin-top:26px;text-align:center}
.rt-hero__script{font-family:"Reenie Beanie","Comic Sans MS",cursive;font-size:clamp(30px,4.4vw,46px);line-height:1;color:var(--rd-text,#1A1A1A);margin-top:6px;text-align:center}
.rt-hero__sub{font-size:clamp(16px,2.2vw,20px);color:var(--rd-text,#1A1A1A);max-width:520px;margin:16px auto 0;text-align:center}
.rt-hero__tags{list-style:none;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:0;margin:24px 0 0}
.rt-hero__tags li{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;letter-spacing:.05em;font-size:14px;color:var(--rd-text,#1A1A1A);border:1.5px solid var(--rd-c-brand-red,#E02B20);border-radius:100px;padding:8px 18px}
.rt-hero .rt-btns{justify-content:center}

/* generic section frame for promo/story/band */
.rt-promo,.rt-story{padding:var(--rd-section-padding,72px) 20px}
.rt-promo__in,.rt-story__in{max-width:var(--rd-max-width,1200px);margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.rt-promo--right .rt-promo__in{direction:rtl}
.rt-promo--right .rt-promo__in>*{direction:ltr}
.rt-story--left .rt-story__in{direction:rtl}
.rt-story--left .rt-story__in>*{direction:ltr}
.rt-promo__media img,.rt-story__media img{width:100%;height:auto;border-radius:var(--rd-radius,6px);display:block}
.rt-tone--red .rt-btn--outline{color:#fff;border-color:#fff}
.rt-tone--red .rt-btn--outline:hover{background:#fff;color:var(--rd-c-brand-red,#E02B20)}

/* specials carousel */
.rt-specials{padding:var(--rd-section-padding,72px) 0}
.rt-specials__head{max-width:var(--rd-max-width,1200px);margin:0 auto 24px;padding:0 20px;text-align:center}
.rt-specials__track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 20px 18px;-webkit-overflow-scrolling:touch}
.rt-special{flex:0 0 clamp(220px,72vw,300px);scroll-snap-align:start;background:var(--rd-background,#FFFFFF);border:1px solid var(--rd-border,#E2DAC4);border-radius:var(--rd-radius,6px);overflow:hidden;text-decoration:none;color:var(--rd-text,#1A1A1A);transition:transform .2s ease,box-shadow .2s ease}
.rt-special:hover{transform:translateY(-5px);box-shadow:0 14px 34px rgba(0,0,0,.14)}
.rt-special__media{aspect-ratio:4/3;overflow:hidden;background:var(--rd-c-cream,#EAE4CB)}
.rt-special__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.rt-special:hover .rt-special__media img{transform:scale(1.06)}
.rt-special__body{padding:16px 18px}
.rt-special__title{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;font-size:20px;margin:0 0 4px;color:var(--rd-c-brand-red,#E02B20)}
.rt-special__tag{margin:0;color:var(--rd-muted,#666666);font-size:14px}

/* feature band */
.rt-band{padding:var(--rd-section-padding,72px) 20px}
.rt-band__in{max-width:var(--rd-max-width,1200px);margin:0 auto}
.rt-band__head{margin-bottom:38px}
.rt-band__head.rt-align--center{text-align:center}
.rt-band__head.rt-align--left{text-align:left;max-width:var(--rd-max-width,1200px)}
.rt-band__intro{max-width:62ch;opacity:.92}
.rt-band__head.rt-align--center .rt-band__intro{margin-left:auto;margin-right:auto}
.rt-features{display:grid;grid-template-columns:repeat(var(--rt-cols,3),1fr);gap:34px}
.rt-feature{text-align:center}
.rt-feature__icon{font-size:34px;display:block;margin-bottom:12px}
.rt-feature__icon-img{width:76px;height:76px;object-fit:contain;display:block;margin:0 auto 16px}
.rt-feature__title{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;font-size:21px;margin:0 0 8px;letter-spacing:.02em}
.rt-feature__body{margin:0;opacity:.92;font-size:15px;line-height:1.55}

/* section intro (centered / left full-width copy) */
.rt-intro{padding:var(--rd-section-padding,72px) 20px}
.rt-intro__in{max-width:820px}
.rt-intro.rt-align--center .rt-intro__in{margin:0 auto}
.rt-intro.rt-align--left .rt-intro__in{max-width:var(--rd-max-width,1200px);margin:0 auto}
.rt-intro__sticker{width:96px;height:auto;margin:0 auto 18px;display:block}
.rt-intro.rt-align--left .rt-intro__sticker{margin-left:0}
.rt-intro p{opacity:.92;line-height:1.7}

/* section edge (pizza-dough divider) */
.rt-edge{line-height:0;font-size:0}
.rt-edge__img{width:100%;height:auto;display:block}
.rt-edge__img--flip{transform:scaleY(-1)}

/* reviews */
.rt-reviews{padding:var(--rd-section-padding,72px) 20px}
.rt-reviews__in{max-width:var(--rd-max-width,1200px);margin:0 auto}
.rt-reviews__head{text-align:center;margin-bottom:32px}
.rt-reviews__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}
.rt-review{margin:0;background:var(--rd-background,#FFFFFF);border:1px solid var(--rd-border,#E2DAC4);border-radius:var(--rd-radius,6px);padding:24px;transition:transform .2s ease,box-shadow .2s ease}
.rt-review:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.09)}
.rt-stars{color:var(--rd-c-brand-red,#E02B20);letter-spacing:3px;margin-bottom:10px}
.rt-review blockquote{margin:0 0 14px;font-size:16px;line-height:1.6;color:var(--rd-text,#1A1A1A)}
.rt-review figcaption{display:flex;flex-direction:column;gap:2px}
.rt-review__author{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;font-size:15px}
.rt-review__source{color:var(--rd-muted,#666666);font-size:13px;text-transform:uppercase;letter-spacing:.08em}

/* contact band */
.rt-contact{padding:var(--rd-section-padding,72px) 20px}
.rt-contact__in{max-width:var(--rd-max-width,1200px);margin:0 auto}
.rt-contact__cols{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:clamp(24px,4vw,48px)}
.rt-contact__phone a{color:inherit;text-decoration:none;font-family:var(--rd-font-heading,inherit);font-size:24px}
.rt-contact__addr{font-style:normal;display:flex;flex-direction:column;gap:2px;margin:10px 0 0}
.rt-contact__hh{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;font-size:18px;margin:0 0 10px}
.rt-contact__hours{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:15px}
.rt-contact__map{min-height:220px}
.rt-contact__map iframe{width:100%;height:100%;min-height:220px;border:0;border-radius:var(--rd-radius,6px)}

/* footer */
.rt-footer{background:var(--rd-c-ink,#1A1A1A);color:#EDE7D6;padding:56px 20px 0}
.rt-footer__in{max-width:var(--rd-max-width,1200px);margin:0 auto;display:grid;grid-template-columns:1.4fr repeat(auto-fit,minmax(140px,1fr));gap:36px}
.rt-footer__logo{height:64px;width:auto}
.rt-footer__wordmark{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;font-size:26px;color:#fff}
.rt-footer__tag{opacity:.75;margin:12px 0 0;font-size:14px;max-width:38ch}
.rt-footer__social{display:flex;gap:16px;margin-top:16px}
.rt-footer__social a{color:var(--rd-c-gold-tan,#DAD0A4);text-decoration:none;text-transform:uppercase;font-size:13px;letter-spacing:.06em}
.rt-footer__col h4{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;font-size:15px;color:#fff;margin:0 0 14px}
.rt-footer__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.rt-footer__col a{color:#EDE7D6;text-decoration:none;opacity:.85;font-size:14px}
.rt-footer__col a:hover{opacity:1;color:var(--rd-c-gold-tan,#DAD0A4)}
.rt-footer__legal{max-width:var(--rd-max-width,1200px);margin:36px auto 0;border-top:1px solid rgba(255,255,255,.12);padding:20px 0;font-size:13px;opacity:.6}

/* menu */
.rt-empty{max-width:var(--rd-max-width,1200px);margin:0 auto;padding:48px 20px;text-align:center;color:var(--rd-muted,#666666)}
.rt-catnav{background:var(--rd-background,#FFFFFF);border-bottom:1px solid var(--rd-border,#E2DAC4)}
.rt-catnav--sticky{position:sticky;top:0;z-index:20}
.rt-catnav ul{max-width:var(--rd-max-width,1200px);margin:0 auto;padding:12px 20px;display:flex;gap:18px;overflow-x:auto;list-style:none}
.rt-catnav a{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;font-size:14px;color:var(--rd-text,#1A1A1A);text-decoration:none;white-space:nowrap;letter-spacing:.04em}
.rt-catnav a:hover{color:var(--rd-c-brand-red,#E02B20)}
.rt-menu{max-width:var(--rd-max-width,1200px);margin:0 auto;padding:var(--rd-section-padding,72px) 20px}
.rt-menu__title{text-align:center}
.rt-menu__section{scroll-margin-top:80px;margin-bottom:48px}
.rt-menu__cathead{border-bottom:2px solid var(--rd-c-brand-red,#E02B20);padding-bottom:10px;margin-bottom:22px}
.rt-menu__catname{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;font-size:28px;color:var(--rd-c-brand-red,#E02B20);margin:0}
.rt-menu__catdesc{margin:6px 0 0;color:var(--rd-muted,#666666)}
.rt-menu__items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px 40px}
.rt-menu__item{display:flex;gap:16px}
.rt-menu__thumb{flex:0 0 84px;height:84px;border-radius:var(--rd-radius,6px);overflow:hidden;background:var(--rd-c-cream,#EAE4CB)}
.rt-menu__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.rt-menu__itembody{flex:1;min-width:0}
.rt-menu__itemhead{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.rt-menu__itemname{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;font-size:18px;color:var(--rd-text,#1A1A1A)}
.rt-menu__flag{display:inline-block;margin-left:8px;background:var(--rd-c-brand-red,#E02B20);color:#fff;font-size:10px;letter-spacing:.08em;padding:2px 7px;border-radius:100px;vertical-align:middle}
.rt-menu__price{font-family:var(--rd-font-heading,inherit);color:var(--rd-c-brand-red,#E02B20);white-space:nowrap;font-size:15px}
.rt-menu__itemdesc{margin:4px 0 0;color:var(--rd-muted,#666666);font-size:14px;line-height:1.5}
.rt-menu__sizes{border-collapse:collapse;margin:10px 0 0;max-width:240px;width:100%}
.rt-menu__sizes th{font-family:var(--rd-font-heading,inherit);text-transform:uppercase;letter-spacing:.02em;font-weight:400;font-size:14px;text-align:left;color:var(--rd-text,#1A1A1A);padding:4px 0;border-bottom:1px dotted var(--rd-border,#E2DAC4);white-space:nowrap}
.rt-menu__sizes td{font-family:var(--rd-font-heading,inherit);font-size:14px;text-align:right;color:var(--rd-c-brand-red,#E02B20);padding:4px 0;border-bottom:1px dotted var(--rd-border,#E2DAC4);white-space:nowrap}
.rt-menu__sizes tr:last-child th,.rt-menu__sizes tr:last-child td{border-bottom:0}
.rt-menu__itemnote{margin:6px 0 0;color:var(--rd-c-brand-red,#E02B20);font-size:12px;font-style:italic}

/* responsive */
@media(max-width:860px){
  .rt-header__nav,.rt-header__end,.rt-header__search{display:none}
  .rt-mnav{display:block;width:100%}
  .rt-header__bar{justify-content:flex-end;padding:10px 16px}
  .rt-header__top{min-height:44px}
  .rt-header__logo img{height:88px}
  .rt-header__flank{padding:11px 18px;font-size:13px}
  .rt-hero__photo,.rt-hero__sticker,.rt-hero__accent{display:none}
  .rt-promo__in,.rt-story__in,.rt-contact__cols{grid-template-columns:1fr}
  .rt-promo--right .rt-promo__in,.rt-story--left .rt-story__in{direction:ltr}
  .rt-features{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .rt-features{grid-template-columns:1fr}
  .rt-announce__msg{font-size:11px}
  .rt-menu__items{grid-template-columns:1fr}
}

/* ---- layout primitives ---- */
.mm-wrap{width:100%;max-width:82rem;margin:0 auto;padding:0 1.25rem}
@media(min-width:640px){.mm-wrap{padding:0 2rem}}
@media(min-width:1024px){.mm-wrap{padding:0 3rem}}
.mm-sec{padding:4rem 0;background:var(--rd-background,#0a0a0b);color:var(--rd-text,#f2f2f3)}
@media(min-width:640px){.mm-sec{padding:5rem 0}}
@media(min-width:1024px){.mm-sec{padding:7rem 0}}
.mm-sec--surface{background:var(--rd-surface,#131316)}
.mm-sec--bt{border-top:1px solid var(--rd-border,rgba(255,255,255,0.10))}

/* ---- typography ---- */
.mm-d1{font-family:var(--rd-font-heading,"Sora",ui-sans-serif,system-ui,sans-serif);letter-spacing:-.03em;font-size:clamp(2.5rem,1.6rem + 3.9vw,4.5rem);line-height:1.04;font-weight:600;margin:0;color:var(--rd-text,#f2f2f3)}
.mm-d2{font-family:var(--rd-font-heading,"Sora",ui-sans-serif,system-ui,sans-serif);letter-spacing:-.025em;font-size:clamp(2rem,1.5rem + 2.1vw,3rem);line-height:1.1;font-weight:600;margin:0;color:var(--rd-text,#f2f2f3)}
.mm-d3{font-family:var(--rd-font-heading,"Sora",ui-sans-serif,system-ui,sans-serif);font-size:clamp(1.375rem,1.2rem + .8vw,1.75rem);line-height:1.2;font-weight:600;margin:0;color:var(--rd-text,#f2f2f3)}
.mm-lede{color:var(--rd-muted,#a2a3a8);font-size:clamp(1.0625rem,1rem + .3vw,1.25rem);line-height:1.65;margin:0}
.mm-muted{color:var(--rd-muted,#a2a3a8);line-height:1.7;margin:0}
.mm-eyebrow{font-family:var(--rd-font-heading,"Sora",ui-sans-serif,system-ui,sans-serif);letter-spacing:.16em;text-transform:uppercase;color:var(--rd-c-primary-text,#ff4d4d);font-size:.75rem;font-weight:600;margin:0}
.mm-mt4{margin-top:1rem}.mm-mt5{margin-top:1.25rem}.mm-mt6{margin-top:1.5rem}.mm-mt8{margin-top:2rem}.mm-mt12{margin-top:3rem}
.mm-head{max-width:48rem}
.mm-footnote{margin-top:2rem;max-width:56rem;font-size:.875rem;color:var(--rd-muted,#a2a3a8)}

/* ---- buttons ---- */
.mm-btns{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.mm-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:calc(var(--rd-radius,8px) - 2px);font-weight:500;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;border:1px solid transparent;cursor:pointer}
.mm-btn--sm{height:2.25rem;padding:0 1rem;font-size:.875rem}
.mm-btn--lg{height:3.25rem;padding:0 1.75rem;font-size:1rem}
.mm-btn--bar{height:2.75rem;padding:0 .5rem;font-size:.9rem;white-space:nowrap}
.mm-btn--primary{background:var(--rd-primary,#d00000);color:var(--rd-primary-contrast,#f2f2f3)}
.mm-btn--primary:hover{background:var(--rd-c-primary-hover,#e10600)}
.mm-btn--outline{border-color:var(--rd-c-border-strong,rgba(255,255,255,0.20));background:transparent;color:var(--rd-text,#f2f2f3)}
.mm-btn--outline:hover{background:var(--rd-c-raised,#1b1b1f)}

/* ---- utility bar ---- */
.mm-ubar{display:none;border-bottom:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-surface,#131316);color:var(--rd-muted,#a2a3a8);font-size:.875rem}
@media(min-width:768px){.mm-ubar{display:block}}
.mm-ubar__inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-top:.5rem;padding-bottom:.5rem}
.mm-ubar__loc{display:flex;align-items:center;gap:.5rem;margin:0}
.mm-ubar__dot{display:inline-block;width:.375rem;height:.375rem;border-radius:50%;background:var(--rd-primary,#d00000)}
.mm-ubar__right{display:flex;align-items:center;gap:1.25rem;margin:0}
.mm-ubar__mute{color:var(--rd-muted,#a2a3a8);opacity:.7}
.mm-ubar__call{color:var(--rd-text,#f2f2f3);font-weight:500;text-decoration:none}
.mm-ubar__call:hover{color:var(--rd-c-primary-text,#ff4d4d)}

/* ---- header / nav ---- */
.mm-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--rd-border,rgba(255,255,255,0.10));background:color-mix(in oklab,var(--rd-background,#0a0a0b) 92%,transparent);backdrop-filter:blur(6px)}
.mm-header__inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-top:.875rem;padding-bottom:.875rem}
.mm-logo{display:inline-flex;align-items:center}
.mm-logo__img{height:2.75rem;width:auto;display:block}
.mm-logo__text{font-family:var(--rd-font-heading,"Sora",ui-sans-serif,system-ui,sans-serif);font-weight:700;color:var(--rd-text,#f2f2f3);font-size:1.05rem}
.mm-nav{display:none;align-items:center;gap:1.75rem}
@media(min-width:1024px){.mm-nav{display:flex}}
.mm-nav__item{position:relative;display:flex;align-items:center}
.mm-nav__link{font-size:.95rem;color:var(--rd-muted,#a2a3a8);text-decoration:none;transition:color .2s}
.mm-nav__link:hover{color:var(--rd-text,#f2f2f3)}
.mm-nav__chev{margin-left:.125rem;display:inline-flex;padding:.25rem;color:var(--rd-muted,#a2a3a8);background:none;border:0;cursor:pointer;font-size:.7rem;transition:transform .2s,color .2s}
.mm-nav__item:hover .mm-nav__chev{color:var(--rd-text,#f2f2f3)}
.mm-dd{position:absolute;left:0;top:100%;z-index:50;width:16rem;padding-top:.5rem;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility .15s}
.mm-nav__item:hover .mm-dd,.mm-nav__item:focus-within .mm-dd{opacity:1;visibility:visible;transform:translateY(0)}
.mm-dd>ul{list-style:none;margin:0;padding:.5rem 0;overflow:hidden;border-radius:var(--rd-radius,8px);border:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-c-raised,#1b1b1f);box-shadow:0 1px 0 0 var(--rd-c-border-strong,rgba(255,255,255,0.20)),0 32px 70px -34px #000}
.mm-dd a{display:block;padding:.625rem 1rem;font-size:.875rem;color:var(--rd-muted,#a2a3a8);text-decoration:none;transition:background-color .2s,color .2s}
.mm-dd a:hover{background:var(--rd-c-elevated,#232328);color:var(--rd-text,#f2f2f3)}
.mm-header__actions{display:none;align-items:center;gap:.75rem}
@media(min-width:1024px){.mm-header__actions{display:flex}}

/* mobile menu (details) */
.mm-mobile{position:relative}
@media(min-width:1024px){.mm-mobile{display:none}}
.mm-mobile__toggle{display:inline-flex;align-items:center;gap:.625rem;height:2.75rem;padding:.5rem;border:0;background:none;font-size:1rem;font-weight:500;color:var(--rd-text,#f2f2f3);cursor:pointer;list-style:none}
.mm-mobile__toggle::-webkit-details-marker{display:none}
.mm-mobile__label{font-size:1rem}
.mm-burger{position:relative;display:inline-block;width:1.625rem;height:1.125rem;flex-shrink:0}
.mm-burger>span{position:absolute;left:0;height:2.5px;width:100%;background:currentColor;border-radius:2px;transition:transform .3s cubic-bezier(.22,1,.36,1),top .3s cubic-bezier(.22,1,.36,1),opacity .15s ease}
.mm-burger>span:nth-child(1){top:0}
.mm-burger>span:nth-child(2){top:calc(50% - 1.25px)}
.mm-burger>span:nth-child(3){top:calc(100% - 2.5px)}
.mm-mobile[open] .mm-burger>span:nth-child(1){top:calc(50% - 1.25px);transform:rotate(45deg)}
.mm-mobile[open] .mm-burger>span:nth-child(2){opacity:0}
.mm-mobile[open] .mm-burger>span:nth-child(3){top:calc(50% - 1.25px);transform:rotate(-45deg)}
@media(prefers-reduced-motion:reduce){.mm-burger>span{transition:none}}
.mm-mobile__panel{position:absolute;right:0;top:calc(100% + .875rem);left:auto}
.mm-mobile[open] .mm-mobile__panel{position:fixed;left:0;right:0;top:auto;border-top:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-surface,#131316)}
.mm-mobile__list{list-style:none;margin:0;padding:1rem 0}
.mm-mobile__list>li{border-top:1px solid var(--rd-border,rgba(255,255,255,0.10))}
.mm-mobile__list>li:first-child{border-top:0}
.mm-mobile__list a{display:block;padding:.75rem 0;font-size:1rem;color:var(--rd-text,#f2f2f3);text-decoration:none}
.mm-mobile__cta{color:var(--rd-c-primary-text,#ff4d4d) !important}
.mm-mobile__sub>summary{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;cursor:pointer;list-style:none}
.mm-mobile__sub>summary::-webkit-details-marker{display:none}
.mm-mobile__sub ul{list-style:none;margin:0;padding:0 0 .5rem 1rem}
.mm-mobile__sub a{padding:.5rem 0;color:var(--rd-muted,#a2a3a8)}
.mm-mobile__chev{font-size:1.5rem;line-height:1;color:var(--rd-text,#f2f2f3);transition:transform .2s}
.mm-mobile__sub[open] .mm-mobile__chev{transform:rotate(180deg)}

/* ---- sticky action bar (mobile) ---- */
.mm-sticky{position:fixed;inset-inline:0;bottom:0;z-index:50;display:grid;grid-template-columns:1fr 1fr;gap:.5rem;padding:.625rem .75rem;border-top:1px solid var(--rd-border,rgba(255,255,255,0.10));background:color-mix(in oklab,var(--rd-surface,#131316) 95%,transparent);backdrop-filter:blur(6px)}
@media(min-width:1024px){.mm-sticky{display:none}}

/* ---- footer ---- */
.mm-footer{border-top:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-background,#0a0a0b);padding:4rem 0 7rem}
@media(min-width:1024px){.mm-footer{padding:4rem 0}}
.mm-footer__grid{display:grid;gap:3rem}
@media(min-width:1024px){.mm-footer__grid{grid-template-columns:1.3fr 1fr 1fr 1fr}}
.mm-footer__logo{height:5rem;width:auto;display:block}
.mm-footer__addr{margin-top:1rem;font-size:.875rem;color:var(--rd-muted,#a2a3a8);font-style:normal;line-height:1.7}
.mm-footer__addr a{color:var(--rd-text,#f2f2f3);text-decoration:none}
.mm-footer__addr a:hover{color:var(--rd-c-primary-text,#ff4d4d)}
.mm-footer__hours,.mm-footer__lic{margin-top:1rem;font-size:.875rem;color:var(--rd-muted,#a2a3a8)}
.mm-footer__socials{margin-top:1.5rem;display:flex;gap:.75rem}
.mm-social{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--rd-border,rgba(255,255,255,0.10));color:var(--rd-muted,#a2a3a8);transition:color .2s,border-color .2s}
.mm-social:hover{color:var(--rd-c-primary-text,#ff4d4d);border-color:var(--rd-c-primary-text,#ff4d4d)}
.mm-footer__h{font-family:var(--rd-font-heading,"Sora",ui-sans-serif,system-ui,sans-serif);font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--rd-text,#f2f2f3);margin:0}
.mm-footer__links{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-direction:column;gap:.625rem}
.mm-footer__links a{font-size:.875rem;color:var(--rd-muted,#a2a3a8);text-decoration:none;transition:color .2s}
.mm-footer__links a:hover{color:var(--rd-c-primary-text,#ff4d4d)}
.mm-footer__cities{display:grid;grid-template-columns:1fr 1fr;gap:.625rem 1rem}
.mm-footer__all{margin-top:1rem}
.mm-footer__all a{font-size:.875rem;color:var(--rd-muted,#a2a3a8);text-decoration:none}
.mm-footer__all a:hover{color:var(--rd-c-primary-text,#ff4d4d)}
.mm-footer__bottom{margin-top:3.5rem;padding-top:2rem;border-top:1px solid var(--rd-border,rgba(255,255,255,0.10));display:flex;flex-direction:column;gap:1rem;font-size:.875rem;color:var(--rd-muted,#a2a3a8)}
@media(min-width:640px){.mm-footer__bottom{flex-direction:row;align-items:center;justify-content:space-between}}
.mm-footer__bottom p{margin:0}
.mm-footer__legal{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}
.mm-footer__legal a{color:var(--rd-muted,#a2a3a8);text-decoration:none}
.mm-footer__legal a:hover{color:var(--rd-c-primary-text,#ff4d4d)}

/* ---- hero ---- */
.mm-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-background,#0a0a0b)}
.mm-hero__pad{position:relative;padding-top:3.5rem;padding-bottom:3.5rem}
@media(min-width:1024px){.mm-hero__pad{padding-top:5rem;padding-bottom:5rem}}
.mm-hero__grid{display:grid;align-items:center;gap:2.5rem}
@media(min-width:1024px){.mm-hero__grid{grid-template-columns:1.02fr 1fr;gap:4rem}}
.mm-hero__lede{max-width:42rem}
.mm-hero__note{margin-top:1.25rem;max-width:36rem;font-size:.875rem;color:var(--rd-muted,#a2a3a8)}
.mm-hero__media{position:relative}
@media(min-width:1024px){.mm-hero__media{margin-right:-4rem}}
@media(min-width:1280px){.mm-hero__media{margin-right:-6rem}}
.mm-hero__corner{pointer-events:none;position:absolute;bottom:-1rem;left:-1rem;display:none;width:6rem;height:6rem;border-bottom:2px solid var(--rd-primary,#d00000);border-left:2px solid var(--rd-primary,#d00000)}
@media(min-width:1024px){.mm-hero__corner{display:block}}

/* ---- figures ---- */
.mm-figure{margin:0}
.mm-figure__frame{overflow:hidden;border-radius:var(--rd-radius,8px);border:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-surface,#131316);aspect-ratio:4/3}
.mm-figure__frame--hero{aspect-ratio:4/3}
@media(min-width:1024px){.mm-figure__frame--hero{aspect-ratio:5/4}}
.mm-figure__img{height:100%;width:100%;object-fit:cover;display:block;transition:transform .7s ease-out}
.mm-figure:hover .mm-figure__img{transform:scale(1.02)}
.mm-figure__cap{margin-top:.75rem;font-size:.875rem;color:var(--rd-muted,#a2a3a8)}

/* ---- trust bar ---- */
.mm-trust{border-top:1px solid var(--rd-border,rgba(255,255,255,0.10));border-bottom:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-surface,#131316);background-image:repeating-linear-gradient(90deg,color-mix(in oklab,var(--rd-text,#f2f2f3) 8%,transparent) 0 1px,transparent 1px 88px)}
.mm-trust__list{list-style:none;margin:0;padding:1.25rem 0;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 2rem;font-size:.875rem;color:var(--rd-muted,#a2a3a8)}
.mm-trust__list li{display:flex;align-items:center;gap:.5rem}
.mm-trust__dot{display:inline-block;width:.375rem;height:.375rem;transform:rotate(45deg);background:var(--rd-c-verified,#9aa3ac)}
.mm-trust__fine{max-width:56rem;padding-bottom:1.25rem;font-size:.75rem;color:var(--rd-muted,#a2a3a8);opacity:.8;margin:0}

/* ---- breadcrumb + page header ---- */
.mm-crumb{border-bottom:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-surface,#131316);padding:.75rem 0;font-size:.875rem}
.mm-crumb__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .5rem;color:var(--rd-muted,#a2a3a8)}
.mm-crumb__list li{display:flex;align-items:center;gap:.5rem}
.mm-crumb__list a{color:var(--rd-muted,#a2a3a8);text-decoration:none;transition:color .2s}
.mm-crumb__list a:hover{color:var(--rd-c-primary-text,#ff4d4d)}
.mm-crumb__cur{color:var(--rd-text,#f2f2f3)}
.mm-crumb__sep{opacity:.6}
.mm-phead{border-bottom:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-background,#0a0a0b);background-image:repeating-linear-gradient(90deg,color-mix(in oklab,var(--rd-text,#f2f2f3) 8%,transparent) 0 1px,transparent 1px 88px)}
.mm-phead__pad{padding-top:3.5rem;padding-bottom:3.5rem}
@media(min-width:1024px){.mm-phead__pad{padding-top:5rem;padding-bottom:5rem}}
.mm-phead__grid{display:grid;gap:2.5rem}
@media(min-width:1024px){.mm-phead__grid{grid-template-columns:1.1fr 1fr;gap:4rem}}
.mm-phead__body{margin-top:1.5rem;max-width:42rem;display:flex;flex-direction:column;gap:1rem}

/* ---- feature grid ---- */
.mm-grid{display:grid;gap:1.25rem}
@media(min-width:768px){.mm-grid--2,.mm-grid--3{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1280px){.mm-grid--3{grid-template-columns:repeat(3,1fr)}}
.mm-card{display:flex;flex-direction:column;height:100%;border-radius:var(--rd-radius,8px);border:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-c-raised,#1b1b1f);padding:1.5rem;transition:border-color .2s}
@media(min-width:640px){.mm-card{padding:1.75rem}}
.mm-card:hover{border-color:var(--rd-c-border-strong,rgba(255,255,255,0.20))}
.mm-card__frame{overflow:hidden;border-radius:calc(var(--rd-radius,8px) - 2px);aspect-ratio:16/10;margin:-.25rem -.25rem 1.25rem;border:1px solid var(--rd-border,rgba(255,255,255,0.10))}
.mm-card__meta{font-family:var(--rd-font-heading,"Sora",ui-sans-serif,system-ui,sans-serif);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rd-c-primary-text,#ff4d4d);margin:0 0 .5rem}
.mm-card__text{margin-top:.75rem;flex:1;font-size:.98rem;color:var(--rd-muted,#a2a3a8);line-height:1.6}
.mm-card__link{margin-top:1.25rem}
.mm-card__link a{display:inline-flex;align-items:center;gap:.375rem;font-weight:500;color:var(--rd-c-primary-text,#ff4d4d);text-decoration:none;text-underline-offset:4px}
.mm-card__link a:hover{color:var(--rd-c-primary-hover,#e10600);text-decoration:underline}

/* ---- split ---- */
.mm-split{display:grid;gap:3rem}
@media(min-width:1024px){.mm-split{grid-template-columns:1fr 1fr;gap:4rem}.mm-split--left{grid-template-columns:1.3fr 1fr}.mm-split--right{grid-template-columns:1fr 1.3fr}}
.mm-split__body{display:flex;flex-direction:column;gap:1rem}
.mm-split__body p{margin:0}
.mm-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2rem}
.mm-step{display:grid;gap:.75rem;border-top:1px solid var(--rd-border,rgba(255,255,255,0.10));padding-top:1.5rem}
@media(min-width:640px){.mm-step{grid-template-columns:4rem 1fr;gap:1.5rem}}
.mm-step__n{font-family:var(--rd-font-heading,"Sora",ui-sans-serif,system-ui,sans-serif);font-size:1.5rem;font-weight:600;color:var(--rd-c-primary-text,#ff4d4d)}
.mm-step__text{margin-top:.5rem;font-size:.98rem;color:var(--rd-muted,#a2a3a8);line-height:1.6}
.mm-check{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}
.mm-check li{display:flex;gap:.75rem;align-items:flex-start}
.mm-check__mark{color:var(--rd-c-primary-text,#ff4d4d);font-weight:700;line-height:1.5}
.mm-check strong{color:var(--rd-text,#f2f2f3)}
.mm-check p{margin:.25rem 0 0;color:var(--rd-muted,#a2a3a8);font-size:.98rem;line-height:1.6}
.mm-stats{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.mm-stat{border:1px solid var(--rd-border,rgba(255,255,255,0.10));border-radius:var(--rd-radius,8px);background:var(--rd-c-raised,#1b1b1f);padding:1.5rem;display:flex;flex-direction:column;gap:.25rem}
.mm-stat__v{font-family:var(--rd-font-heading,"Sora",ui-sans-serif,system-ui,sans-serif);font-size:2rem;font-weight:600;color:var(--rd-text,#f2f2f3)}
.mm-stat__l{font-size:.875rem;color:var(--rd-muted,#a2a3a8)}
.mm-split__cards{display:grid;gap:1.25rem}
@media(min-width:640px){.mm-split__cards{grid-template-columns:1fr 1fr}}
.mm-split__cards .mm-card{padding:1.25rem}
@media(min-width:640px){.mm-split__cards .mm-card{padding:1.5rem}}
.mm-split__links{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1.5rem}
.mm-split__links a{color:var(--rd-muted,#a2a3a8);text-decoration:none;transition:color .2s}
.mm-split__links a:hover{color:var(--rd-c-primary-text,#ff4d4d)}

/* ---- prose ---- */
.mm-prose__body{max-width:48rem;margin-top:1.5rem;display:flex;flex-direction:column;gap:1.25rem;color:var(--rd-muted,#a2a3a8);font-size:1.0625rem;line-height:1.75}
.mm-prose__body p,.mm-prose__body ul{margin:0}
.mm-prose__body a{color:var(--rd-c-primary-text,#ff4d4d);text-underline-offset:3px}
.mm-prose__ul{padding-left:1.25rem;display:flex;flex-direction:column;gap:.5rem}

/* ---- faq ---- */
.mm-faq{display:grid;gap:3rem}
@media(min-width:1024px){.mm-faq{grid-template-columns:1fr 1.6fr;gap:4rem}}
.mm-faq__list{border-top:1px solid var(--rd-border,rgba(255,255,255,0.10));border-bottom:1px solid var(--rd-border,rgba(255,255,255,0.10))}
.mm-faq__item{border-top:1px solid var(--rd-border,rgba(255,255,255,0.10));padding:.5rem 0}
.mm-faq__item:first-child{border-top:0}
.mm-faq__item>summary{display:flex;cursor:pointer;list-style:none;align-items:flex-start;justify-content:space-between;gap:1.5rem;padding:1rem 0;text-align:left}
.mm-faq__item>summary::-webkit-details-marker{display:none}
.mm-faq__q{font-family:var(--rd-font-heading,"Sora",ui-sans-serif,system-ui,sans-serif);font-size:1.125rem;font-weight:600;color:var(--rd-text,#f2f2f3);margin:0}
.mm-faq__plus{margin-top:.25rem;flex-shrink:0;color:var(--rd-c-primary-text,#ff4d4d);transition:transform .2s;font-size:1.25rem;line-height:1}
.mm-faq__item[open] .mm-faq__plus{transform:rotate(45deg)}
.mm-faq__a{padding:0 2.5rem 1.25rem 0;font-size:.98rem;color:var(--rd-muted,#a2a3a8);line-height:1.6;display:flex;flex-direction:column;gap:.75rem}
.mm-faq__a p{margin:0}

/* ---- testimonials ---- */
.mm-quote{gap:1.25rem}
.mm-quote__text{font-size:1.0625rem;line-height:1.6;color:var(--rd-text,#f2f2f3);margin:0;flex:1}
.mm-quote__by{margin-top:1.25rem;font-size:.875rem;color:var(--rd-muted,#a2a3a8)}
.mm-quote__by p{margin:0}
.mm-quote__name{font-weight:600;color:var(--rd-text,#f2f2f3) !important}
.mm-quote__link{margin-top:.25rem}
.mm-quote__link a{color:var(--rd-c-primary-text,#ff4d4d);text-decoration:none;text-underline-offset:4px}
.mm-quote__link a:hover{text-decoration:underline}

/* ---- cta ---- */
.mm-cta{display:grid;gap:2.5rem}
.mm-cta--form{gap:2.5rem}
@media(min-width:1024px){.mm-cta--form{grid-template-columns:1.1fr 1fr;align-items:start}}
.mm-cta__form{border-radius:var(--rd-radius,8px);border:1px solid var(--rd-border,rgba(255,255,255,0.10));background:var(--rd-c-raised,#1b1b1f);padding:1.5rem}
@media(min-width:640px){.mm-cta__form{padding:2rem}}
.mm-cta__formintro{margin-top:.25rem;font-size:.875rem;color:var(--rd-muted,#a2a3a8)}
/* dark form inputs (FormRenderer reads --rd-background inline) */
.mm-cta__form input,.mm-cta__form textarea,.mm-cta__form select{background:var(--rd-background,#0a0a0b) !important;color:var(--rd-text,#f2f2f3) !important;border:1px solid var(--rd-c-border-strong,rgba(255,255,255,0.20)) !important;border-radius:calc(var(--rd-radius,8px) - 2px) !important}
.mm-cta__form label{color:var(--rd-text,#f2f2f3)}

/* ---- reveal ---- */
@keyframes mm-reveal-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.mm-reveal{animation:.7s cubic-bezier(.22,1,.36,1) both mm-reveal-up}
@media(prefers-reduced-motion:reduce){.mm-reveal{animation:none}}
