/* URSPT Premium 2026 — V5 compact editorial pass */
:root{
  --v5-section-space:68px;
  --v5-home-hero-max:68px;
  --v5-inner-hero-max:54px;
  --v5-mobile-h1:40px;
  --shell:min(1360px,calc(100vw - 52px));
}
html{font-size:15px;}
body{background:#fff;line-height:1.64;}
.section-space{padding:var(--v5-section-space) 0;}

/* Header: one sticky surface, actual WordPress primary menu lives in the header. */
.site-shell{position:sticky;top:0;z-index:980;background:rgba(255,255,255,.97);box-shadow:0 1px 0 rgba(13,17,23,.08);}
.top-signal{height:28px;transition:height .2s ease,opacity .2s ease;overflow:hidden;}
.site-shell.is-scrolled .top-signal{height:0;opacity:0;}
.site-header{height:72px;position:relative;top:auto!important;z-index:990;background:rgba(255,255,255,.96);box-shadow:none;border-bottom:0;backdrop-filter:blur(20px);}
.site-header.is-scrolled{height:64px;background:rgba(255,255,255,.98);box-shadow:0 10px 28px rgba(13,17,23,.08);}
.site-header__inner{grid-template-columns:auto minmax(0,1fr) auto;gap:20px;}
.site-brand{gap:9px;}
.site-brand__mark{width:38px;height:38px;border-radius:11px;padding:7px;}
.site-brand__copy{gap:9px;}
.site-brand__copy strong{font-size:1rem;}
.site-brand__copy small{font-size:.47rem;line-height:1.3;padding-left:9px;max-width:155px;}
.header-actions{gap:6px;}
.header-action{width:38px;height:38px;}
.header-menu-trigger{display:none;height:38px;}

.mega-nav.mega-nav--header{height:100%;position:static;background:transparent;border:0;box-shadow:none;backdrop-filter:none;min-width:0;}
.mega-nav--header .mega-nav__list{height:100%;justify-content:center;gap:0;}
.mega-nav--header .mega-nav__item{position:static;height:100%;}
.mega-nav--header .mega-nav__toggle,.mega-nav--header .mega-nav__direct{height:100%;padding:0 9px;background:transparent!important;color:#252b33!important;font-size:.60rem;font-weight:780;letter-spacing:-.018em;border-radius:0;position:relative;}
.mega-nav--header .mega-nav__toggle:after,.mega-nav--header .mega-nav__direct:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;background:var(--red);transform:scaleX(0);transform-origin:center;transition:transform .18s ease;}
.mega-nav--header .mega-nav__item:hover>.mega-nav__toggle:after,.mega-nav--header .mega-nav__item.is-open>.mega-nav__toggle:after,.mega-nav--header .mega-nav__item.is-current>.mega-nav__toggle:after,.mega-nav--header .mega-nav__direct:hover:after,.mega-nav--header .mega-nav__direct[aria-current=page]:after{transform:scaleX(1);}
.mega-nav--header .mega-nav__toggle i{width:4px;height:4px;}
.mega-nav--header .mega-nav__item.is-current>.mega-nav__toggle,.mega-nav--header .mega-nav__direct[aria-current=page]{color:#a90f1c!important;}
.mega-panel{top:100%;left:0;right:0;background:rgba(249,248,245,.985);border-top:1px solid #e2e3e5;box-shadow:0 30px 70px rgba(12,17,24,.16);max-height:min(68vh,620px);}
.mega-panel__inner{grid-template-columns:200px minmax(0,1fr) 190px;gap:34px;padding:28px 0 32px;}
.mega-panel__intro h2{font-size:2.05rem;line-height:1;letter-spacing:-.05em;margin:10px 0 12px;}
.mega-panel__intro p{font-size:.69rem;line-height:1.6;margin-bottom:15px;}
.mega-panel__links{gap:4px 18px;}
.mega-panel__primary{min-height:46px;grid-template-columns:24px minmax(0,1fr) 18px;padding:3px 6px;}
.mega-panel__primary strong{font-size:.69rem;}
.mega-panel__primary>span{font-size:.50rem;}
.mega-panel__primary--label{grid-template-columns:24px minmax(0,1fr);}
.mega-panel__subgrid{padding:4px 0 10px 30px;gap:5px;}
.mega-panel__subgrid a{min-height:36px;padding:7px 9px;font-size:.56rem;border-radius:8px;}
.mega-panel__rail{gap:8px;}
.mega-panel__rail>a{min-height:112px;border-radius:14px;padding:15px;}
.mega-panel__rail strong{font-size:1.65rem;}

/* Homepage: photographic, but not a full-screen billboard. */
.hero-cinematic{height:clamp(480px,62vh,580px);min-height:480px;max-height:580px;}
.hero-cinematic__layout{grid-template-columns:minmax(0,1fr) minmax(280px,.42fr);gap:44px;padding:50px 0 104px;}
.hero-cinematic__copy{max-width:690px;}
.hero-cinematic h1{font-size:clamp(3.4rem,5vw,var(--v5-home-hero-max));line-height:.93;letter-spacing:-.055em;margin:12px 0 16px;}
.hero-cinematic__copy>p{font-size:.92rem;line-height:1.62;max-width:620px;}
.hero-actions{margin-top:20px;}
.btn{min-height:46px;padding:0 17px;font-size:.69rem;}
.hero-cinematic__collage{gap:8px;transform:translateY(6px);}
.hero-shot{border-radius:14px;}
.hero-shot--training{height:215px;}
.hero-shot--community{height:160px;}
.hero-cinematic__utility{min-height:82px;}
.hero-utility__grid>a{min-height:82px;padding:14px 16px;}
.hero-utility__grid strong{font-size:.69rem;}

.photo-story__intro{grid-template-columns:1fr .8fr;margin-bottom:24px;gap:60px;}
.photo-story__intro h2,.section-head h2,.mission-stage__title h2,.media-split__content h2,.footer-intro h2{font-size:clamp(2.3rem,3.7vw,3.85rem);line-height:.98;letter-spacing:-.048em;}
.photo-story__intro>p{font-size:.82rem;line-height:1.65;}
.photo-story__grid{grid-template-rows:260px 260px;gap:9px;}
.photo-story__item{border-radius:14px;}
.metrics-rail{margin-top:28px;}
.news-card--feature h3{font-size:clamp(1.55rem,2.3vw,2.4rem);}
.news-card__image{max-height:390px;}
.document-hub__card{min-height:220px;}

/* Every internal hero is deliberately compact. */
.inner-visual-hero{min-height:390px;max-height:480px;}
.inner-visual-hero__content{padding:58px 0 44px;}
.inner-visual-hero__content h1,
.inner-doc-hero h1,
.service-page-hero h1,
.legal-hero h1,
.links-hero h1,
.faq-hero h1{font-size:clamp(2.65rem,4.25vw,var(--v5-inner-hero-max));line-height:.98;letter-spacing:-.055em;max-width:18ch;margin:12px 0 14px;overflow-wrap:normal;}
.inner-visual-hero__content>p,.inner-doc-hero p,.service-page-hero__content>p,.legal-hero p,.links-hero p,.faq-hero p{font-size:.78rem;line-height:1.62;max-width:68ch;}
.inner-doc-hero,.legal-hero,.links-hero,.faq-hero{padding:54px 0 46px;}
.inner-doc-hero__grid,.legal-hero__grid,.faq-hero__grid{grid-template-columns:minmax(0,1fr) 220px;gap:38px;}
.inner-doc-hero__symbol,.legal-hero__mark{height:168px;border-radius:18px;}
.inner-doc-hero__symbol .urspt-icon,.legal-hero__mark .urspt-icon{width:52px;height:52px;}
.service-page-hero{min-height:420px;max-height:500px;}
.service-page-hero__content{padding:56px 0 42px;}

/* Real imported photos become the visual bridge between hero and content. */
.inner-editorial-media{background:#11161e;padding:10px 0 12px;overflow:hidden;}
.inner-editorial-media__rail{display:grid;grid-template-columns:1.55fr .9fr .9fr;gap:8px;height:210px;}
.inner-editorial-media__item{margin:0;overflow:hidden;border-radius:12px;background:#20262f;}
.inner-editorial-media__item img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease,filter .45s ease;filter:saturate(.94) contrast(1.04);}
.inner-editorial-media__item:hover img{transform:scale(1.025);filter:saturate(1.05) contrast(1.05);}
.inner-editorial-media__item:only-child{grid-column:1/-1;}
.inner-editorial-media__item:nth-child(2):last-child{grid-column:2/4;}

/* Inner pages: editorial content, not giant cards. */
.inner-premium-body,.inner-doc-body,.legal-body,.service-pillars{background:#fff;}
.inner-premium-grid{grid-template-columns:minmax(0,860px) minmax(230px,285px);gap:58px;justify-content:space-between;}
.inner-premium-content{min-width:0;}
.prose-card,.prose-card--editorial{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;overflow:visible;}
.entry-content{font-size:.91rem;line-height:1.72;color:#30363e;max-width:860px;}
.entry-content>p{max-width:78ch;}
.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4{letter-spacing:-.035em;line-height:1.12;margin:1.45em 0 .55em;}
.entry-content h2{font-size:clamp(1.55rem,2.3vw,2.25rem);}
.entry-content h3{font-size:1.27rem;}
.entry-content h4{font-size:1.02rem;}
.entry-content p{margin:0 0 1.05em;}
.entry-content img{border-radius:12px;margin:22px 0;max-height:620px;object-fit:cover;}
.entry-content table{font-size:.72rem;border-radius:10px;}
.entry-content th,.entry-content td{padding:9px 10px;}
.entry-content blockquote{margin:22px 0;padding:16px 19px;}
.inner-premium-aside{top:86px;gap:10px;}
.inner-context,.inner-info-card,.inner-emergency-card{border-radius:14px!important;}
.inner-context{padding:15px!important;}
.inner-context a{min-height:38px!important;font-size:.61rem!important;}
.inner-info-card{padding:18px!important;}
.inner-emergency-card{min-height:150px!important;padding:18px!important;}
.inner-emergency-card strong{font-size:3.2rem!important;}

.service-pillars__grid{gap:8px;}
.service-pillars__grid>div{min-height:170px;border-radius:14px;padding:22px;}
.service-pillars__grid strong{font-size:1.2rem;}
.service-pillars__grid p{font-size:.70rem;line-height:1.55;}
.service-page-content{margin-top:52px;}
.legal-quick-grid{gap:8px;margin-bottom:46px;}
.legal-quick-grid a{min-height:105px;border-radius:14px;padding:17px;}

/* Documents: dense, searchable, civil-service useful. */
.document-center{gap:12px;}
.document-center__toolbar{border-radius:14px;padding:14px 15px;}
.document-card{padding:10px 12px!important;gap:10px!important;border-radius:10px!important;min-height:62px;}
.document-card__copy strong{font-size:.67rem!important;line-height:1.35;}
.document-card__copy small{font-size:.54rem!important;}
.document-card__download{width:34px!important;height:34px!important;}

/* Special pages had the same oversized-title problem. */
.contact-hero__grid,.teams-hero__grid{min-height:390px;}
.contact-hero h1,.teams-hero h1,.leader-hero h1,.team-detail-hero h1,.news-index-hero h1,.single-news-hero h1{font-size:clamp(2.65rem,4.2vw,4.2rem);line-height:.96;letter-spacing:-.055em;margin:12px 0 16px;}
.contact-hero__112,.teams-hero__stat{min-height:200px;height:200px;border-radius:18px;padding:20px;}
.contact-hero__112 strong{font-size:4.2rem;}
.teams-hero__stat strong{font-size:4.8rem;}
.leader-hero__grid,.team-detail-hero__grid,.single-news-hero__grid{min-height:500px;grid-template-columns:minmax(0,1fr) minmax(330px,.55fr);gap:54px;}
.leader-hero__portrait,.team-detail-hero__media,.single-news-hero__media{height:390px;border-radius:18px;}
.news-index-hero{padding:52px 0 44px;}
.contact-dashboard,.team-directory,.leader-body,.team-detail-body,.article-body{padding-top:56px!important;padding-bottom:70px!important;}
.contact-tile{min-height:125px;border-radius:14px;}
.team-directory-card{min-height:205px;border-radius:15px;}

@media(max-width:1180px){
  .site-brand__copy small{display:none;}
  .mega-nav--header .mega-nav__toggle,.mega-nav--header .mega-nav__direct{padding-inline:7px;font-size:.56rem;}
  .mega-panel__inner{grid-template-columns:180px minmax(0,1fr);}
  .mega-panel__rail{display:none;}
}

@media(max-width:980px){
  :root{--shell:min(100% - 32px,920px);--v5-section-space:56px;}
  .top-signal{display:none;}
  .site-header,.site-header.is-scrolled{height:66px;}
  .site-header__inner{grid-template-columns:1fr auto;}
  .mega-nav.mega-nav--header{display:none;}
  .header-menu-trigger{display:flex;}
  .hero-cinematic{height:520px;min-height:520px;max-height:520px;}
  .hero-cinematic__layout{grid-template-columns:1fr .38fr;padding:50px 0 100px;}
  .hero-cinematic h1{font-size:clamp(3rem,7vw,4.7rem);}
  .inner-premium-grid{grid-template-columns:1fr;gap:34px;}
  .inner-premium-aside{position:static;grid-template-columns:repeat(2,minmax(0,1fr));}
  .inner-doc-hero__grid,.legal-hero__grid,.faq-hero__grid{grid-template-columns:1fr;}
  .inner-doc-hero__symbol,.legal-hero__mark{display:none;}
  .leader-hero__grid,.team-detail-hero__grid,.single-news-hero__grid{grid-template-columns:1fr;min-height:auto;padding:48px 0;}
}

@media(max-width:760px){
  :root{--shell:calc(100vw - 28px);--v5-section-space:52px;--v5-mobile-h1:40px;}
  html{font-size:15px;}
  .site-brand__mark{width:36px;height:36px;}
  .site-brand__copy strong{font-size:.96rem;}
  .header-action{width:36px;height:36px;}
  .hero-cinematic{height:480px;min-height:480px;max-height:480px;}
  .hero-cinematic__layout{display:block;padding:84px 0 96px;}
  .hero-cinematic__collage{display:none;}
  .hero-cinematic h1{font-size:clamp(2.55rem,11.5vw,var(--v5-mobile-h1));line-height:.95;margin:10px 0 14px;}
  .hero-cinematic__copy>p{font-size:.78rem;line-height:1.55;max-width:90%;}
  .hero-actions{margin-top:16px;}
  .hero-cinematic__utility{overflow-x:auto;}
  .hero-utility__grid{display:flex;width:max-content;}
  .hero-utility__grid>a{width:68vw;min-height:74px;}
  .photo-story__intro{display:block;margin-bottom:20px;}
  .photo-story__intro h2,.section-head h2,.mission-stage__title h2,.media-split__content h2,.footer-intro h2{font-size:2.55rem;}
  .photo-story__intro>p{margin-top:14px;}
  .photo-story__grid{display:flex;height:270px;overflow-x:auto;scroll-snap-type:x mandatory;gap:8px;}
  .photo-story__item,.photo-story__item--wide{min-width:82vw;height:270px;scroll-snap-align:start;}
  .inner-visual-hero{min-height:330px;max-height:370px;}
  .inner-visual-hero__content{padding:44px 0 34px;}
  .inner-visual-hero__content h1,.inner-doc-hero h1,.service-page-hero h1,.legal-hero h1,.links-hero h1,.faq-hero h1{font-size:clamp(2.35rem,10.8vw,var(--v5-mobile-h1));line-height:1;max-width:100%;}
  .inner-doc-hero,.legal-hero,.links-hero,.faq-hero{padding:42px 0 36px;}
  .service-page-hero{min-height:350px;max-height:390px;}
  .service-page-hero__content{padding:44px 0 34px;}
  .inner-editorial-media{padding:8px 0;}
  .inner-editorial-media__rail{display:flex;height:185px;overflow-x:auto;scroll-snap-type:x mandatory;gap:7px;}
  .inner-editorial-media__item{min-width:80vw;scroll-snap-align:start;border-radius:10px;}
  .inner-premium-grid{gap:28px;}
  .prose-card,.prose-card--editorial{padding:0!important;}
  .entry-content{font-size:.88rem;line-height:1.68;}
  .entry-content h2{font-size:1.62rem;}
  .entry-content h3{font-size:1.22rem;}
  .entry-content img{margin:18px 0;border-radius:10px;}
  .inner-premium-aside{grid-template-columns:1fr;}
  .service-pillars__grid{grid-template-columns:1fr!important;}
  .service-pillars__grid>div{min-height:130px;padding:18px;}
  .legal-quick-grid{grid-template-columns:1fr!important;gap:7px;}
  .legal-quick-grid a{min-height:78px;}
  .contact-hero__grid,.teams-hero__grid{min-height:330px;}
  .contact-hero h1,.teams-hero h1,.leader-hero h1,.team-detail-hero h1,.news-index-hero h1,.single-news-hero h1{font-size:clamp(2.45rem,11vw,var(--v5-mobile-h1));line-height:.98;}
  .leader-hero__grid,.team-detail-hero__grid,.single-news-hero__grid{padding:38px 0;gap:22px;}
  .leader-hero__portrait,.team-detail-hero__media,.single-news-hero__media{height:300px;border-radius:14px;}
  .news-index-hero{padding:42px 0 36px;}
  .contact-dashboard,.team-directory,.leader-body,.team-detail-body,.article-body{padding-top:42px!important;padding-bottom:54px!important;}
}
/* Structure page still uses the legacy inner-hero selector. */
.inner-hero{padding:48px 0 40px;background:#f3f1ec;border-bottom:1px solid #e0e1e3;}
.inner-hero__grid{grid-template-columns:1fr;}
.inner-hero h1{font-size:clamp(2.65rem,4.25vw,var(--v5-inner-hero-max));line-height:.98;letter-spacing:-.055em;margin:12px 0 0;max-width:18ch;}
.structure-stage{background:#fff;}
.structure-image{border-radius:14px!important;overflow:hidden;}
.structure-cards{gap:8px;margin:24px 0 34px;}
.structure-cards>div{border-radius:14px!important;padding:18px!important;min-height:120px!important;}
.structure-cards strong{font-size:1.05rem!important;}
.teams-original-copy{margin-top:38px!important;}

/* Imported content should visually breathe without becoming a kilometre-long card. */
.entry-content .aligncenter{margin-left:auto;margin-right:auto;}
.entry-content .alignleft{float:left;margin:5px 24px 18px 0;max-width:48%;}
.entry-content .alignright{float:right;margin:5px 0 18px 24px;max-width:48%;}
.entry-content:after{content:"";display:block;clear:both;}
.entry-content hr{border:0;border-top:1px solid #dedfe2;margin:28px 0;}
.entry-content figure{margin:24px 0;}
.entry-content figcaption{font-size:.65rem;color:#717882;margin-top:7px;}
.entry-content .urspt-document-link{display:inline-flex;align-items:center;gap:7px;border-bottom:1px solid #b9bdc4;text-decoration:none;padding-bottom:2px;}

@media(max-width:760px){
  .inner-hero{padding:38px 0 32px;}
  .inner-hero h1{font-size:clamp(2.35rem,10.8vw,var(--v5-mobile-h1));max-width:100%;}
  .entry-content .alignleft,.entry-content .alignright{float:none;max-width:100%;margin:18px 0;}
  .structure-cards{grid-template-columns:1fr!important;}
}
