/* Didijah family refinement. Presentation only: product state and engines are untouched. */
:root{--family-ink:#10243a;--family-paper:#f7f4ed;--family-blue:#155eef;--family-line:#10243a24}
.family-link{display:inline-flex;align-items:center;gap:26px;min-height:48px;font:650 15px/1.4 DidijahNav,Arial,sans-serif;color:var(--family-ink);text-decoration:none;border-bottom:1px solid currentColor;padding:9px 0}
.family-link:hover{color:var(--family-blue)}
.family-introduction img,.family-feature img,.flo-practice img{display:block;max-width:100%;height:auto}
.family-introduction figure,.family-feature figure{margin:0}
.family-introduction h1,.family-introduction h2,.family-introduction h3,.family-feature h3,.flo-practice h2{font-family:DidijahHeading,Arial,sans-serif;font-weight:650;line-height:1.06;letter-spacing:-.045em}
.family-introduction h1{font-size:clamp(64px,7.4vw,104px);margin:22px 0}
.family-introduction h2{font-size:clamp(40px,4.6vw,66px);margin:16px 0 26px}
.family-introduction p{max-width:530px}
.family-introduction .lead{font-size:25px;line-height:1.5}
.family-opening{display:grid;grid-template-columns:.85fr 1.15fr;gap:6%;align-items:center;padding:70px 0 80px}
.family-opening figure img{width:100%;aspect-ratio:.94;object-fit:cover;object-position:72% center;border-radius:48% 48% 5px 5px / 20% 20% 5px 5px}
.family-introduction figcaption{font:500 12px/1.5 DidijahNav,Arial,sans-serif;margin-top:14px;color:#536170}
.family-belief{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:0 10%;padding:40px 0 65px;border-top:1px solid var(--family-line)}
.family-belief>.eyebrow{grid-column:1/-1}.family-belief>p:last-child{font-size:22px}
.family-section{padding:55px 0 85px;border-top:1px solid var(--family-line)}
.family-section-heading{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-bottom:35px}.family-section-heading>p{font-size:17px}
.family-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px 28px}
.family-tile{display:block;min-width:0;text-decoration:none;color:var(--family-ink)}
.family-tile-image{overflow:hidden;border-radius:38% 38% 5px 5px / 13% 13% 5px 5px;background:#e6edfa}
.family-tile:nth-child(2n) .family-tile-image{border-radius:5px 60px 5px 5px}
.family-tile-image img{width:100%;aspect-ratio:1.15;object-fit:cover;transition:transform .25s ease}
.family-tile:hover .family-tile-image img{transform:scale(1.035)}
.family-tile:focus-visible{outline:3px solid var(--family-blue);outline-offset:8px;border-radius:4px}
.family-tile-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:20px 0 8px;min-height:45px}
.family-tile-title>span:last-child{font-size:22px;color:var(--family-blue)}
.family-product-name{font:650 28px/1.1 DidijahHeading,Arial,sans-serif;color:var(--family-ink)!important}
.compact-product-mark{width:105px!important;height:49px!important;object-fit:contain;object-position:left center}
.family-tile h3{font-size:25px;margin:14px 0 8px}.family-tile p{font-size:14px;line-height:1.55;margin:0}
.family-founder{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:center;padding:65px 0;border-top:1px solid var(--family-line)}
.family-founder figure img{width:100%;aspect-ratio:1.25;object-fit:cover;border-radius:6px 90px 6px 6px}
.family-founder .signature{font-family:DidijahHeading;font-size:28px}
.family-proof{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding:70px 0;border-top:1px solid var(--family-line)}
.family-details{border-top:1px solid var(--family-line);padding:20px 0;margin-top:25px;max-width:none}
.family-details>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:15px;font:600 15px/1.5 DidijahNav,Arial,sans-serif;list-style:none}
.family-details>summary:after{content:'+';font-size:23px;font-weight:400}.family-details[open]>summary:after{content:'−'}.family-details>summary::-webkit-details-marker{display:none}
.family-details p{font-size:14px;line-height:1.65}.family-details>summary:focus-visible{outline:3px solid var(--family-blue);outline-offset:4px}
.family-conversation{padding:65px 7%;margin:30px 0 70px;background:#e6edfa;border-radius:4px 90px 4px 4px}.family-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:25px}
.family-introduction .button{display:inline-flex;align-items:center;text-decoration:none;padding:14px 24px;min-height:48px;font:600 15px DidijahNav;background:var(--family-blue);color:white;border-radius:8px}
.picture-process{list-style:none;margin:26px 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;color:var(--family-ink)}
.picture-process li{position:relative;display:flex;align-items:flex-start;flex-direction:column;gap:12px;font:600 13px/1.5 DidijahNav,Arial,sans-serif;min-width:0}
.picture-process li:not(:last-child):after{content:'→';position:absolute;right:0;top:13px;color:var(--family-blue);font-size:20px}
.picture-process svg{width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;background:#e6edfa;border-radius:50%;padding:9px;box-sizing:border-box}
.family-feature{display:grid;grid-template-columns:1.15fr .85fr;gap:8%;align-items:center;padding:65px 0;border-top:1px solid var(--family-line)}
.family-feature>figure img{width:100%;aspect-ratio:1.15;object-fit:cover;border-radius:6px 90px 6px 6px}.family-feature h3{font-size:clamp(42px,4.6vw,64px);margin:18px 0 24px}
.family-feature-reverse{grid-template-columns:.85fr 1.15fr}.family-feature-reverse>figure{order:2}.family-feature-reverse>figure img{border-radius:90px 6px 6px 6px}
.family-feature .status-label{font-size:12px}.advisory-vignette{display:block;width:240px;max-width:70%;height:auto;border-radius:42% 42% 5px 5px;margin:25px 0;mix-blend-mode:multiply}
.family-return{box-sizing:border-box;display:grid;grid-template-columns:2fr 1fr 1fr 1.1fr;gap:35px;align-items:center;width:min(1440px,90%);margin:30px auto 55px;padding:35px 0;border-top:1px solid var(--family-line);border-bottom:1px solid var(--family-line);font-family:DidijahNav,Arial,sans-serif;color:var(--family-ink)}
.family-return>a{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;gap:12px;text-decoration:none;color:inherit;min-height:80px;min-width:0}
.family-return img{width:100px;height:48px;max-width:100%;object-fit:contain;object-position:left center}.family-return .family-return-home{flex-direction:row;justify-content:flex-start;align-items:center;gap:22px}.family-return-home img{width:145px;height:60px}.family-return span{font-size:13px;line-height:1.5}.family-return .family-return-all{font-size:15px;flex-direction:row;align-items:center;gap:15px}.family-return a:hover{color:var(--family-blue)}.family-return a:focus-visible{outline:3px solid var(--family-blue);outline-offset:6px}
.didijah-global .didijah-product-menu a:has(.menu-scene){display:grid;grid-template-columns:55px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:3px;align-items:center;padding:12px;min-height:80px}
.didijah-product-menu .menu-scene{display:block;width:55px;height:55px;object-fit:cover;border-radius:20px 20px 3px 3px;grid-row:1/3;max-width:none}
.didijah-product-menu a:has(.menu-scene) strong{align-self:end;font-size:22px}.didijah-product-menu a:has(.menu-scene)>span{align-self:start}
.family-product-pair{display:flex;align-items:center;justify-content:center;gap:35px;width:100%;padding:10px 0 30px}.family-product-pair img{width:115px;height:150px;object-fit:contain;mix-blend-mode:multiply}.family-product-pair>span{font:500 48px DidijahHeading;color:var(--family-blue)}
.commercial-detail{margin-top:35px;margin-bottom:30px}.commercial-detail .thesis-rows{width:100%;padding-top:20px}
.family-brief-image{margin:35px 0 55px}.family-brief-image img{width:100%;height:auto;aspect-ratio:2.15;object-fit:cover;border-radius:5px 70px 5px 5px}.family-brief-image figcaption{font:12px/1.5 DidijahNav;color:#536170;margin-top:10px}
.flo-practice{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center;padding:50px 0 80px;border-top:1px solid var(--family-line)}.flo-practice h2{font-size:clamp(40px,4.6vw,64px);margin:18px 0 25px}.flo-practice img{width:100%;aspect-ratio:1.2;object-fit:cover;border-radius:5px 85px 5px 5px}
/* Keep focus visible above the persistent company navigation. */
.skip:focus{z-index:110}.family-section,.family-conversation{scroll-margin-top:110px}
@media(max-width:1000px){.family-return{grid-template-columns:1.5fr 1fr 1fr;gap:25px}.family-return .family-return-home{flex-direction:column;align-items:flex-start;gap:8px}.family-return .family-return-all{grid-column:1/-1;min-height:44px;justify-content:flex-end}.family-gallery{gap:35px 20px}.family-opening{gap:5%}.family-introduction .lead{font-size:21px}}
@media(max-width:760px){.family-intro-page main{width:90%}.family-opening{grid-template-columns:1fr;padding:35px 0 50px;gap:30px}.family-introduction h1{font-size:66px}.family-opening figure img{aspect-ratio:1.25;object-position:center}.family-belief,.family-proof,.family-founder,.flo-practice,.family-feature,.family-feature-reverse{grid-template-columns:1fr;gap:28px;padding:45px 0}.family-feature-reverse>figure{order:0}.family-belief{gap:0}.family-belief>p:last-child{font-size:18px}.family-section-heading{align-items:flex-start;flex-direction:column;gap:0}.family-section-heading h2{margin-bottom:14px}.family-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 18px}.family-tile h3{font-size:21px}.family-tile p{font-size:13px}.family-product-name{font-size:24px}.compact-product-mark{width:92px!important}.family-tile-image img{aspect-ratio:.95}.family-tile-title{margin-top:12px}.family-founder figure img{aspect-ratio:1.3}.family-proof{gap:10px}.family-conversation{padding:35px 7%;margin:20px 0 45px;border-radius:4px 55px 4px 4px}.family-conversation h2{font-size:43px}.family-return{grid-template-columns:1fr 1fr;gap:22px;padding:25px 0}.family-return .family-return-home{grid-column:1/-1;flex-direction:row;align-items:center;gap:20px}.family-return .family-return-all{justify-content:flex-start}.didijah-global .didijah-product-menu a:has(.menu-scene){grid-template-columns:38px minmax(0,1fr);column-gap:8px;padding:10px 7px}.didijah-product-menu .menu-scene{width:38px;height:50px}.didijah-product-menu a:has(.menu-scene) strong{font-size:19px}.didijah-product-menu a:has(.menu-scene)>span{font-size:10px}.family-feature>figure img,.flo-practice img{aspect-ratio:1.2}.family-product-pair img{width:90px;height:120px}.family-product-pair{gap:25px}.advisory-vignette{width:175px}.family-brief-image img{aspect-ratio:1.4}.family-introduction h2{font-size:43px}}
@media(max-width:360px){.family-introduction h1{font-size:57px}.didijah-global .didijah-product-menu a:has(.menu-scene){grid-template-columns:1fr}.didijah-product-menu .menu-scene{display:none}}
@media(prefers-reduced-motion:reduce){.family-tile-image img{transition:none}.family-tile:hover .family-tile-image img{transform:none}}
@media print{.family-return,.family-details summary{display:none}.family-opening,.family-founder,.family-proof,.family-belief{display:block;padding:20px 0}.family-introduction h1{font-size:40pt}.family-introduction h2{font-size:26pt}.family-introduction h3{font-size:16pt}.family-gallery{grid-template-columns:repeat(3,1fr);gap:18px}.family-tile-image img{max-height:140px}.family-opening figure{max-width:400px}.family-conversation{background:none}.family-brief-image img{max-height:200px;object-fit:cover}.family-details{display:block}.family-details::details-content{display:block}.commercial-detail::details-content{display:block}}

/* Shuffle keeps its scene-led character within the family palette. */
.shuffle-family .hero{background:var(--family-paper);gap:3%;grid-template-columns:43% 54%;padding:45px 5% 55px}.shuffle-family .hero-copy{padding:35px 0}.shuffle-family .hero-copy>.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin:0 0 25px}.shuffle-family .hero h1{font-size:clamp(48px,5.2vw,76px);line-height:1.03}.shuffle-family .hero-experience{border-radius:75px 5px 5px 5px;overflow:hidden}.shuffle-family .scene{min-height:370px}.shuffle-family .scene-console{gap:12px;padding:22px}.shuffle-family .scene-console .button{min-width:170px;font-size:12px}.shuffle-family .scene-caption{font-size:20px}.shuffle-family .scene-caption strong{font-size:27px}.shuffle-family .media-note{font-size:11px}
@media(max-width:1000px){.shuffle-family .hero{grid-template-columns:1fr}.shuffle-family .hero-copy{padding:10px 0 25px}.shuffle-family .hero-experience{border-radius:65px 5px 5px 5px}.shuffle-family .scene{min-height:360px}.shuffle-family .scene-console{flex-direction:row}.shuffle-family .hero h1{font-size:64px}}
@media(max-width:760px){.shuffle-family .hero{padding:28px 5% 40px}.shuffle-family .hero h1{font-size:51px}.shuffle-family .scene{min-height:300px}.shuffle-family .scene-console{flex-direction:column}.shuffle-family .scene-caption strong{font-size:24px}.shuffle-family .hero-copy>.eyebrow{margin-bottom:20px}}

/* One offset, not two, when a product link lands below the sticky header. */
html{scroll-padding-top:112px}section[id],article[id],div[id="first-question"],.family-section,.family-conversation{scroll-margin-top:0}.shuffle-family .payoff h2 span{color:var(--family-blue)}
@media(max-width:760px){html{scroll-padding-top:94px}}

.hero-lead>.family-vibe-mark{display:block;width:140px;height:65px;object-fit:contain;object-position:left center;margin:0 0 22px}

.vibe-family .people-hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:6%;width:90%;margin:auto;padding:55px 0 65px;background:var(--family-paper);align-items:center}.vibe-family .hero-lead{padding:0}.vibe-family .hero-lead h1{font-size:clamp(60px,6.2vw,88px);line-height:1.02}.vibe-hero-art{margin:0;min-width:0}.vibe-hero-art img{display:block;width:100%;height:auto;aspect-ratio:1.05;object-fit:cover;border-radius:48% 48% 5px 5px / 18% 18% 5px 5px}.vibe-hero-art figcaption{font:12px/1.5 DidijahNav;color:#536170;margin-top:14px}.vibe-family .hero-lead>.film-link{display:flex;margin-top:20px}.vibe-family .hero-lead>.family-vibe-mark{margin-bottom:20px}.vibe-family .people-section{border-top:1px solid var(--family-line)}
@media(max-width:760px){.vibe-family .people-hero{grid-template-columns:1fr;padding:35px 0 45px;gap:30px}.vibe-family .hero-lead h1{font-size:62px}.vibe-hero-art img{aspect-ratio:1.25}.vibe-family .hero-lead>.family-vibe-mark{width:125px;height:55px}}

.vibe-family .hero-lead h1 em{font-family:inherit;font-weight:650;font-style:normal}
