@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Syne:wght@600;700;800&display=swap');

:root {
    --rd-ink: #07111f;
    --rd-ink-2: #0d1a2d;
    --rd-paper: #f7f5ee;
    --rd-white: #fff;
    --rd-muted: #aab6c8;
    --rd-lime: #30fd28;
    --rd-pink: #ff3da7;
    --rd-cyan: #16dcff;
    --rd-orange: #ff7a18;
    --rd-purple: #8f67ff;
    --rd-yellow: #ffe14d;
    --rd-line: rgba(255,255,255,.14);
    --rd-display: 'Syne', sans-serif;
    --rd-body: 'Manrope', sans-serif;
}

body.service-page,
body.detail-page,
body.retail-landing {
    background: var(--rd-ink);
    color: var(--rd-white);
    font-family: var(--rd-body);
    overflow-x: hidden;
}

/* El contacto comercial se centraliza en los formularios web. */
.whatsapp-float { display: none !important; }

body.service-page h1,
body.service-page h2,
body.service-page h3,
body.detail-page h1,
body.detail-page h2,
body.detail-page h3,
body.retail-landing h1,
body.retail-landing h2,
body.retail-landing h3 { font-family: var(--rd-display); letter-spacing: -.045em; }

body.service-page { --rd-primary: var(--rd-pink); --rd-secondary: var(--rd-cyan); }
body.service-page--attendance { --rd-primary: var(--rd-cyan); --rd-secondary: var(--rd-orange); }
body.detail-page { --rd-primary: var(--rd-cyan); --rd-secondary: var(--rd-pink); }
body.retail-landing { --rd-primary: var(--rd-pink); --rd-secondary: var(--rd-cyan); }

/* Shared header and the original, unmodified Buhooo logo */
body.service-page .site-header,
body.detail-page .site-header,
body.retail-landing .retail-header {
    position: sticky;
    top: 0;
    z-index: 80;
    min-height: 78px;
    border-bottom: 1px solid var(--rd-line);
    background: rgba(7,17,31,.88);
    backdrop-filter: blur(18px);
}

body.service-page .site-header__content,
body.detail-page .site-header__content,
.retail-header__content { min-height: 78px; }

body.service-page .site-header .brand,
body.detail-page .site-header .brand,
.retail-brand {
    position: relative;
    display: block;
    flex: 0 0 auto;
    width: 145px;
    height: 59px;
    overflow: hidden;
    background: #000;
}

body.service-page .site-header .brand img,
body.detail-page .site-header .brand img,
.retail-brand img {
    position: absolute;
    width: 201px;
    max-width: none;
    height: auto;
    left: -22px;
    top: -32px;
}

body.service-page .main-nav a { font-family: var(--rd-body); font-size: .8rem; font-weight: 800; }
body.service-page .main-nav .nav-cta { border-radius: 999px; background: var(--rd-lime); color: var(--rd-ink); }
.back-button { border: 1px solid var(--rd-line); border-radius: 999px; background: rgba(255,255,255,.05); color: var(--rd-white); font-weight: 800; }
.back-button:hover { border-color: var(--rd-primary); background: var(--rd-primary); color: var(--rd-ink); }

/* Service landing pages */
body.service-page .service-main { padding: 0; }
body.service-page .service-hero {
    position: relative;
    padding: clamp(72px,8vw,118px) 0;
    overflow: hidden;
    background:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.035) 1px, transparent 1px),
        radial-gradient(circle at 12% 42%, color-mix(in srgb, var(--rd-primary) 24%, transparent), transparent 28rem),
        radial-gradient(circle at 86% 28%, color-mix(in srgb, var(--rd-secondary) 17%, transparent), transparent 30rem),
        var(--rd-ink);
    background-size: 48px 48px,48px 48px,auto,auto,auto;
}

body.service-page .service-hero::before {
    content: '';
    position: absolute;
    inset: 17% auto auto 3%;
    width: 118px;
    height: 76px;
    border: 2px solid var(--rd-primary);
    background: transparent;
    opacity: .55;
}

body.service-page .service-hero::after {
    content: 'operación 0.98';
    position: absolute;
    inset: calc(17% - 24px) auto auto calc(3% - 2px);
    width: auto;
    height: auto;
    padding: 3px 7px;
    border-radius: 0;
    background: var(--rd-primary);
    color: var(--rd-ink);
    filter: none;
    opacity: 1;
    font: 800 .68rem/1 var(--rd-body);
}

body.service-page .service-hero__layout { grid-template-columns: minmax(0,.88fr) minmax(440px,1.12fr); gap: clamp(45px,6vw,78px); }
body.service-page .service-hero__copy { position: relative; max-width: 760px; }
body.service-page .section-eyebrow { color: var(--rd-secondary); font-family: var(--rd-body); font-size: .72rem; letter-spacing: .17em; font-weight: 800; }
body.service-page .service-hero__copy h1 { font-size: clamp(3.25rem,5.5vw,5.8rem); line-height: .92; letter-spacing: -.065em; }
body.service-page .service-hero__lead,
body.service-page .hub-hero__how { color: #b9c4d4; }
body.service-page .service-hero__lead strong,
body.service-page .hub-hero__how strong { color: var(--rd-white); }

body.service-page .btn { min-height: 50px; border-radius: 11px; font-family: var(--rd-body); font-weight: 800; }
body.service-page .btn--primary { background: var(--rd-lime); color: var(--rd-ink); box-shadow: 0 12px 32px rgba(48,253,40,.18); }
body.service-page .btn--primary:hover { background: #76ff71; }
body.service-page .btn--secondary { border-color: var(--rd-line); background: rgba(255,255,255,.05); color: var(--rd-white); }
body.service-page .service-chip { border-color: color-mix(in srgb,var(--rd-primary) 35%,transparent); background: color-mix(in srgb,var(--rd-primary) 11%,transparent); color: #eaf2ff; }
body.service-page .page-return { color: var(--rd-secondary); font-weight: 800; }

body.service-page .service-hero__placeholder {
    position: relative;
    padding: 14px;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 24px;
    background: #0d1a2d;
    box-shadow: 0 44px 100px rgba(0,0,0,.42), 13px 13px 0 color-mix(in srgb,var(--rd-primary) 50%,transparent);
    transform: rotate(1.1deg);
    margin-top: 25px;
}
body.service-page .service-hero__placeholder::before {
    content: 'BUHOOO VISION / LIVE';
    display: block;
    position: absolute;
    z-index: 8;
    inset: -25px auto auto 15px;
    width: auto;
    height: auto;
    padding: 4px 7px;
    border: 0;
    border-radius: 0;
    background: var(--rd-secondary);
    color: var(--rd-ink);
    font: 800 .63rem/1 var(--rd-body);
    letter-spacing: .11em;
}
body.service-page .service-hero__placeholder-content { border: 0; background: transparent; }
body.service-page .service-hero__media-header { border-color: var(--rd-line); border-radius: 14px; background: rgba(255,255,255,.035); }
body.service-page .placeholder-tag { color: var(--rd-primary); }
body.service-page .service-hero__video-frame { position: relative; overflow: visible; border: 2px solid var(--rd-secondary); border-radius: 15px; }
body.service-page .service-hero__video-frame::before {
    content: 'evento 0.96';
    position: absolute;
    z-index: 5;
    top: -25px;
    left: -2px;
    padding: 3px 7px;
    background: var(--rd-secondary);
    color: var(--rd-ink);
    font: 800 .66rem/1 var(--rd-body);
}
body.service-page .service-hero__video-frame::after {
    content: '';
    position: absolute;
    z-index: 4;
    left: 0;
    right: 0;
    top: 12%;
    height: 2px;
    background: var(--rd-secondary);
    box-shadow: 0 0 18px 3px var(--rd-secondary);
    animation: rd-scan 5s ease-in-out infinite;
}
body.service-page .service-hero__video { border-radius: 13px; }
body.service-page .service-panel-card { border: 2px solid var(--rd-ink); border-radius: 18px; background: var(--rd-paper); color: var(--rd-ink); box-shadow: 7px 7px 0 var(--rd-primary); }
body.service-page .service-panel-card:nth-child(2n) { background: var(--rd-secondary); box-shadow-color: var(--rd-lime); }
body.service-page .service-panel-card p,
body.service-page .service-panel-card .service-story__lead { color: rgba(7,17,31,.72); }
body.service-page .service-panel-card__eyebrow { color: var(--rd-ink); }

body.service-page .section-shell { position: relative; padding: clamp(78px,8vw,120px) 0; background: var(--rd-ink); }
body.service-page .section-shell--alt { background: #0d1a2d; }
body.service-page .section-shell#como-funciona { background: var(--rd-paper); color: var(--rd-ink); }
body.service-page .section-shell#contacto { background: var(--rd-purple); color: var(--rd-ink); }
body.service-page .section-header { max-width: 950px; }
body.service-page .section-header h2,
body.service-page .contact-panel h2,
body.service-page .service-story h2 { font-size: clamp(2.5rem,4.8vw,4.6rem); line-height: .98; }
body.service-page .pain-grid,
body.service-page .metrics-grid,
body.service-page .flow-grid { gap: 16px; }
body.service-page .pain-card,
body.service-page .metrics-card,
body.service-page .flow-step {
    min-height: 300px;
    padding: 26px;
    border: 2px solid var(--rd-ink);
    border-radius: 22px;
    background: var(--rd-pink);
    color: var(--rd-ink);
    box-shadow: 8px 8px 0 rgba(0,0,0,.35);
}
body.service-page .pain-card:nth-child(2),
body.service-page .metrics-card:nth-child(2),
body.service-page .flow-step:nth-child(2) { background: var(--rd-cyan); }
body.service-page .pain-card:nth-child(3),
body.service-page .metrics-card:nth-child(3),
body.service-page .flow-step:nth-child(3) { background: var(--rd-lime); }
body.service-page .pain-card p,
body.service-page .metrics-card p,
body.service-page .flow-step p { color: rgba(7,17,31,.72); }
body.service-page .pain-card__index,
body.service-page .metrics-card__index,
body.service-page .flow-step__index { color: var(--rd-ink); opacity: .55; font-family: var(--rd-display); }
body.service-page .result-list li::before,
body.service-page .contact-promise__row::before { color: var(--rd-pink); }

body.service-page .contact-layout { padding: clamp(25px,4vw,48px); border: 2px solid var(--rd-ink); border-radius: 28px; background: rgba(255,255,255,.12); box-shadow: 14px 14px 0 var(--rd-lime); }
body.service-page #contacto .contact-panel { padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; color:var(--rd-ink); }
body.service-page #contacto .contact-panel h2 { color:var(--rd-ink); }
body.service-page .contact-panel__lead,
body.service-page #contacto .contact-promise__row { color: rgba(7,17,31,.75); }
body.service-page .contact-form-card { border: 1px solid rgba(255,255,255,.18); border-radius: 22px; background: var(--rd-ink); color: var(--rd-white); }
body.service-page .lead-form label { color: #aebacd; font-family: var(--rd-body); }
body.service-page .lead-form .corporate-email-note { color:var(--rd-lime); }
body.service-page .lead-form input,
body.service-page .lead-form select,
body.service-page .lead-form textarea { border-color: #2a3b52; border-radius: 10px; background: #101f33; color: white; }
body.service-page .lead-form input:focus,
body.service-page .lead-form select:focus,
body.service-page .lead-form textarea:focus { border-color: var(--rd-secondary); box-shadow: 0 0 0 3px color-mix(in srgb,var(--rd-secondary) 14%,transparent); }

/* Detail pages and the flow-of-people page */
body.detail-page .detail-main { padding: clamp(55px,7vw,95px) 0; background:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
    radial-gradient(circle at 12% 10%,rgba(255,61,167,.16),transparent 28rem),
    var(--rd-ink); background-size:48px 48px,48px 48px,auto,auto; }
body.detail-page .detail-hero { position: relative; gap: clamp(45px,6vw,80px); align-items: center; }
body.detail-page .detail-hero::before { content: 'solución 0.97'; position: absolute; top: -20px; right: 6%; z-index: 3; padding: 3px 7px; background: var(--rd-pink); color: var(--rd-ink); font:800 .66rem/1 var(--rd-body); }
body.detail-page .detail-hero::after { content: ''; position: absolute; top: 0; right: 6%; width: 130px; height: 82px; border: 2px solid var(--rd-pink); opacity: .65; pointer-events:none; }
body.detail-page .detail-hero__title { font-size: clamp(3rem,6.2vw,6.2rem); line-height: .92; letter-spacing: -.065em; }
body.detail-page .detail-hero__lead { color: #bac5d4; font-size: clamp(1rem,1.7vw,1.2rem); }
body.detail-page .detail-hero__media { position: relative; padding: 10px; border: 2px solid var(--rd-cyan); border-radius: 22px; background:#0d1a2d; box-shadow: 12px 12px 0 var(--rd-pink); transform:rotate(1deg); }
body.detail-page .detail-hero__media::before { content:'objeto 0.96'; position:absolute; z-index:3; left:-2px; top:-25px; padding:3px 7px; background:var(--rd-cyan); color:var(--rd-ink); font:800 .66rem/1 var(--rd-body); }
body.detail-page .detail-hero__media img,
body.detail-page .detail-hero__media video { width:100%; height:100%; object-fit:cover; border-radius: 15px; }
body.detail-page .detail-card { border: 2px solid var(--rd-ink); border-radius: 20px; background: var(--rd-paper); color: var(--rd-ink); box-shadow: 8px 8px 0 var(--rd-pink); }
body.detail-page .detail-grid .detail-card:nth-child(2) { background: var(--rd-cyan); box-shadow-color: var(--rd-lime); }
body.detail-page .detail-grid .detail-card:nth-child(3) { background: var(--rd-lime); box-shadow-color: var(--rd-orange); }
body.detail-page .detail-card p,
body.detail-page .detail-card li { color: rgba(7,17,31,.74); }
body.detail-page .detail-cta { border: 2px solid var(--rd-ink); border-radius: 24px; background: var(--rd-purple); color: var(--rd-ink); box-shadow: 10px 10px 0 var(--rd-lime); }
body.detail-page .btn,
body.detail-page .btn-abrir-modal,
body.detail-page .fp-trial-submit { border: 0; border-radius: 11px; background: var(--rd-lime); color: var(--rd-ink); font-family: var(--rd-body); font-weight: 800; }

body.detail-page .fp-section { margin-top: clamp(70px,8vw,115px); }
body.detail-page .fp-stat,
body.detail-page .fp-card,
body.detail-page .fp-decision { border: 2px solid var(--rd-ink); border-radius: 20px; background: var(--rd-paper); color: var(--rd-ink); box-shadow: 7px 7px 0 var(--rd-pink); }
body.detail-page .fp-stat:nth-child(2),
body.detail-page .fp-card:nth-child(2),
body.detail-page .fp-card:nth-child(5),
body.detail-page .fp-decision:nth-child(2) { background:var(--rd-cyan); box-shadow-color:var(--rd-lime); }
body.detail-page .fp-stat:nth-child(3),
body.detail-page .fp-card:nth-child(3),
body.detail-page .fp-decision:nth-child(3) { background:var(--rd-lime); box-shadow-color:var(--rd-orange); }
body.detail-page .fp-stat__number,
body.detail-page .fp-step__number { color: var(--rd-pink); }
body.detail-page .fp-stat__label,
body.detail-page .fp-card p,
body.detail-page .fp-decision p { color: rgba(7,17,31,.72); }
body.detail-page .fp-card__icon,
body.detail-page .fp-decision__icon { background: var(--rd-ink); color: var(--rd-lime); }
body.detail-page .fp-section--dark { padding:clamp(28px,5vw,55px); border:0; border-radius:28px; background:var(--rd-orange); color:var(--rd-ink); }
body.detail-page .fp-section--dark p { color:rgba(7,17,31,.72); }
body.detail-page .fp-step__number { color:var(--rd-ink); }
body.detail-page .fp-section--privacy { border-radius:28px; background:var(--rd-cyan); color:var(--rd-ink); }
body.detail-page .fp-section--privacy p { color:rgba(7,17,31,.72); }
body.detail-page .fp-trial-section { padding:clamp(30px,5vw,58px); border:2px solid var(--rd-ink); border-radius:28px; background:var(--rd-purple); color:var(--rd-ink); box-shadow:12px 12px 0 var(--rd-lime); }
body.detail-page .fp-trial-subtext { color:rgba(7,17,31,.72); }
body.detail-page .fp-trial-form-wrapper { border-radius:20px; background:var(--rd-ink); color:var(--rd-white); }
body.detail-page .fp-trial-form input { border-color:#2a3b52; background:#101f33; color:white; }
body.detail-page .fp-trial-form .corporate-email-note { color:var(--rd-lime); }

/* Retail */
body.retail-landing { --retail-bg:var(--rd-ink); --retail-text:var(--rd-white); --retail-muted:#aeb9ca; --retail-line:var(--rd-line); --retail-accent:var(--rd-lime); }
.retail-header__content { justify-content:space-between; }
.retail-nav { display:flex; align-items:center; gap:8px; }
.retail-nav a { padding:9px 12px; border-radius:999px; color:#dce5f1; font-size:.8rem; font-weight:800; }
.retail-nav a:hover { background:rgba(255,255,255,.08); }
.retail-nav .retail-nav__cta { padding-inline:18px; background:var(--rd-lime); color:var(--rd-ink); }
.retail-hero { position:relative; padding:clamp(65px,8vw,105px) 0; overflow:hidden; background:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
    radial-gradient(circle at 10% 40%,rgba(255,61,167,.2),transparent 26rem),var(--rd-ink); background-size:48px 48px,48px 48px,auto,auto; }
.retail-hero__grid { display:grid; grid-template-columns:.85fr 1.15fr; align-items:center; gap:clamp(45px,6vw,75px); }
.retail-hero h1 { max-width:10ch; font-size:clamp(3.5rem,6vw,6rem); line-height:.91; letter-spacing:-.065em; }
.retail-hero__lead { color:#bac5d4; }
.retail-hero__actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.retail-button { display:inline-flex; align-items:center; gap:10px; min-height:50px; padding:12px 18px; border:1px solid var(--rd-line); border-radius:11px; font-size:.85rem; font-weight:800; }
.retail-button--primary { border-color:transparent; background:var(--rd-lime); color:var(--rd-ink); }
.retail-hero__visual { position:relative; padding:12px; border:1px solid rgba(255,255,255,.23); border-radius:24px; background:#0d1a2d; box-shadow:13px 13px 0 var(--rd-cyan); transform:rotate(1.1deg); }
.retail-hero__visual::before { content:'retail vision / live'; display:block; padding:2px 3px 10px; color:var(--rd-cyan); font:800 .64rem/1 var(--rd-body); letter-spacing:.12em; text-transform:uppercase; }
.retail-hero__scene { position:relative; aspect-ratio:1.2/1; overflow:hidden; border-radius:16px; }
.retail-hero__scene img { width:100%; height:100%; object-fit:cover; }
.retail-hero__scan { position:absolute; z-index:3; left:0; right:0; top:12%; height:2px; background:var(--rd-cyan); box-shadow:0 0 18px 3px var(--rd-cyan); animation:rd-scan 5s ease-in-out infinite; }
.retail-detect { position:absolute; z-index:4; border:2px solid; }
.retail-detect span { position:absolute; left:-2px; top:-24px; padding:3px 7px; color:var(--rd-ink); font:800 .65rem/1 var(--rd-body); white-space:nowrap; }
.retail-detect--one { left:9%; top:17%; width:24%; height:49%; border-color:var(--rd-pink); }.retail-detect--one span { background:var(--rd-pink); }
.retail-detect--two { right:12%; top:25%; width:25%; height:42%; border-color:var(--rd-lime); }.retail-detect--two span { background:var(--rd-lime); }
.retail-section,.retail-solution,.retail-close { padding:clamp(75px,8vw,120px) 0; }
.retail-section { background:var(--rd-paper); color:var(--rd-ink); }
.retail-section__intro h2,.retail-close h2 { font-size:clamp(2.7rem,5vw,4.8rem); line-height:.98; }
.retail-section__intro p { color:#657080; }
.retail-pill-grid div { border:2px solid var(--rd-ink); border-radius:18px; background:var(--rd-pink); color:var(--rd-ink); box-shadow:6px 6px 0 var(--rd-ink); }
.retail-pill-grid div:nth-child(2) { background:var(--rd-cyan); }.retail-pill-grid div:nth-child(3) { background:var(--rd-lime); }
.retail-solution { position:relative; background:var(--rd-ink); }
.retail-solution--alt { background:#0d1a2d; }
.retail-solution__copy h2 { font-size:clamp(2.7rem,4.8vw,4.5rem); line-height:.98; }
.retail-dashboard { position:relative; border:2px solid var(--rd-cyan); border-radius:24px; background:#0d1a2d; box-shadow:10px 10px 0 var(--rd-pink); }
.retail-dashboard::before { content:'dashboard 0.97'; position:absolute; z-index:2; left:-2px; top:-25px; padding:3px 7px; background:var(--rd-cyan); color:var(--rd-ink); font:800 .66rem/1 var(--rd-body); }
.retail-solution--alt .retail-dashboard { border-color:var(--rd-pink); box-shadow-color:var(--rd-lime); }.retail-solution--alt .retail-dashboard::before { content:'audiencia 0.96'; background:var(--rd-pink); }
.retail-metrics strong { color:var(--rd-lime); }
.retail-close { background:var(--rd-orange); color:var(--rd-ink); }
.retail-close__box { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.92fr); gap:35px; align-items:center; padding:clamp(28px,4vw,48px); border:2px solid var(--rd-ink); border-radius:26px; background:rgba(255,255,255,.16); box-shadow:12px 12px 0 var(--rd-pink); }
.retail-close p { color:rgba(7,17,31,.72); }
.retail-lead-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.retail-lead-form label { display:grid; gap:5px; color:rgba(7,17,31,.72); font-size:.7rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }.retail-lead-form input,.retail-lead-form textarea { width:100%; padding:.72rem .82rem; border:1.5px solid var(--rd-ink); border-radius:9px; background:rgba(255,255,255,.78); color:var(--rd-ink); font:600 .85rem/1.4 var(--rd-body); outline:0; }.retail-lead-form input:focus,.retail-lead-form textarea:focus { background:#fff; box-shadow:0 0 0 3px rgba(8,221,223,.48); }.retail-lead-form textarea { resize:vertical; }.retail-lead-form .corporate-email-note { color:#6d0d50; }.retail-lead-form .address-visit-note { color:rgba(7,17,31,.72); font-size:.72rem; font-weight:700; letter-spacing:0; line-height:1.4; text-transform:none; }.retail-lead-form__full,.retail-lead-form button,.retail-lead-form > p { grid-column:1/-1; }.retail-lead-form button { justify-content:center; border:0; cursor:pointer; }.retail-lead-form > p { min-height:18px; margin:0; color:var(--rd-ink); font-size:.78rem; font-weight:700; text-align:center; }
.retail-footer { padding:50px 0 24px; background:#040b14; }
.retail-footer__inner { display:flex; align-items:center; justify-content:space-between; gap:25px; color:#7f8da1; font-size:.75rem; }

body.service-page .site-footer,
body.detail-page .site-footer { border-top:1px solid var(--rd-line); background:#040b14; }

@keyframes rd-scan { 0%,100% { top:10%; } 50% { top:90%; } }

@media (max-width: 1000px) {
    body.service-page .service-hero__layout,
    .retail-hero__grid { grid-template-columns:1fr; }
    body.service-page .service-hero__placeholder,
    .retail-hero__visual { width:min(760px,96%); margin-inline:auto; }
    body.service-page .service-hero::before,
    body.service-page .service-hero::after { display:none; }
    .retail-close__box { grid-template-columns:1fr; }
}

@media (max-width: 560px) { .retail-lead-form { grid-template-columns:1fr; }.retail-lead-form__full,.retail-lead-form button,.retail-lead-form > p { grid-column:auto; } }

@media (max-width: 820px) {
    body.service-page .site-header .brand,
    body.detail-page .site-header .brand,
    .retail-brand { width:140px; height:57px; }
    body.service-page .site-header .brand img,
    body.detail-page .site-header .brand img,
    .retail-brand img { width:194px; left:-21px; top:-31px; }
    .retail-nav a:not(.retail-nav__cta) { display:none; }
    body.service-page .main-nav { position:absolute; inset:0; min-height:100dvh; display:grid; place-items:center; background:var(--rd-ink); opacity:0; visibility:hidden; }
    body.service-page .main-nav.mobile-open { opacity:1; visibility:visible; }
    body.service-page.menu-open .site-header { height:100dvh; background:var(--rd-ink); backdrop-filter:none; }
    body.service-page .main-nav ul { flex-direction:column; }
    body.service-page .main-nav a { font:700 1.4rem/1.2 var(--rd-display); }
    body.detail-page .detail-hero__title { font-size:clamp(3rem,13vw,5rem); }
    body.detail-page .detail-hero::before,
    body.detail-page .detail-hero::after { display:none; }
}

@media (max-width: 600px) {
    body.service-page { overflow-x: clip; }
    body.service-page .service-hero { padding-top:60px; }
    body.service-page .service-hero__copy h1,
    .retail-hero h1 { font-size:clamp(3rem,14vw,4.5rem); }
    body.service-page .service-hero__placeholder,
    .retail-hero__visual { width:100%; box-shadow:7px 7px 0 var(--rd-primary); transform:none; }
    body.service-page .section-header h2,
    body.service-page .contact-panel h2,
    body.service-page .service-story h2,
    .retail-section__intro h2,
    .retail-close h2,
    .retail-solution__copy h2 { font-size:clamp(2.35rem,11vw,3.4rem); }
    body.service-page .contact-layout { padding:22px 14px; box-shadow:7px 7px 0 var(--rd-lime); }
    body.service-page .service-story,
    body.service-page .service-proof,
    body.service-page .contact-layout { grid-template-columns:minmax(0,1fr)!important; }
    body.service-page .service-story > *,
    body.service-page .service-proof > *,
    body.service-page .contact-layout > * { min-width:0; max-width:100%; }
    body.detail-page .fp-trial-section { padding:25px 14px; box-shadow:7px 7px 0 var(--rd-lime); }
    .retail-nav__cta { font-size:.72rem!important; padding-inline:13px!important; }
    .retail-hero__scene { aspect-ratio:.9/1; }
    .retail-close__box { padding:24px 18px; box-shadow:7px 7px 0 var(--rd-pink); }
    .retail-footer__inner { flex-direction:column; align-items:flex-start; }
}

@media (prefers-reduced-motion: reduce) {
    .service-hero__video-frame::after,
    .retail-hero__scan { animation:none!important; }
}
