/* Shared navigation and footer, extending the approved Emerald Atelier. */
.premium-site .audience-updated .audience-list li > strong { display:block; margin-bottom:6px; }
.premium-site .audience-updated .audience-list li > p { margin:0; }
.premium-site .audience-updated .audience-note { max-width:60ch; font-family:var(--sans); font-size:17px; line-height:1.7; }
.premium-site .audience-updated .audience-note strong { font-weight:650; color:#174637; }
.premium-site .situations-updated .situation-result-label { display:block; margin-bottom:10px; font-family:var(--sans); font-size:12px; line-height:1.5; font-style:normal; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--section-accent); }
.premium-site .situations-updated .situation-cell-result strong { font-weight:600; }
@media(min-width:1201px){.premium-site .situations-updated .situations-strip { grid-template-rows:repeat(4,auto); }.premium-site .situations-updated .situation-cell { grid-template-rows:subgrid; grid-row:span 4; }}
.premium-site .profile-copy-updated .profile-prose p + p { margin-top:20px; }
.premium-site .profile-copy-updated .profile-prose strong { color:#f5eddc; font-weight:650; }
.premium-site .profile-copy-updated .profile-facts { padding-top:28px; border-top:1px solid #4c6c5b; }
.premium-site .profile-copy-updated .profile-facts h3 { color:#dec48c; }
.premium-site .hero-copy .hero-prelude { color:#fbf6e9; font-family:var(--serif); font-size:clamp(46px,4.45vw,78px); font-weight:400; line-height:1.1; letter-spacing:-.035em; margin:0; text-wrap:balance; }
.premium-site .hero-copy .hero-supporting { color:#dec48c; font-family:var(--sans); font-size:clamp(18px,1.4vw,21px); font-weight:500; line-height:1.6; letter-spacing:0; margin:26px 0 0; }
.premium-site .hero-copy .hero-supporting em { color:inherit; font-style:italic; font-weight:inherit; }
.premium-site .hero-method-note { margin:22px 0 0; color:#dec48c; font-size:14px; line-height:1.6; }
@media(max-width:760px){.premium-site .hero-copy .hero-prelude { font-size:clamp(36px,9.4vw,54px); line-height:1.12; }.premium-site .hero-copy .hero-supporting { margin-top:22px; font-size:18px; }}
.premium-site { --serif:'Source Serif 4 Variable',Georgia,serif; --sans:'Manrope Variable',Arial,sans-serif; --font-serif:var(--serif); --font-sans:var(--sans); --gutter:clamp(24px,4.7vw,88px); font-family:var(--sans); }
.premium-site .masthead { background:#073f35; color:#fbf6e9; position:relative; z-index:30; }
.premium-site .masthead .brand-row { max-width:1464px; margin-inline:auto; width:calc(100% - 2 * var(--gutter)); }
.premium-site .est-emblem { overflow:visible; flex-shrink:0; }
.premium-site .est-emblem-star { transform-origin:627px 612px; animation:est-emblem-turn 30s linear infinite!important; }
@keyframes est-emblem-turn { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }
.premium-site .masthead .brand-name { color:#fbf6e9; font-family:var(--serif); font-size:30px; font-weight:500; line-height:1.1; letter-spacing:-.035em; }
.premium-site .masthead :is(.brand-tag,.brand-kicker) { color:#d5ded5; font-family:var(--sans); white-space:normal; line-height:1.5; }
.premium-site .masthead .brand-kicker { font-size:11px; letter-spacing:.09em; }
.premium-site .masthead .brand-tag { font-size:12px; letter-spacing:0; }
.premium-site .masthead .navigation { max-width:1464px; margin-inline:auto; width:calc(100% - 2 * var(--gutter)); border-color:#45675a; }
.premium-site .masthead .languages a { color:#d5ded5; border-radius:3px; }
.premium-site .masthead .languages a[aria-current] { color:#f7e2b7; }
.premium-site .masthead .languages a[aria-current]::after,.premium-site .masthead .nav-links>a[aria-current]::after { background:#d9bd80; }
.premium-site .masthead .nav-links>a { padding-block:19px; min-height:54px; font-size:14px; }
.premium-site .masthead .nav-links>a[aria-current] { color:#f7e2b7; }
.premium-site .masthead .menu-toggle { border-color:#688778; color:#fbf6e9; border-radius:50%; }
.premium-site .masthead :is(a,button):focus-visible { outline:2px solid #e3c991; outline-offset:5px; }
.premium-site :is(input,textarea,select) { caret-color:#9b783d; }
.premium-site .contact-success-icon { color:#073f35; background:#e6ebdf; }
.premium-site .site-footer { --section-ink:#f5eddc; --section-muted:#c5d3c4; background:#082f29; position:relative; }
.premium-site .site-footer::before,.premium-site .site-footer::after { content:none; }
.premium-site .site-container { width:min(100% - 2 * var(--gutter),1464px); margin-inline:auto; }
.premium-site .site-footer .site-container { padding:0; }
.premium-site .footer-top { grid-template-columns:minmax(260px,.95fr) minmax(0,1.05fr); }
.premium-site .site-footer .footer-lockup__name { color:#eddbb6; font-family:var(--serif); font-style:italic; font-weight:450; font-size:29px; letter-spacing:-.035em; text-transform:none; }
.premium-site .site-footer .footer-lockup__line { color:#f5eddc; font-size:13px; letter-spacing:0; text-transform:none; }
.premium-site .site-footer .footer-lockup__tag { color:#c5d3c4; font-size:12px; letter-spacing:.02em; text-transform:none; }
.premium-site .site-footer .footer-disclaimer { max-width:100ch; color:#c5d3c4; font-size:13px; line-height:1.8; text-align:left; margin:0; padding-top:26px; border-color:#45624e; }
.premium-site .site-footer .footer-legal-block { color:#c5d3c4; text-align:left; margin-top:26px; font-size:13px; line-height:1.7; gap:12px; }
.premium-site .site-footer .footer-legal-line { color:#c5d3c4; }
.premium-site .site-footer .footer-legal-line--muted { color:#b8cabc; font-size:12px; }
.premium-site .site-footer .footer-nav-link { text-wrap:pretty; color:#d5dfd5; font-size:15px; font-weight:500; letter-spacing:0; }
.premium-site .footer-nav-link[aria-current] { color:#f0d8a7; text-decoration:underline; text-underline-offset:6px; }
.premium-site ::selection { background:#d9bd80; color:#082f29; }
.premium-site { scrollbar-color:#9ba998 #f6f5ee; scrollbar-width:thin; }
.premium-site .motion-reveal { opacity:1!important; transform:none!important; filter:none!important; }
@media(hover:hover){
 .premium-site .masthead .nav-links>a:hover { color:#e3c991; }
 .premium-site .masthead .languages a:hover { background:#164e42; color:#fbf6e9; }
 .premium-site .footer-nav-link:hover { color:#e3c991; }
}
@media(max-width:1100px){
 .premium-site .masthead .brand-row { min-height:100px; }
 .premium-site .masthead .navigation { max-height:calc(100dvh - 110px); overflow-y:auto; overscroll-behavior:contain; }
 .premium-site .masthead .nav-links>a { white-space:normal; font-size:18px; }
 .premium-site .masthead .nav-links>a[aria-current]::after { right:auto; width:28px; }
 .premium-site .footer-top { grid-template-columns:1fr; gap:36px; }
}
@media(max-width:760px){
 .premium-site .masthead .brand-row { width:calc(100% - 32px); gap:10px; }
 .premium-site .masthead .navigation { width:calc(100% - 48px); }
 .premium-site .masthead .brand-name { font-size:25px; }
 .premium-site .masthead .brand-kicker { font-size:10px; letter-spacing:0; }
 .premium-site .masthead .brand-tag { font-size:10px; }
 .premium-site .masthead .brand-mark { width:38px; height:38px; flex-basis:38px; }
 .premium-site .masthead .brand-text { padding-left:10px; }
 .premium-site .masthead .brand-lockup { gap:10px; }
 .premium-site .masthead .header-tools { flex:0 0 44px; }
 .premium-site .footer-nav-groups { grid-template-columns:1fr 1fr; }
 .premium-site .footer-top { gap:32px; }
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important;}}
/* Unified, quiet contact card; the same form also opens in the dialog. */
.premium-site #contact .contact-layout { grid-template-columns:1fr; max-width:900px; gap:32px; padding:clamp(26px,5vw,60px); border:1px solid #587266; border-radius:24px; background:#092e28; }
.premium-site #contact .contact-layout .section-title { max-width:24ch; font-family:var(--sans); font-size:clamp(29px,3.2vw,43px); font-weight:700; line-height:1.23; letter-spacing:-.035em; }
.premium-site #contact .contact-layout > div:first-child > p:not(.eyebrow) { max-width:60ch; margin-top:22px; font-size:17px; }
.premium-site .contact-form,.premium-site .contact-dialog.is-modal .contact-form { padding:0; background:transparent; border:0; box-shadow:none; color:#f6f5ee; gap:22px; }
.premium-site .contact-form label { color:#c7d4ca; font-size:11px; letter-spacing:.09em; }
.premium-site .contact-form :is(input,textarea) { background:#183d35; color:#faf6ec; border:1px solid #607c6e; border-radius:10px; min-height:54px; padding:14px 16px; box-shadow:none; caret-color:#dec48c; font-size:16px; }
.premium-site .contact-form :is(input,textarea):focus { outline:2px solid #dec48c; outline-offset:3px; border-color:#dec48c; }
.premium-site .contact-form textarea { min-height:116px; }
.premium-site .contact-form > p { color:#c7d4ca; font-size:14px; }
.premium-site .contact-form button[type=submit] { border-radius:10px; min-height:56px; font-weight:700; }
.premium-site .contact-form [role=status] { color:#f3d39a; }
.premium-site .contact-dialog.is-modal { border-radius:20px; }
.premium-site .contact-dialog.is-modal .contact-form { padding:0 36px 32px; }
@media(max-width:600px){
 .premium-site #contact .contact-layout { width:calc(100% - 32px); padding:28px 20px; border-radius:18px; gap:28px; }
 .premium-site .contact-dialog.is-modal .contact-form { padding:0 22px 26px; }
 .premium-site .contact-form > .grid:first-child { grid-template-columns:1fr; gap:22px; }
}
