/* Device ergonomics and a licensed, self-hosted DNA film. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.header,.ansara-dock{-webkit-backdrop-filter:blur(12px)}
.mobile-nav{max-height:calc(100vh - 76px);max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch}
.nav a,.footer-top nav a,.footer-top nav button{display:inline-flex;align-items:center;min-height:44px}
.text-link{min-height:44px}.audience-tabs button,.chat-topics button{min-height:44px}
.close-button,.motion-button{width:44px;height:44px;flex-shrink:0}
.motion-button{font-size:16px;color:#fff;border-color:#ffffff55}
.motion-button:hover{background:#ffffff12}
.embryo-panel{display:flex;flex-direction:column;align-items:stretch;background:#07192f;min-height:0}
.panel-top{padding:19px 26px 12px;min-height:75px}
.motion-media{position:relative;width:100%;overflow:hidden;background:#07192f;aspect-ratio:16/10}
.motion-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#07192f}
.motion-credit{position:absolute;bottom:14px;right:24px;color:#a7c2d5;letter-spacing:.16em;font-size:7px;pointer-events:none}
.embryo-caption{padding:24px 30px 22px;margin:0;min-height:213px}
.embryo-caption p{max-width:100%;min-height:86px}
.illustration-note{font-size:9px;line-height:1.7;padding:0 30px 22px;color:#a3b5cd}
.illustration-note a{display:inline-block;text-decoration:underline;text-underline-offset:3px;padding-block:5px}
@supports not (aspect-ratio:16/10){.motion-media{height:0;padding-bottom:62.5%}}
.calculator input[type=range]{-webkit-appearance:none;appearance:none;height:44px;min-height:44px;margin:0;background:transparent;border-radius:0}
.calculator input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:3px;background:linear-gradient(to right,#d9362d 0%,#d9362d var(--range-fill,40%),#dfe3e8 var(--range-fill,40%),#dfe3e8 100%)}
.calculator input[type=range]::-moz-range-track{height:4px;border-radius:3px;background:#dfe3e8}
.calculator input[type=range]::-moz-range-progress{height:4px;border-radius:3px;background:#d9362d}
.calculator input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;margin-top:-10px;background:#d9362d;border:4px solid #fff;box-shadow:0 0 0 1px #d9362d}
.calculator input[type=range]::-moz-range-thumb{width:18px;height:18px;background:#d9362d;border:3px solid #fff;box-shadow:0 0 0 1px #d9362d}
.calculator-controls label{margin-bottom:0}.range-ends{margin-top:0}
.calculator-controls,.calculator-result{min-width:0}
.result-number{gap:clamp(12px,2vw,28px);flex-wrap:wrap}
.result-number output{font-size:clamp(56px,7vw,85px);font-variant-numeric:tabular-nums}
.result-dots{grid-template-columns:repeat(20,minmax(0,1fr));width:100%;max-width:350px;gap:5px}
.result-dots i{width:min(7px,100%);height:7px}
.partner-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.partner-grid .partner-card{min-height:170px;padding:0;min-width:0;background:#fff}
.partner-card a{display:flex;width:100%;height:100%;min-height:170px;align-items:center;justify-content:center;padding:30px;gap:14px;transition:background .2s}
.partner-card a:hover{background:#f5f6f8}
.partner-card img{width:100%;height:auto;object-fit:contain;max-width:235px;max-height:92px}
.partner-nu img{max-width:240px}.partner-impact img{max-width:240px}.partner-kusto img{max-width:185px}.partner-kazbeef img{max-width:200px}.partner-terra img{max-width:185px}
.partner-embassy img{width:70px;height:70px;flex-shrink:0}
.partner-embassy span{font-size:12px;line-height:1.6;font-weight:600;max-width:148px}
.partner-embassy small{display:block;font-size:10px;font-weight:400}
.ansara-dock{right:calc(20px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px))}
dialog:not([open]){display:none}
dialog{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
dialog::backdrop{-webkit-backdrop-filter:blur(5px)}
dialog textarea{font-size:16px;min-height:110px}
.chat-person{padding-right:15px}.chat-person img{flex-shrink:0}
#motion-footer{min-height:44px}
:target{scroll-margin-top:12px}
@media(min-width:601px) and (max-width:850px){
 .motion-media{aspect-ratio:16/8}.embryo-caption{min-height:0}.embryo-caption p{min-height:0}
 .partner-card a{padding:23px}.partner-embassy a{flex-direction:column;gap:8px}.partner-embassy img{width:58px;height:58px}.partner-embassy span{text-align:center;font-size:10px}
}
@media(max-width:600px){
 .mobile-nav{max-height:calc(100vh - 72px);max-height:calc(100dvh - 72px)}
 .panel-top{padding:15px 20px 8px}.embryo-caption{padding:20px 22px;min-height:0}.embryo-caption p{min-height:0}
 .illustration-note{padding:0 22px 18px;font-size:8px}.motion-media{aspect-ratio:4/3}.motion-credit{right:20px;font-size:6px}
 .result-number output{font-size:clamp(58px,17vw,78px)}.result-number>span{font-size:13px}.result-dots{gap:4px}.result-dots i{height:5px;width:5px;max-width:100%}
 .partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .partner-grid .partner-card{min-height:138px}.partner-card a{min-height:138px;padding:20px 15px}
 .partner-card img{max-width:175px;max-height:75px}
 .partner-embassy a{flex-direction:column;gap:7px;padding:13px 9px}.partner-embassy img{width:48px;height:48px}.partner-embassy span{text-align:center;font-size:9px;line-height:1.4}.partner-embassy small{font-size:8px;margin-top:2px}
 .ansara-dock{right:calc(12px + env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px))}
 .chat-person{padding-right:10px;align-items:flex-start}.chat-person h2{font-size:18px}.chat-person img{width:42px;height:42px}.chat-person .eyebrow{max-width:135px}
 .chat-topics button{font-size:11px;padding:9px 10px}.close-button{right:5px;top:4px}
 dialog{padding-top:43px}dialog .button{gap:12px;font-size:12px}
 .footer-top nav{gap:18px}
}
@media(max-width:360px){
 .hero-actions{gap:10px}.hero-actions .text-link{font-size:10px}.hero .eyebrow{font-size:6.4px}
 h2,.world-intro h2,.equipment-grid h2,.region h2,.team h2,.faq h2,.cta h2{font-size:28px}
 .stage-tabs button{font-size:9px;gap:7px}.stage-copy h3,.farm-story h3{font-size:23px}
 .calculator-controls,.calculator-result{padding:24px 20px}.calculator h3{font-size:23px}
 .chart-heading{align-items:flex-start;flex-direction:column}.world-chart{padding:22px}
 .partner-card a{padding-inline:12px}.partner-grid .partner-card,.partner-card a{min-height:124px}
 .arkalyk-grid strong{font-size:22px}.caucasus{gap:10px;font-size:10px}
}
@media(max-height:500px) and (max-width:850px){
 .mobile-nav{padding-top:8px;padding-bottom:14px}.mobile-nav>a{padding-block:8px;font-size:16px}.mobile-nav .button{margin-top:12px}
 dialog{padding:30px 25px 24px}.chat-person{margin-bottom:13px}.chat-topics{margin-block:12px}
}

/* Direct project contact, with full-row phone and email touch targets. */
.project-contact{font-style:normal;border:1px solid #ffffff38;padding:28px;min-width:0;align-self:center;background:#ffffff06}
.project-contact>.eyebrow{color:#c8d1df;font-size:11px}
.project-contact h3{color:#fff;font-size:25px;line-height:1.3;margin:12px 0 22px}
.contact-detail{position:relative;display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:84px;padding:15px 26px 15px 0;border-top:1px solid #ffffff30}
.contact-detail>span{color:#c8d1df;font-size:12px}
.contact-detail strong{font-size:19px;font-weight:600;line-height:1.5;color:#fff;font-variant-numeric:tabular-nums}
.contact-email strong{font-size:16px;overflow-wrap:anywhere}
.contact-detail>b{position:absolute;right:0;bottom:20px;font-size:22px;font-weight:400;color:#ff9b8d}
.contact-detail:hover strong{text-decoration:underline;text-underline-offset:4px}
.contact-detail:focus-visible{outline-color:#fff;outline-offset:3px}
@media(min-width:851px){.cta{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(30px,5vw,90px);align-items:center}.project-contact{max-width:460px;width:100%;justify-self:end}}
@media(max-width:850px){.project-contact{margin-top:32px;padding:24px 20px}.project-contact h3{font-size:25px;margin-bottom:18px}.contact-detail{min-height:88px}.contact-detail>span{font-size:13px}.contact-detail strong{font-size:20px}.contact-email strong{font-size:16px}.project-contact>.eyebrow{margin-bottom:0}}
@media(max-width:360px){.project-contact{padding:22px 16px}.project-contact h3{font-size:23px}.contact-email strong{font-size:15px}}
