/* hrHivora — site-wide visual QA and readability pass.
   Deliberately applied last so typography and responsive fixes are consistent. */
:root{--cream:#f1f4e9;--ink:#202b25}
html{scroll-padding-top:82px}
body{font-family:"Segoe UI",Arial,Helvetica,sans-serif;text-rendering:optimizeLegibility}
button,a,summary{-webkit-tap-highlight-color:rgba(87,121,235,.17)}
:where(a,button,summary):focus-visible{outline:3px solid #6223df;outline-offset:4px}
.navigation{background:rgba(249,246,238,.96);backdrop-filter:blur(18px);box-shadow:0 3px 16px #24392b0c}
.nav-apply{min-height:48px;background:#19313b;color:white;border-color:#19313b;padding:12px 20px;box-shadow:0 5px 15px #0f2b3721}
.nav-apply:hover{background:#294b56;transform:translateY(-1px);box-shadow:0 9px 20px #163a3e2c}
.menu a{font-size:13px;line-height:1.35}
.dev-strip{min-height:30px;height:auto;padding-block:7px;font-size:10px}
.hero{background:
 radial-gradient(ellipse 43% 58% at 84% 27%,rgba(208,198,246,.22),transparent 67%),
 linear-gradient(115deg,#f4f7eb,#eeeae4 66%,#ece9e3)}
.hero h1{font-weight:800;letter-spacing:-.078em}
.hero-lede{font-size:17px;line-height:1.72;color:#47594f}
.big-cta,.close-cta{min-height:56px;font-size:14px;line-height:1.3;padding-inline:23px;box-shadow:0 9px 22px #5625b333}
.big-cta:hover,.close-cta:hover{box-shadow:0 16px 32px #6124ab3b}
.text-link{font-size:13px;min-height:45px}
.fineprint{font-size:11px;line-height:1.6}
.hero-phone{box-shadow:0 33px 55px #17272560,12px 13px 0 #28352c,inset 0 2px 4px #ffffffaa;filter:drop-shadow(0 18px 23px #213a3a20)}
.hero-card-yellow{box-shadow:12px 22px 0 #344f3e33,0 27px 40px #25464629}
.hero-sticker{box-shadow:8px 12px 0 #573f3940,0 23px 30px #9c913729}
.phone-top,.phone-step,.phone-footer{font-size:10px}
.phone-copy strong{overflow-wrap:normal;line-height:1.03}
.phone-copy p{font-size:13px;line-height:1.52}
.phone-choice{min-height:49px}
.ribbon{box-shadow:0 9px 18px #4b31883d}
.belief{background:linear-gradient(115deg,#aaa5eb,#b4b1f3 77%,#cac6f2);position:relative}
.belief::before{content:"";position:absolute;right:0;top:7%;width:35%;height:70%;pointer-events:none;background:radial-gradient(ellipse,#f7f8ff54,transparent 68%);filter:blur(30px)}
.belief-right h2{position:relative;z-index:1}
.belief-under p{font-size:17px}
.micro,.section-serial{font-size:11px;line-height:1.6}
.vacancy{background:#f2f5eb}
.vacancy-intro>p{font-size:16px;line-height:1.8}
.open-role{background:
 radial-gradient(ellipse at 85% 24%,#496e5846,transparent 50%),
 linear-gradient(140deg,#213a42,#192d37 80%);box-shadow:0 26px 55px #25454733,12px 15px 0 #a9d6a3;isolation:isolate}
.open-role h3{font-weight:740}
.role-postit{box-shadow:9px 13px 0 #08111bb3,0 25px 36px #09151976;background:#fff5b0}
.role-postit p{line-height:1.17}
.role-button{font-size:14px;min-height:57px;line-height:1.3;transition:background .2s,transform .2s,box-shadow .2s;box-shadow:0 4px 13px #0002}
.role-button:hover{background:#c0fcaa;transform:translateY(-2px);box-shadow:0 8px 20px #0003}
.role-bottom small{font-size:11px;color:#d4e6dc;line-height:1.45}
.role-footnote{font-size:11px;line-height:1.65;color:#d1e1d0;max-width:890px}
.roles-closed>p,.closed-rows span{font-size:11px;line-height:1.5}
.closed-rows>div{transition:padding-inline .2s,background .2s}
.closed-rows>div:hover{background:#e7eae1;padding-inline:13px}
.journey{background:linear-gradient(126deg,#efd9e9,#eddce7 66%,#f2dcef)}
.journey-top>p,.product-title-row>p{font-size:16px;line-height:1.76}
.journey-tab{min-height:64px;line-height:1.25}
.journey-tab>span{font-size:12px}
.journey-tab.is-active{box-shadow:6px 8px 0 #dba5e3,0 13px 20px #722d8e38}
.journey-scene{box-shadow:7px 10px 0 #a896bd,0 25px 45px #74477a26;background:#f6f9ed}
.journey-view>p{font-size:15px;line-height:1.7;color:#51525b}
.scene-overline,.scene-foot{font-size:11px;line-height:1.5}
.scene-art{box-shadow:0 8px 24px #4e28521e,inset 1px 1px 1px #fff8;border-radius:12px}
.scene-art-1>span{letter-spacing:-.09em}
.journey-explainer p{font-size:14px;line-height:1.7}
.product{background:linear-gradient(145deg,#d4eccd,#d8ecd3 65%,#cfe9c7)}
.product-title-row{margin-bottom:50px}
.product-showcase{background:linear-gradient(135deg,#6b2dc5,#662bb8 75%,#5e27a9);box-shadow:0 23px 52px #603b8e37,12px 15px 0 #b9c6a7;border-radius:18px}
.product-label small,.product-head,.product-sidebar>p{font-size:11px;line-height:1.5}
.product-tab{min-height:59px;font-size:16px;line-height:1.35;letter-spacing:-.015em}
.product-tab>span{font-size:11px}
.product-tab.is-active{background:#acf18c;box-shadow:0 8px 16px #38156f26}
.product-tab:focus-visible{outline-color:#aaf1a7}
.product-display{background:linear-gradient(135deg,#edf3eb,#dfece0);box-shadow:inset 2px 2px 0 #ffffffba,0 13px 26px #41107d18}
.product-view>p{font-size:15px;line-height:1.7}
.product-head{font-size:11px}
.mockfield{min-height:65px;box-shadow:0 3px 12px #44574710}
.mockfield small{font-size:11px}
.mockfield b{font-size:16px}
.mockprogress{font-size:12px;min-height:52px;align-items:center}
.mockchat small{font-size:10px}
.mockchat p{font-size:14px;line-height:1.6}
.people{background:linear-gradient(160deg,#e0ebdf,#e4eade 70%,#e0ecdf)}
.people-heading>p{font-size:16px;line-height:1.7}
.person-card{background:#f8fbf0;box-shadow:0 10px 0 #455b4a32,0 24px 50px #28454225;border-radius:11px}
.person-card>img{filter:saturate(.93) contrast(1.01)}
.person-copy blockquote{line-height:1.24}
.person-copy>span,.person-copy small{font-size:11px;line-height:1.5}
.people-annotation{box-shadow:7px 10px 0 #7b695a40,0 16px 38px #674b443c}
.people-note>span{font-size:11px}
.people-note p{font-size:13px}
.honesty{background:#f2ebb2}
.honesty-intro>p,.honesty-rows details>p{font-size:15px;line-height:1.74}
.honesty-rows summary{min-height:74px}
.honesty-rows summary strong{font-size:20px;line-height:1.3}
.honesty-rows summary b{min-width:44px;min-height:44px;width:44px;height:44px;border-radius:50%;transition:background .2s,transform .22s}
.honesty-rows details[open] summary b{background:#fcfad2}
.honesty-rows details>p{max-width:600px}
.close{background:linear-gradient(140deg,#6a2dc9,#7029c7 77%,#602ab3)}
.close-cta{box-shadow:0 10px 20px #2b106c30}
.close-note{font-size:11px;line-height:1.65;max-width:560px}
.close-decor{filter:drop-shadow(-20px 20px 35px #48178766)}
.footer{background:#1b2b30}
.footer-main>div p{font-size:14px;line-height:1.7}
.footer-main nav a{font-size:13px;min-height:28px}
.footer-bottom{font-size:10px;line-height:1.6}

/* Tablet should not inherit a rigid desktop hero collage width. */
@media(max-width:1050px){
 .navigation .menu{gap:14px}
 .hero-phone{max-width:480px}
 .hero-card-yellow{max-width:340px}
 .product-title-row{gap:32px}
}

/* Mobile type, content length, comfortable hit areas */
@media(max-width:700px){
 .dev-strip{font-size:9px;line-height:1.25}
 .navigation{height:70px}
 .hamburger{width:44px;height:44px;padding:10px}
 .hamburger span{height:2px;width:24px;margin:7px 0}
 .mobile-nav:not([hidden]){top:100px}
 .mobile-nav a{min-height:54px;align-items:center;line-height:1.3}
 .hero-copy{padding-top:65px}
 .hero h1{font-size:clamp(49px,10.3vw,79px);line-height:1.045}
 .hero-lede{font-size:15px;line-height:1.7}
 .hero-actions .big-cta{min-height:59px;font-size:14px}
 .hero .text-link{font-size:13px}
 .section-serial,.micro{font-size:10px}
 .phone-step,.phone-top{font-size:8px}
 .phone-copy p{font-size:10px}
 .fineprint{font-size:10px}
 .belief-under p{font-size:15px}
 .vacancy-intro>p{font-size:15px;line-height:1.7}
 .open-role-main{padding:37px 0 29px}
 .open-role h3{font-size:clamp(58px,15.1vw,80px);line-height:.98;letter-spacing:-.079em}
 .job-eyebrow{font-size:10px}
 .role-postit{min-height:185px}
 .role-postit p{font-size:23px;line-height:1.24}
 .role-bottom{gap:18px}
 .role-bottom small{font-size:10px}
 .role-bottom strong{font-size:18px}
 .role-button{font-size:14px;min-height:57px}
 .role-footnote{font-size:11px;line-height:1.7}
 .roles-closed>p,.closed-rows span{font-size:10px}
 .closed-rows>div{min-height:75px}
 .journey h2{font-size:clamp(39px,9.6vw,67px)}
 .journey-top>p,.product-title-row>p{font-size:15px}
 .journey-tab{min-height:68px;font-size:14px}
 .journey-tab>span{font-size:11px}
 .journey-view{min-height:515px}
 .journey-view>p{font-size:14px}
 .scene-overline,.scene-foot{font-size:10px}
 .scene-art-1>span{font-size:clamp(44px,13vw,69px)}
 .scene-art-1>i{font-size:90px;right:4%;top:0}
 .scene-art-2>i{font-size:clamp(20px,6.4vw,32px);right:5%;white-space:normal}
 .product-main{gap:16px}
 .product-label{font-size:15px}
 .product-label small{font-size:9px}
 .product-sidebar{gap:7px}
 .product-tab{font-size:12px;line-height:1.25;min-height:76px;hyphens:auto;overflow-wrap:break-word}
 .product-tab>span{font-size:11px}
 .product-sidebar>p{font-size:11px;line-height:1.55}
 .product-view{padding:24px 17px 28px;min-height:445px}
 .product-view h3{font-size:clamp(35px,8.7vw,56px);line-height:1.03;overflow-wrap:break-word}
 .product-view>p{font-size:14px}
 .product-head{font-size:9px;line-height:1.4}
 .mockfield small,.mockchat small{font-size:10px}
 .mockfield b,.mockchat p{font-size:13px}
 .mockprogress{font-size:11px}
 .people-heading>p{font-size:14px}
 .person-copy>span,.person-copy small{font-size:10px}
 .people-note>span{font-size:11px}.people-note p{font-size:12px}
 .honesty-intro>p,.honesty-rows details>p{font-size:14px}
 .honesty-rows summary{gap:9px;min-height:72px}
 .honesty-rows summary strong{font-size:16px}
 .honesty-rows summary b{width:44px;height:44px;min-width:44px;min-height:44px}
 .close-copy>p:not(.close-note){font-size:15px;line-height:1.75}
 .close-cta{font-size:13px;min-height:58px}
 .close-note{font-size:10px;line-height:1.6}
 .footer-main>div p{font-size:13px}.footer-main nav a{font-size:13px}
 .footer-bottom{font-size:10px}
}
@media(max-width:360px){
 .hero h1{font-size:clamp(41px,12.2vw,46px)}
 .hero .highlight-text{font-size:.69em}
 .open-role h3{font-size:clamp(49px,15vw,54px);letter-spacing:-.08em}
 .vacancy h2{font-size:clamp(42px,12.2vw,49px)}
 .journey h2{font-size:clamp(34px,10.7vw,39px);letter-spacing:-.075em}
 .journey-view h3{font-size:34px}
 .role-postit p{font-size:21px}
 .product-view h3{font-size:32px}
 .product-tab{font-size:11px}
 .people h2{font-size:clamp(43px,12.5vw,50px)}
 .honesty h2{font-size:clamp(40px,12vw,48px)}
 .close h2{font-size:clamp(44px,13.5vw,49px)}
 .close-cta{gap:8px;padding-inline:13px;font-size:12px}
 .close-note{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 .open-role,.role-postit,.person-card,.product-showcase{animation:none!important}
}
@media(max-width:700px){.product-tab{font-size:13px;min-height:73px}}
@media(max-width:360px){.product-tab{font-size:12px;min-height:73px}}
/* Small-phone selectors use full-size readable labels, not miniature UI. */
@media(max-width:520px){.depth-select{font-size:13px;font-weight:720}.depth-select span{display:none}}
@media(max-width:360px){.depth-select{font-size:12px}}
