/* The selected right-hand portrait layout, now used by ordinary site routes. */
.brand-logo{display:block;width:auto;height:100px;object-fit:contain}
.footer-brand .brand-logo{height:90px}
.footer-nav{display:flex;gap:22px;flex-wrap:wrap;font-size:11px;justify-content:center}
.footer-nav a{padding:8px 0;text-underline-offset:5px}
.footer-nav a:hover{text-decoration:underline}
.approved-site{--paper:#fff;--ink:#191919;--line:#e5e5e2;--muted:#777;background:#fff}
.approved-site .site-header{height:112px;padding:12px 5%;grid-template-rows:44px 36px}
.approved-site .site-header .brand-logo{height:72px}
.approved-site .site-header #navigation>a{--type-size:17px}
.approved-site .site-header #navigation{gap:32px}
.approved-site .social-icons{gap:9px}
.approved-site .social-icons button:disabled{opacity:.5}
.approved-site .site-footer{max-width:1300px;margin:70px auto 0;padding:30px 0 24px;width:90%;grid-template-columns:120px 1fr auto;gap:20px}
.approved-site .site-footer small{margin:0;color:#777;font-size:10px}
.approved-site .preview-note{background:#f7f7f5;border-top:1px solid #eee;letter-spacing:.5px;gap:14px;padding:10px 5%;font-size:9px}
.approved-site .preview-note a{border-bottom:1px solid #b8b8b3;white-space:nowrap}
.approved-site .page{max-width:1440px;padding:32px 5% 50px}
.approved-site .page-heading{align-items:center;margin-bottom:35px}
.approved-site .page-heading h1{font-size:56px;letter-spacing:-1.5px;margin:0}
.approved-site .page-heading .eyebrow{display:none}
.approved-site .tabs{gap:26px;margin:0}
.approved-site .tabs a{min-height:44px;padding:10px 2px;font-size:12px}
.approved-site .model-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 24px}
.approved-site .model-caption{padding-top:12px}
.approved-site .model-caption h2{font-size:11px;letter-spacing:.7px}
.approved-site .model-grid>a:hover .model-caption h2{text-decoration:underline;text-underline-offset:5px}
.approved-site .section-note,.approved-site .study-data-note{font-size:10px;color:#888;margin-top:35px}
.approved-site.sequence-side .study-shell{padding:4px 5% 30px}
.approved-site .study-back{display:inline-flex;align-items:center;min-height:36px;margin-bottom:8px;color:#666}
.approved-site .study-back:hover{color:#111;text-decoration:underline;text-underline-offset:4px}
.approved-site.sequence-side .sequence-opening{max-width:1120px;gap:76px;margin-bottom:55px}
.approved-site.sequence-side .sequence-lead>.photo-button{height:clamp(430px,calc(100svh - 235px),700px)}
.approved-site.sequence-side .control-model-name h1{font-size:30px;letter-spacing:.9px}
.approved-site.sequence-side .study-stats{font-size:12px;gap:21px 40px;max-width:350px;margin-top:32px}
.approved-site.sequence-side .study-stats dt{font-size:10px;letter-spacing:.35px}
.approved-site.sequence-side .profile-resource-links{margin-top:34px;gap:25px!important}
.approved-site.sequence-side .profile-resource-links>a,.approved-site.sequence-side .profile-resource-links>button{--type-size:13px}
.profile-download-detail{font:11px/1.6 Arial,Helvetica,sans-serif;color:#737373;margin:12px 0 0;letter-spacing:.2px}
@media(max-width:600px){.profile-download-detail{text-align:center}}
.approved-site .media-tabs{margin-bottom:28px}
.approved-site .photo-button:focus-visible{outline-offset:4px}
.approved-site .form-layout,.approved-site .contact-layout{padding-top:55px;gap:10%;max-width:1240px}
.approved-site .large-title{font-size:clamp(52px,5vw,72px);letter-spacing:-2px;line-height:1.06}
.approved-site .form-intro>p{font-size:13px;max-width:330px}
.approved-site .form{padding-top:5px}
.approved-site .notice{background:#f7f7f5;border-left:1px solid #bbb;color:#666;font-size:11px;line-height:1.7}
.approved-site .field{font-size:12px;gap:8px}
.approved-site .field input,.approved-site .field textarea{border-color:#c7c7c2;font-size:13px;padding:12px 0}
.approved-site .field input:focus,.approved-site .field textarea:focus{border-color:#111}
.approved-site .form .button{background:#191919;color:#fff;min-width:165px}
.approved-site .contact-row span{font:18px/1.5 Arial,sans-serif}
.approved-site .contact-social-block{margin-top:18px}
.approved-site.entrance-page .site-header,.approved-site.entrance-page>#header-socials{display:none}
.approved-site.entrance-page .entrance{min-height:calc(100svh - 170px);padding:70px 24px 60px}
.approved-site.entrance-page main{min-height:0}
.approved-site.entrance-page .entrance-content{transform:none}
.approved-site .entrance-logo{font:inherit;letter-spacing:normal;margin:0;padding:0}
.approved-site .entrance-logo img{display:block;width:300px;max-width:65vw;height:auto;margin:0 auto}
.approved-site .entrance-links{margin-top:35px;gap:70px}
.approved-site .entrance-links a{font:19px/1.4 Georgia,serif;text-transform:uppercase;letter-spacing:1.5px;position:relative;padding:10px 0 15px}
.approved-site .entrance-links a::after{content:'';height:1px;width:24px;background:#222;position:absolute;bottom:4px;left:50%;transform:translateX(-50%);transition:width .2s}
.approved-site .entrance-links a:hover{text-decoration:none}
.approved-site .entrance-links a:hover::after{width:100%}
.approved-site.entrance-page .site-footer{display:grid;margin-top:0}
.approved-site.entrance-page .site-footer .footer-brand{display:none}
.approved-site.entrance-page .site-footer{grid-template-columns:1fr auto}
.approved-site.entrance-page .footer-nav{justify-content:flex-start}
.approved-site.entrance-page .preview-note{display:none}
@media(max-width:1000px){
 .approved-site .model-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
 .approved-site.sequence-side .sequence-opening{gap:35px}
 .approved-site.sequence-side .control-model-name h1{font-size:25px}
 .approved-site .site-footer{grid-template-columns:100px 1fr}
 .approved-site .footer-contacts{grid-column:2;align-items:flex-end}
 .approved-site .footer-nav{justify-content:flex-end}
}
@media(max-width:700px){
 .approved-site .model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 15px}
 .approved-site .page-heading h1{font-size:43px}
 .approved-site .page-heading{flex-direction:row;align-items:center;gap:15px}
 .approved-site .page{padding-top:24px}
 .approved-site.sequence-side .sequence-lead>.photo-button{height:auto;width:min(100%,460px)}
 .approved-site.sequence-side .sequence-opening{gap:25px;margin-bottom:38px}
 .approved-site.sequence-side .control-model-name h1{font-size:24px}
 .approved-site.sequence-side .study-stats{max-width:none;margin-top:16px;gap:13px 19px;font-size:11px}
 .approved-site.sequence-side .study-stats dt{font-size:10px}
 .approved-site.sequence-side .profile-resource-links{margin-top:20px}
 .approved-site .form-layout,.approved-site .contact-layout{grid-template-columns:1fr;padding-top:30px;gap:35px}
 .approved-site .large-title{font-size:55px}
 .approved-site .form-intro{max-width:none}
 .approved-site .form-intro .steps{margin-bottom:0}
 .approved-site .site-footer{margin-top:45px;gap:18px}
 .approved-site .footer-nav{gap:8px 18px}
 .approved-site .footer-brand .brand-logo{height:75px}
 .approved-site.entrance-page .entrance{min-height:calc(100svh - 215px);padding:55px 24px}
 .approved-site .entrance-logo img{width:260px}
}
@media(max-width:780px){
 .approved-site .site-header{height:auto;min-height:110px;padding:8px 5%;grid-template-rows:58px 36px;gap:0 18px}
 .approved-site .site-header .brand-logo{height:58px}
 .approved-site .brand-logo{height:78px}
 .approved-site .site-header .brand{grid-row:1;grid-column:1;align-self:center}
 .approved-site .menu-toggle{display:flex;grid-column:2;grid-row:1;justify-self:end;gap:12px;align-items:center;font-size:10px;letter-spacing:1px;border:0;background:none;padding:12px 0}
 .approved-site .menu-toggle span{font-size:20px}
 .approved-site .site-header #navigation{display:none;grid-column:auto;grid-row:auto;position:absolute;top:100%;left:0;right:0;z-index:30;padding:18px 5%;flex-direction:column;align-items:flex-start;gap:12px;background:#fff;box-shadow:0 8px 12px #00000008;border-bottom:1px solid #ddd}
 .approved-site .site-header #navigation.open{display:flex}
 .approved-site .site-header #navigation>a{--type-size:17px;padding:10px 0 15px}
 .approved-site .header-socials{grid-column:1/3;grid-row:2;align-self:end;justify-self:end}
 .approved-site .social-icons{gap:7px}
 .approved-site .social-icons a,.approved-site .social-icons button{width:36px;height:36px;padding:8px}
}

/* Compact footer: copyright belongs to the central navigation, not the logo. */
.approved-site:not(.entrance-page) .site-footer{grid-template-columns:minmax(70px,1fr) auto minmax(260px,1fr);grid-template-areas:"logo links contacts" "logo copyright contacts";gap:0 20px;padding:14px 0;align-items:center}
.approved-site:not(.entrance-page) .footer-brand{grid-area:logo;justify-self:start}
.approved-site:not(.entrance-page) .footer-brand .brand-logo{height:60px}
.approved-site:not(.entrance-page) .footer-nav{grid-area:links;justify-content:center;gap:0 20px;align-items:center}
.approved-site:not(.entrance-page) .footer-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 2px;font-size:18px;text-transform:uppercase;letter-spacing:.5px}
.approved-site:not(.entrance-page) .footer-contacts{grid-area:contacts;align-items:flex-end;gap:3px;margin:0;padding:0;border:0}
.approved-site:not(.entrance-page) .site-footer small{grid-area:copyright;text-align:center;margin:0;line-height:20px}
@media(max-width:1000px){
 .approved-site:not(.entrance-page) .site-footer{grid-template-columns:70px 1fr;grid-template-areas:"logo links" "contacts contacts" "copyright copyright";gap:5px 16px}
 .approved-site:not(.entrance-page) .footer-contacts{flex-direction:row;justify-content:center;align-items:center;gap:18px}
}
@media(max-width:600px){
 .approved-site:not(.entrance-page) .site-footer{margin-top:32px;padding:12px 0;grid-template-columns:54px 1fr;grid-template-areas:"links links" "logo contacts" "copyright copyright";gap:4px 12px}
 .approved-site:not(.entrance-page) .footer-brand .brand-logo{height:50px}
 .approved-site:not(.entrance-page) .footer-nav{display:flex;flex-wrap:wrap;gap:0 12px}
 .approved-site:not(.entrance-page) .footer-nav a{min-height:44px;letter-spacing:0}
 .approved-site:not(.entrance-page) .footer-nav a:nth-child(-n+2){flex-basis:calc(50% - 6px)}
 .approved-site:not(.entrance-page) .footer-contacts{flex-direction:column;gap:0;align-items:flex-end}
 .approved-site:not(.entrance-page) #footer-email{font-size:10px;letter-spacing:0}
}

/* Keep the white image popup, with controls in its side gutters. */
dialog.image-dialog{width:650px;max-width:94vw;padding:52px 12px 12px;max-height:94svh}
.image-dialog #dialog-content{max-width:none}
.lightbox-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px}
.lightbox-image{min-width:0}
.lightbox-image .direct-photo{display:flex;align-items:center;justify-content:center;aspect-ratio:auto!important;background:transparent}
.lightbox-image .direct-photo img{position:static;width:auto;height:auto;max-width:100%;max-height:calc(94svh - 112px);object-fit:contain}
.lightbox-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:52px;padding:10px;border:0;background:transparent;color:#222;cursor:pointer;transition:background .15s}
.lightbox-arrow:hover{background:#f0f0ed}
.lightbox-arrow:focus-visible{outline:2px solid #222;outline-offset:1px}
.lightbox-arrow svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lightbox-arrow[hidden]{display:none}
.lightbox-image{grid-column:2;grid-row:1}
.lightbox-previous{grid-column:1;grid-row:1}
.lightbox-next{grid-column:3;grid-row:1}
.lightbox-count{margin:10px 0 0;text-align:center;font-size:11px;line-height:20px;letter-spacing:1px;color:#666;font-variant-numeric:tabular-nums}
@media(max-width:600px){
 .lightbox-stage{grid-template-columns:1fr 1fr;gap:4px}
 .lightbox-image{grid-column:1/-1;grid-row:1}
 .lightbox-image .direct-photo img{max-height:calc(94svh - 156px)}
 .lightbox-previous{grid-column:1;grid-row:2;justify-self:start}
 .lightbox-next{grid-column:2;grid-row:2;justify-self:end}
 .lightbox-arrow{height:44px}
 .lightbox-count{margin:-34px 52px 0;line-height:24px;position:relative;pointer-events:none}
}
@media(max-width:600px){
 .approved-site .site-footer{grid-template-columns:80px 1fr}
 .approved-site .footer-contacts{grid-column:1/-1;align-items:flex-start;border-top:1px solid #eee;padding-top:15px}
 .approved-site.entrance-page .site-footer{grid-template-columns:1fr;padding-top:20px;gap:10px}
 .approved-site.entrance-page .footer-nav{justify-content:center}
 .approved-site.entrance-page .footer-contacts{align-items:center;border:0;padding-top:0}
 .approved-site.entrance-page .site-footer small{text-align:center}
}
