/*
Theme Name: OAS Global Framework
Description: Responsive OAS global navigation, footer and editorial layout.
Version: 1.0.2
*/
/* OAS approved page headings: target real page DOM (no .oas-page ancestor requirement). */
.oas-contact-v2 .oas-hero h1,.oas-contact-v2 .oas-panel h2,.oas-contact-v2 .oas-panel .wp-block-heading,.oas-resources .oas-resources-intro h2,.oas-resources .oas-resources-card h3{font-family:Montserrat,Arial,sans-serif!important;font-weight:800!important;font-synthesis:weight!important;text-wrap:balance!important}
/* OAS sitewide hero/section heading emphasis. Scoped overrides support legacy page CSS. */
.oas-page .oas-resources .oas-resources-hero h1,.oas-page .oas-resources .oas-resources-intro h2,.oas-page .oas-resources .oas-resources-card h3,.oas-page .oas-contact-v2 .oas-hero h1,.oas-page .oas-contact-v2 .oas-panel h2{font-weight:800!important;text-wrap:balance;}
/* OAS Concept A monogram trial — theme draft only, not final vector art. */
.oas-header .oas-brand-concept-a{display:inline-flex!important;align-items:center!important;gap:10px!important;min-width:0!important}
.oas-header .oas-concept-a-mark{display:block;flex:0 0 auto;width:clamp(46px,4.7vw,62px);height:clamp(46px,4.7vw,62px)}
.oas-header .oas-brand-concept-a .oas-brand-main{font-family:Montserrat,Arial,sans-serif!important;font-weight:800!important;font-size:clamp(13px,1.3vw,18px)!important;line-height:1.15!important;letter-spacing:-.02em!important;white-space:normal!important;text-wrap:balance!important}
.oas-header .oas-brand-concept-a .oas-brand-byline{font-family:Manrope,Arial,sans-serif!important;font-size:clamp(9px,.82vw,11px)!important;letter-spacing:.02em!important}
@media(max-width:600px){.oas-header .oas-brand-concept-a{gap:6px!important}.oas-header .oas-concept-a-mark{width:43px;height:43px}.oas-header .oas-brand-concept-a .oas-brand-main{font-size:12px!important;max-width:165px!important}.oas-header .oas-brand-concept-a .oas-brand-byline{font-size:9px!important}}
.oas-header .oas-brand-concept-a .oas-brand-beauty{font-family:"Birthstone Bounce",cursive!important;font-weight:400!important;font-size:1.65em!important;line-height:.9!important;color:#FBAC40!important;display:inline-block!important;transform:rotate(-3deg)!important;margin:0 .06em!important}
/* Contact page: restore approved bold hero heading in draft preview. */
.oas-contact-v2 .oas-hero h1{font-family:Montserrat,Arial,sans-serif!important;font-weight:800!important}
/* Sitewide heading balance: editorial titles, not running body copy. */
.oas-page :is(h1,h2,h3,h4,h5,h6),.oas-home :is(h1,h2,h3,h4,h5,h6),.oas-page blockquote,.oas-page .oas-statement{ text-wrap:balance; overflow-wrap:normal; }
/* Keep responsive line breaks natural; legacy hard-coded <br> tags require page-level review. */
@media(max-width:767px){.oas-page :is(h1,h2,h3,h4,h5,h6),.oas-home :is(h1,h2,h3,h4,h5,h6){text-wrap:balance;max-width:100%;}}

/* Contact: prevent nested scrollbars and cramped form fields */
.oas-page .oas-contact-v2,.oas-page .oas-contact-v2 .oas-inner,.oas-page .oas-contact-v2 .oas-panel{overflow:visible!important;max-height:none!important;height:auto!important}
.oas-page .oas-contact-v2 .wp-block-columns,.oas-page .oas-contact-v2 .wp-block-column,.oas-page .oas-contact-v2 .ff-el-group{min-width:0!important;max-width:100%!important}
.oas-page .oas-contact-v2 .ff-el-form-control,.oas-page .oas-contact-v2 .fluentform,.oas-page .oas-contact-v2 form{max-width:100%!important}
.oas-page .oas-contact-v2 .ff-btn-submit,.oas-page .oas-contact-v2 .ff_submit_btn_wrapper button{background:#D2232A!important;background-image:none!important;color:#fff!important}
.oas-page .oas-contact-v2 .ff-btn-submit:hover,.oas-page .oas-contact-v2 .ff_submit_btn_wrapper button:hover{background:#000!important;background-image:none!important;color:#fff!important}
@media(max-width:781px){.oas-page .oas-contact-v2 .wp-block-columns{display:flex!important;flex-direction:column!important;gap:26px!important}.oas-page .oas-contact-v2 .wp-block-column{flex-basis:auto!important;width:100%!important}.oas-page .oas-contact-v2 .oas-panel{padding:30px 18px!important}.oas-page .oas-contact-v2 .oas-hero{padding:60px 20px!important}}

/* Homepage: wide, higher-positioned cards */
.oas-home .oas-home-inner{max-width:1360px;margin:0 auto;padding:clamp(20px,3vw,40px) clamp(18px,3vw,42px) 65px}
.oas-home .jss-gateway-container{width:100%!important;max-width:1320px!important;margin:0 auto!important;padding:0!important}
.oas-home .jss-path-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:clamp(20px,3vw,40px)!important;width:100%!important;max-width:none!important;margin:0 auto!important;align-items:stretch}
.oas-home .jss-path-card{width:100%!important;max-width:none!important;min-width:0!important;min-height:0!important;padding:clamp(24px,3vw,42px)!important}
.oas-home .jss-path-card h2{font-size:clamp(25px,2.6vw,37px)!important;line-height:1.18!important}
.oas-home .oas-gateway-supporting{margin-top:clamp(55px,6vw,90px)!important;margin-bottom:22px!important;padding:0 12px!important}
.oas-home .oas-gateway-supporting h1{font-size:clamp(17px,1.7vw,22px)!important;line-height:1.4!important}
@media(max-width:767px){.oas-home .oas-home-inner{padding:20px 16px 45px}.oas-home .jss-path-grid{grid-template-columns:1fr!important;gap:20px!important}.oas-home .jss-path-card{padding:26px 22px!important}.oas-home .oas-gateway-supporting{margin-top:48px!important}}
/* Brand typography with stronger specificity */
.oas-header .oas-brand .oas-brand-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:3px!important}
.oas-header .oas-brand .oas-brand-main{font-family:Montserrat,Arial,sans-serif!important;color:#000000!important;font-weight:800!important;line-height:1.3!important}
.oas-header .oas-brand .oas-brand-beauty{font-family:"Birthstone Bounce",cursive!important;color:#FBAC40!important;font-size:1.6em!important;font-weight:500!important}
.oas-header .oas-brand .oas-brand-byline{display:block!important;font-family:Manrope,Arial,sans-serif!important;font-size:11px!important;font-weight:500!important;line-height:1.2!important;color:#000000!important}


/* Homepage visual hierarchy refinement */
.oas-home .jss-path-card h2,.oas-home .jss-gateway-container .jss-path-card h2{font-size:clamp(32px,3.25vw,46px)!important;line-height:1.12!important;font-weight:800!important;letter-spacing:-.035em!important;margin-bottom:20px!important}
.oas-home .jss-path-card p{font-size:clamp(14px,1.05vw,16px)!important;line-height:1.55!important;font-weight:400!important}
.oas-home .jss-gateway-container .oas-gateway-supporting{margin-top:85px!important;margin-bottom:20px!important;padding:0 20px!important}
.oas-home .jss-gateway-container .oas-gateway-supporting h1{font-size:clamp(16px,1.4vw,20px)!important;line-height:1.45!important;font-weight:500!important;letter-spacing:0!important;max-width:780px!important;margin:0 auto!important}
@media(max-width:767px){.oas-home .jss-path-card h2,.oas-home .jss-gateway-container .jss-path-card h2{font-size:clamp(28px,7vw,36px)!important}.oas-home .jss-gateway-container .oas-gateway-supporting{margin-top:58px!important}.oas-home .jss-gateway-container .oas-gateway-supporting h1{font-size:16px!important}}


:root{--oas-red:#D2232A;--oas-gold:#FBAC40;--oas-ink:#000000;--oas-max:1180px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:100px}body{margin:0;color:var(--oas-ink);font-family:Montserrat,Arial,sans-serif;line-height:1.6;background:#fff;overflow-wrap:break-word}
a{color:var(--oas-red)}img{max-width:100%;height:auto}
.oas-header{position:sticky;top:0;z-index:999;background:#fff;box-shadow:0 3px 16px rgba(12,27,45,.10)}
.admin-bar .oas-header{top:32px}
.oas-header-inner{max-width:var(--oas-max);margin:auto;padding:13px clamp(16px,3vw,30px);display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px}
.oas-brand{display:flex;align-items:center;gap:12px;color:var(--oas-ink);font-weight:800;text-decoration:none;line-height:1.15;letter-spacing:-.02em;font-size:clamp(16px,1.7vw,21px)}
.oas-brand img{display:block;width:auto;height:45px;max-width:120px;object-fit:contain}
.oas-brand-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
.oas-brand-main{display:block;white-space:nowrap}
.oas-brand-beauty{font-family:"Birthstone Bounce",cursive;color:#FBAC40;font-size:1.55em;font-weight:500;line-height:.8;display:inline-block;transform:rotate(-3deg);margin:0 .08em}
.oas-brand-byline{font-family:Manrope,sans-serif;font-size:11px;font-weight:500;letter-spacing:.03em;color:#000000}
.oas-brand-byline strong{font-weight:700}
@media(max-width:480px){.oas-brand{font-size:15px;gap:7px}.oas-brand-main{white-space:normal}.oas-brand-beauty{font-size:1.5em}.oas-brand-byline{font-size:10px}}
.oas-nav{display:flex;align-items:center;gap:clamp(12px,1.65vw,25px)}
.oas-nav a{color:var(--oas-ink);font-size:12px;font-weight:800;letter-spacing:.045em;text-decoration:none;white-space:nowrap}
.oas-nav a:hover,.oas-nav a:focus-visible,.oas-nav a[aria-current=page]{color:var(--oas-red)}
.oas-nav-toggle{display:none;background:#fff;color:var(--oas-ink);border:1px solid #cdd2d7;border-radius:8px;padding:9px 13px;font:700 14px Montserrat,Arial,sans-serif;cursor:pointer}
.oas-header::after{content:"";display:block;height:4px;background:linear-gradient(90deg,var(--oas-gold),var(--oas-red))}
.jss-gateway-container .jss-path-card h2{font-size:clamp(25px,2.65vw,37px)!important;line-height:1.18!important}
.jss-gateway-container .jss-door-button{font-size:clamp(17px,1.6vw,21px)!important;padding:15px 35px!important;min-height:50px}
.jss-gateway-container .oas-gateway-supporting{text-align:center;margin:34px auto 12px;max-width:850px}
.jss-gateway-container .oas-gateway-supporting h1{font-size:clamp(16px,1.7vw,22px)!important;line-height:1.4!important;font-weight:600!important;letter-spacing:0!important}
.oas-page{min-height:45vh}.oas-page>.page-content{width:100%}.oas-page>.page-header{display:none}
.oas-footer{background:#000000;color:#ffffff}.oas-footer::before{content:"";display:block;height:5px;background:linear-gradient(90deg,var(--oas-gold),var(--oas-red))}
.oas-footer-inner{max-width:var(--oas-max);margin:auto;padding:48px clamp(18px,4vw,40px) 28px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px}
.oas-footer h2{color:#fff;font-size:17px;margin:0 0 12px}.oas-footer p{margin:0 0 12px;font-size:14px;color:#ffffff}.oas-footer a{color:#fff;text-decoration:none}.oas-footer a:hover{text-decoration:underline;color:#FBAC40}.oas-footer-links{display:grid;gap:7px}.oas-footer-bottom{max-width:var(--oas-max);margin:auto;border-top:1px solid rgba(255,255,255,.22);padding:15px clamp(18px,4vw,40px) 24px;color:#ffffff;font-size:12px}
.oas-contact-v2 .ff_submit_btn_wrapper button,.oas-contact-v2 .ff-btn-submit{background:var(--oas-red)!important;background-image:none!important;color:white!important}.oas-contact-v2 .ff_submit_btn_wrapper button:hover,.oas-contact-v2 .ff-btn-submit:hover{background:#000!important;background-image:none!important}
@media(max-width:960px){.oas-nav-toggle{display:inline-flex;align-items:center;gap:8px}.oas-header-inner{flex-wrap:wrap;gap:8px}.oas-nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:10px 0 8px;border-top:1px solid #e4e7ea}.oas-nav.is-open{display:flex}.oas-nav a{display:block;padding:12px 8px;white-space:normal;font-size:13px}}
@media(max-width:767px){.oas-header-inner{min-height:65px;padding:9px 16px}.oas-brand img{height:36px;max-width:80px}.oas-footer-inner{grid-template-columns:1fr;gap:24px;padding-top:35px}.oas-page{min-width:0}.oas-page .wp-block-columns{flex-wrap:wrap}.oas-page .wp-block-column{min-width:0}.oas-contact-v2 .oas-hero{padding:64px 20px!important}.oas-contact-v2 .oas-hero h1{font-size:clamp(27px,7vw,36px)!important;line-height:1.18!important}.oas-contact-v2 .oas-hero p{font-size:15px!important}.oas-contact-v2 .oas-panel{padding:32px 20px!important}}
@media(max-width:782px){.admin-bar .oas-header{top:46px}}@media(max-width:600px){.admin-bar .oas-header{top:0}}

/* OAS 2026-10-21: Restore homepage gateway cards and CTAs */
.oas-home .jss-path-grid{align-items:stretch!important}
.oas-home .jss-path-card{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;background:#fff!important;border:2px solid #000!important;border-top:7px solid #FBAC40!important;border-radius:18px!important;box-shadow:0 12px 28px rgba(0,0,0,.10)!important;color:#000!important;overflow:hidden}
.oas-home .jss-path-card:nth-child(2){border-top-color:#D2232A!important}
.oas-home .jss-path-card h2{color:#000!important;margin-top:0!important}
.oas-home .jss-path-card p{color:#000!important;margin-bottom:26px!important}
.oas-home .jss-path-card .jss-door-button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-width:0!important;align-self:stretch!important;margin-top:auto!important;padding:15px 34px!important;background:#D2232A!important;color:#fff!important;border:2px solid #D2232A!important;border-radius:8px!important;text-decoration:none!important;font:800 clamp(17px,1.6vw,21px) Montserrat,Arial,sans-serif!important;letter-spacing:.06em!important;line-height:1.2!important;box-shadow:none!important}
.oas-home .jss-path-card:first-child .jss-door-button{background:#FBAC40!important;border-color:#FBAC40!important;color:#000!important}
.oas-home .jss-path-card .jss-door-button:hover,.oas-home .jss-path-card .jss-door-button:focus-visible{background:#000!important;border-color:#000!important;color:#fff!important}
.oas-home .jss-gateway-container .oas-gateway-supporting h1{font-size:clamp(20px,2.1vw,27px)!important;font-weight:800!important;line-height:1.35!important;max-width:980px!important}
.oas-home .jss-gateway-container,.oas-home .jss-gateway-container h1,.oas-home .jss-gateway-footer,.oas-home .jss-gateway-footer p{color:#000!important}
.oas-home .jss-gateway-footer{text-align:center!important;margin:24px auto 0!important}
.oas-header,.oas-header a,.oas-header .oas-brand-byline,.oas-footer,.oas-footer p,.oas-footer .oas-footer-bottom{color:#000}
.oas-header .oas-brand-byline{color:#000!important}
.oas-footer{background:#000!important;color:#fff!important}
.oas-footer p,.oas-footer .oas-footer-bottom,.oas-footer h2,.oas-footer a{color:#fff!important}
.oas-footer a:hover{color:#FBAC40!important}
body,.oas-page,.oas-page h1,.oas-page h2,.oas-page h3,.oas-page h4,.oas-page h5,.oas-page h6{color:#000}
@media(max-width:767px){.oas-home .jss-path-card{border-radius:14px!important}.oas-home .jss-path-card .jss-door-button{width:100%!important}}
