*{box-sizing:border-box}body{margin:0}.skip-link{position:fixed;left:16px;top:-60px;z-index:100001;padding:10px 14px;color:var(--p8n-ink);background:var(--p8n-gold-bright)}.skip-link:focus{top:16px}.preview-header{height:78px;padding:0 clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand span{display:grid}.brand strong{color:var(--p8n-ivory);font-size:.78rem;letter-spacing:.22em}.brand em{color:var(--p8n-gold);font-family:"Cormorant Garamond",serif;font-size:.76rem;letter-spacing:.12em}.preview-header nav{display:flex;align-items:center;gap:clamp(14px,2.6vw,36px)}.preview-header nav a{font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.preview-header .nav-cta{padding:10px 15px;border:1px solid var(--p8n-line-strong)}
main{overflow:hidden}.hero{position:relative;min-height:100svh;padding:clamp(130px,15vh,180px) 24px 80px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at 50% 42%,rgba(198,165,30,.075),transparent 30%),linear-gradient(180deg,#050708,#070a0c)}.hero-orbit{position:absolute;top:46%;width:min(700px,78vw);aspect-ratio:1;border:1px solid rgba(198,165,30,.07);border-radius:50%;transform:translateY(-50%);box-shadow:0 0 0 70px rgba(198,165,30,.025),0 0 0 140px rgba(198,165,30,.018)}.hero>*:not(.hero-orbit){position:relative}.hero-mark{object-fit:contain;margin-bottom:30px;filter:drop-shadow(0 18px 30px rgba(0,0,0,.5))}.eyebrow,.section-label{margin:0 0 30px;color:var(--p8n-gold);font-size:.7rem;font-weight:600;letter-spacing:.23em;text-transform:uppercase}.eyebrow span{padding-inline:7px}.hero h1{margin:0;color:var(--p8n-ivory);font-family:"Cormorant Garamond",serif;font-weight:300}.hero h1 em,.section h2 em{color:var(--p8n-gold);font-weight:300}.hero-copy{max-width:820px;margin:36px auto 0;color:var(--p8n-copy);font-size:clamp(.98rem,1.4vw,1.12rem)}.hero-actions{display:flex;gap:14px;margin-top:34px}.hero-actions a{display:inline-flex;align-items:center;padding:13px 24px;text-decoration:none;text-transform:uppercase;font-size:.72rem;font-weight:700}.hero-actions .primary{color:var(--p8n-ink);background:var(--p8n-gold)}.hero-actions .secondary{color:var(--p8n-ivory);background:transparent}.trust-strip{position:absolute!important;left:0;right:0;bottom:0;min-height:56px;padding:14px 24px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 28px;border-top:1px solid var(--p8n-line);background:rgba(5,7,8,.78)}.trust-strip span{color:var(--p8n-muted);font-size:.65rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}
.section{padding:clamp(70px,9vw,120px) clamp(20px,5vw,72px);border-top:1px solid var(--p8n-line)}.section>*,.service-grid{width:min(100%,var(--p8n-container));margin-inline:auto}.section-split,.contact{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(42px,8vw,100px);align-items:start}.section-split>*{width:100%}.section h2{margin:0;color:var(--p8n-ivory);font-family:"Cormorant Garamond",serif;font-weight:300}.section .lead{color:var(--p8n-ivory);font-family:"Cormorant Garamond",serif;font-size:clamp(1.5rem,2.4vw,2.1rem);line-height:1.3}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}.metrics div{padding:20px;border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-md);background:var(--p8n-surface)}.metrics strong{display:block;color:var(--p8n-gold);font-family:"Cormorant Garamond",serif;font-size:1.75rem;font-weight:300}.metrics span{display:block;color:var(--p8n-muted);font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.section-intro{text-align:center;margin-bottom:46px}.section-intro p:last-child{max-width:620px;margin:22px auto 0}.service-grid{display:flex;flex-wrap:wrap;gap:24px}.service-card{min-height:280px;padding:30px;display:flex;flex-direction:column;border:1px solid var(--p8n-line)}.service-icon{color:var(--p8n-gold);font-size:.72rem;font-weight:700;letter-spacing:.18em}.service-card h3{margin:42px 0 10px;color:var(--p8n-ivory);font-family:"Cormorant Garamond",serif;font-size:1.65rem;font-weight:300}.service-card p{margin:0 0 28px;color:var(--p8n-copy);font-size:.92rem;line-height:1.6}.service-card small{margin-top:auto;color:var(--p8n-gold);font-size:.62rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.approach{background:var(--p8n-surface)}.pillars{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pillars li{padding:30px;border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-md);background:var(--p8n-ink-soft);box-shadow:var(--p8n-shadow-sm)}.pillars li>span{color:var(--p8n-gold);font-size:.7rem;font-weight:700;letter-spacing:.18em}.pillars h3{color:var(--p8n-ivory);font-family:"Cormorant Garamond",serif;font-size:1.5rem;font-weight:300}.pillars p{color:var(--p8n-copy);font-size:.92rem}.contact{background:linear-gradient(135deg,#090c0e,#0d1114)}.contact>div,.contact>form{width:100%}.wpforms-form{padding:clamp(24px,4vw,42px);border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-md);background:rgba(5,7,8,.54);box-shadow:var(--p8n-shadow-md)}.wpforms-form label{display:block}.wpforms-form input,.wpforms-form textarea{width:100%}.preview-footer{padding:30px clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--p8n-muted);font-size:.75rem}.preview-footer strong{color:var(--p8n-ivory);letter-spacing:.18em}
@media(max-width:800px){.preview-header{height:auto;min-height:70px;flex-wrap:wrap;gap:10px;padding-block:10px}.preview-header nav{width:100%;justify-content:space-between;gap:8px;overflow-x:auto}.preview-header nav a{white-space:nowrap;font-size:.63rem}.hero{padding-top:90px}.section-split,.contact{grid-template-columns:1fr}.pillars{grid-template-columns:1fr}.preview-footer{align-items:flex-start;flex-direction:column}.trust-strip{position:relative!important;margin:48px -24px -80px}.hero-actions{flex-direction:column;width:min(100%,360px)}.hero-actions a{justify-content:center}}
@media(max-width:560px){.brand span{display:none}.metrics{grid-template-columns:1fr}.eyebrow{max-width:300px;line-height:1.8}.section{padding-inline:18px}.service-card{padding:24px}.preview-header .nav-cta{padding:8px}}

/* Multi-page experience */
.menu-toggle{display:none;width:44px;height:44px;padding:10px;border:1px solid var(--p8n-line);background:transparent;border-radius:var(--p8n-radius-sm)}.menu-toggle span{display:block;width:100%;height:1px;margin:5px 0;background:var(--p8n-ivory)}
.preview-header nav a[aria-current="page"]{color:var(--p8n-ivory)!important}.page-hero{position:relative;min-height:58svh;padding:clamp(150px,17vw,220px) clamp(20px,8vw,120px) clamp(70px,8vw,110px);display:flex;flex-direction:column;justify-content:flex-end;background:radial-gradient(circle at 18% 65%,rgba(198,165,30,.08),transparent 30%),linear-gradient(180deg,#050708,#090c0e);border-bottom:1px solid var(--p8n-line)}.page-hero h1,.display,.closing-cta h2,.compliance-teaser h2{max-width:1050px;margin:0;color:var(--p8n-ivory);font:300 clamp(2.8rem,6vw,5.7rem)/.99 "Cormorant Garamond",serif;letter-spacing:-.035em;text-wrap:balance}.page-hero h1 em,.closing-cta h2 em,.compliance-teaser h2 em{color:var(--p8n-gold);font-weight:300}.page-hero>p:last-child{max-width:760px;margin:30px 0 0;color:var(--p8n-copy);font-size:clamp(1rem,1.5vw,1.18rem)}.text-link{display:inline-flex;gap:12px;margin-top:28px;color:var(--p8n-ivory);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}.text-link span{color:var(--p8n-gold);transition:transform .25s var(--p8n-spring)}.text-link:hover span{transform:translateX(5px)}
.location{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:clamp(40px,7vw,90px);align-items:center;background:var(--p8n-surface)}.location>*{width:100%}.media-panel{position:relative;overflow:hidden;aspect-ratio:4/3;border-radius:var(--p8n-radius-lg);box-shadow:var(--p8n-shadow-md)}.media-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 45%,rgba(5,7,8,.5))}.media-panel img{width:100%;height:100%;object-fit:cover}.route-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin-top:28px;background:var(--p8n-line);border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-md);overflow:hidden}.route-grid span{padding:17px;background:var(--p8n-ink-soft);color:var(--p8n-muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.route-grid b{display:block;color:var(--p8n-gold);font:300 1.8rem/1 "Cormorant Garamond",serif;text-transform:none;letter-spacing:0;margin-bottom:6px}.feature-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-tiles a{position:relative;min-height:440px;overflow:hidden;border-radius:var(--p8n-radius-md);box-shadow:var(--p8n-shadow-sm)}.feature-tiles img{width:100%;height:100%;object-fit:cover;filter:saturate(.7);transition:transform .7s var(--p8n-spring),filter .4s ease}.feature-tiles a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(5,7,8,.92))}.feature-tiles span{position:absolute;left:26px;right:26px;bottom:26px;z-index:1;color:var(--p8n-ivory);font:300 1.6rem "Cormorant Garamond",serif}.feature-tiles a:hover img{transform:scale(1.045);filter:saturate(1)}
.video-section{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:clamp(40px,7vw,90px);align-items:center}.video-section>*{width:100%}.video-section video{aspect-ratio:16/10;object-fit:cover;border:1px solid var(--p8n-line-strong);border-radius:var(--p8n-radius-lg);background:#000;box-shadow:var(--p8n-shadow-md)}.clean-list{padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:28px}.clean-list li{padding:12px 14px;border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-sm);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.pillars.seven{grid-template-columns:repeat(4,1fr)}.pillars.seven li:last-child{grid-column:2/4}.closing-cta{padding:clamp(80px,10vw,150px) 24px;text-align:center;background:radial-gradient(circle at 50%,rgba(198,165,30,.09),transparent 38%),#050708;border-top:1px solid var(--p8n-line)}.closing-cta h2{margin-inline:auto}.closing-cta>p:not(.section-label){max-width:650px;margin:24px auto;color:var(--p8n-copy)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;margin-top:28px;padding:13px 24px;color:var(--p8n-ink);background:var(--p8n-gold);border:1px solid var(--p8n-gold);border-radius:var(--p8n-radius-sm);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:transform .3s var(--p8n-spring),background .25s ease}.button:hover{transform:translateY(-2px);background:var(--p8n-gold-bright)}.button.secondary{color:var(--p8n-ivory);background:transparent;border-color:var(--p8n-line-strong)}
.credential-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.credential-grid article{padding:28px;border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-md);background:linear-gradient(145deg,var(--p8n-raised),var(--p8n-ink-soft));box-shadow:var(--p8n-shadow-sm)}.credential-grid b,.case-studies article>span,.testimonials article>span{color:var(--p8n-gold);font-size:.65rem;letter-spacing:.14em;text-transform:uppercase}.credential-grid h3{color:var(--p8n-ivory);font:300 1.45rem/1.15 "Cormorant Garamond",serif}.credential-grid p{color:var(--p8n-copy);font-size:.86rem}.female-cpo{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:clamp(40px,8vw,100px);align-items:center;background:var(--p8n-surface)}.female-cpo>*{width:100%}.female-cpo img{max-height:650px;object-fit:cover;border-radius:var(--p8n-radius-lg);box-shadow:var(--p8n-shadow-md)}.accreditation,.tactical,.rights,.safeguards,.compliance-teaser{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,8vw,100px);align-items:start}.notice{padding:20px;border-left:2px solid var(--p8n-gold);background:var(--p8n-surface)}
.service-grid.detailed{align-items:stretch}.service-grid.detailed .service-card{min-height:0;padding:0 28px 28px}.service-grid.detailed .service-card>img,.dual-image{width:calc(100% + 56px);height:210px;margin:0 -28px 28px;object-fit:cover}.dual-image{display:grid;grid-template-columns:repeat(2,1fr)}.dual-image img{width:100%;height:210px;object-fit:cover}.service-grid.detailed .service-card h3{margin:18px 0 6px}.service-card>b{color:var(--p8n-gold);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase}.service-card ul{padding-left:18px;color:var(--p8n-copy);font-size:.8rem;line-height:1.65}.service-card.retainer{border-color:var(--p8n-line-strong)!important}
.image-hero{display:grid;grid-template-columns:1fr 1fr;padding:0;min-height:72svh;align-items:stretch}.image-hero>img{width:100%;height:100%;min-height:72svh;object-fit:cover;filter:saturate(.65) brightness(.6)}.image-hero>div{padding:clamp(130px,14vw,190px) clamp(30px,7vw,100px) 80px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(135deg,#0b0e10,#050708)}.proximity-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-md);overflow:hidden}.proximity-grid div{min-height:150px;padding:24px;border-right:1px solid var(--p8n-line);border-bottom:1px solid var(--p8n-line);background:var(--p8n-surface)}.proximity-grid b{display:block;color:var(--p8n-gold);font:300 2.2rem "Cormorant Garamond",serif}.proximity-grid span{color:var(--p8n-copy);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.axis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:26px}.axis span{padding:18px;background:var(--p8n-surface);border:1px solid var(--p8n-line);font-size:.8rem}.axis b{display:block;color:var(--p8n-gold);margin-bottom:5px}.capability-list{display:grid;gap:10px;margin-top:28px}.capability-list article{display:grid;grid-template-columns:auto 1fr;column-gap:14px;padding:14px;border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-sm)}.capability-list b{grid-row:span 2;color:var(--p8n-gold)}.capability-list h3,.capability-list p{margin:0}.capability-list h3{color:var(--p8n-ivory);font-size:.9rem}.capability-list p{font-size:.78rem}
.case-studies{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.case-studies>*{width:100%}.case-studies article,.testimonials article{padding:clamp(28px,4vw,48px);border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-md);background:linear-gradient(145deg,var(--p8n-raised),var(--p8n-ink-soft));box-shadow:var(--p8n-shadow-sm)}.case-studies h2{color:var(--p8n-ivory);font:300 clamp(2rem,3vw,3rem) "Cormorant Garamond",serif}.case-studies article>b,.testimonials article>b{color:var(--p8n-gold);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.case-studies blockquote,.testimonials blockquote{margin:28px 0;color:var(--p8n-ivory);font:italic 300 clamp(1.25rem,2vw,1.75rem)/1.35 "Cormorant Garamond",serif}.case-studies small,.testimonials small{color:var(--p8n-muted)}.testimonials{display:grid;gap:16px}.testimonials .section-intro{margin-bottom:20px}.testimonials article{width:min(100%,980px);margin-inline:auto}.testimonials article:nth-child(even){margin-left:0}.testimonials article:nth-child(odd){margin-right:0}
.contact-page{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(40px,8vw,100px)}.contact-page>*{width:100%}.contact-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--p8n-line);border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-md);overflow:hidden}.contact-facts div{padding:20px;background:var(--p8n-surface)}.contact-facts b{display:block;color:var(--p8n-gold);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase}.contact-facts p,.contact-facts a{color:var(--p8n-ivory);font-size:.88rem;text-decoration:none}.contact-facts .emergency{grid-column:1/-1;background:rgba(198,165,30,.08)}.contact-page aside{margin-top:24px;padding:22px;border-left:2px solid var(--p8n-gold);background:var(--p8n-surface)}.contact-page aside b{color:var(--p8n-gold);text-transform:uppercase;font-size:.7rem;letter-spacing:.12em}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.wpforms-form select{width:100%}.form-note{color:var(--p8n-muted);font-size:.72rem}.compliance-teaser{padding:clamp(70px,9vw,110px) clamp(20px,8vw,120px);background:var(--p8n-surface);border-top:1px solid var(--p8n-line)}.compliance-teaser h2{font-size:clamp(2.3rem,4.5vw,4rem)}
.compliance-page{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:clamp(40px,7vw,80px)}.compliance-page>*{width:100%}.compliance-page .p8n-compliance__facts{grid-template-columns:repeat(2,1fr)}.manual-card{padding:clamp(28px,4vw,46px);border:1px solid var(--p8n-line-strong);border-radius:var(--p8n-radius-md);background:linear-gradient(145deg,var(--p8n-raised),var(--p8n-ink-soft));box-shadow:var(--p8n-shadow-md)}.manual-card>span{color:var(--p8n-gold);font-size:.65rem;text-transform:uppercase;letter-spacing:.12em}.manual-card h2{color:var(--p8n-ivory);font:300 3rem "Cormorant Garamond",serif}.manual-card li,.rights li{margin-bottom:8px;color:var(--p8n-copy)}.safeguard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.safeguard-grid article{padding:20px;border:1px solid var(--p8n-line);border-radius:var(--p8n-radius-sm);background:var(--p8n-surface)}.safeguard-grid h3{color:var(--p8n-ivory)}
.preview-footer{padding:0;background:var(--p8n-surface)}.footer-main{width:100%;padding:46px clamp(20px,5vw,72px);display:grid;grid-template-columns:1fr auto auto;gap:clamp(30px,7vw,90px);align-items:start}.footer-main>div{display:grid;gap:7px}.footer-main>div>strong{color:var(--p8n-gold);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px}.footer-main a,.footer-main span{color:var(--p8n-muted);font-size:.78rem;text-decoration:none}.footer-base{width:100%;padding:16px clamp(20px,5vw,72px);display:flex;justify-content:space-between;border-top:1px solid var(--p8n-line);color:var(--p8n-muted);font-size:.68rem}

@media(max-width:1050px){.preview-header nav{gap:16px}.preview-header nav a{font-size:.63rem}.pillars.seven{grid-template-columns:repeat(2,1fr)}.pillars.seven li:last-child{grid-column:auto}.credential-grid{grid-template-columns:repeat(2,1fr)}.proximity-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.menu-toggle{display:block}.preview-header{min-height:70px;flex-wrap:nowrap}.preview-header nav{position:absolute;left:0;right:0;top:100%;width:100%;max-height:0;padding:0 20px;display:grid;background:rgba(5,7,8,.98);overflow:hidden;border-bottom:1px solid transparent;transition:max-height .4s var(--p8n-ease),padding .3s ease}.preview-header nav.is-open{max-height:520px;padding-block:14px 22px;border-color:var(--p8n-line)}.preview-header nav a{padding:10px;font-size:.72rem}.location,.video-section,.female-cpo,.accreditation,.tactical,.rights,.safeguards,.contact-page,.compliance-page,.compliance-teaser{grid-template-columns:1fr}.feature-tiles{grid-template-columns:1fr}.feature-tiles a{min-height:360px}.credential-grid{grid-template-columns:1fr}.image-hero{grid-template-columns:1fr}.image-hero>img{min-height:45svh}.image-hero>div{padding-top:70px}.proximity-grid{grid-template-columns:repeat(2,1fr)}.case-studies{grid-template-columns:1fr}.footer-main{grid-template-columns:1fr 1fr}.footer-main>.brand{grid-column:1/-1}.footer-base{gap:10px;flex-direction:column}}
@media(max-width:560px){.brand span{display:grid}.hero h1 br{display:none}.clean-list,.pillars.seven,.route-grid,.axis,.form-row,.safeguard-grid{grid-template-columns:1fr}.proximity-grid{grid-template-columns:1fr}.contact-facts{grid-template-columns:1fr}.contact-facts .emergency{grid-column:auto}.footer-main{grid-template-columns:1fr}.page-hero{min-height:52svh}.service-grid.detailed .service-card>img,.dual-image{height:180px}}
/* Preview shell progress indicator */
.preview-loading-bar{position:fixed;inset:0 auto auto 0;z-index:100001;width:42%;height:2px;background:linear-gradient(90deg,var(--p8n-gold),var(--p8n-gold-bright));box-shadow:0 0 14px rgba(226,194,78,.55);transform-origin:left;transition:width .45s var(--p8n-ease),opacity .3s ease .2s;pointer-events:none}
.preview-loading-bar.is-complete{width:100%;opacity:0}
@media(prefers-reduced-motion:reduce){.preview-loading-bar{display:none}}

/* ---------------------------------------------------------------
   Mobile fixes - 2026-09-02
   --------------------------------------------------------------- */

/* 1. p8n-styles.css sets `background:transparent!important` on every
      non-img/a/button/span descendant of .xpro-theme-builder-header (a rule
      written for the old Xpro header). That selector outranks
      `.preview-header nav`, so the open mobile menu rendered transparent over
      the hero. An id beats it. */
@media(max-width:800px){
  /* Solid, not the authored .98: the hero logo sits directly behind the panel
     and ghosted through the 2% transparency. */
  #primary-nav{background:#050708!important}
}

/* 2. `.hero h1 br{display:none}` below 560px removed the only whitespace
      between the two sentences, so the home hero read
      "Protection.Private-Sector Precision.". Promoting the em to its own line
      restores the intended two-part lockup (and un-orphans "for" on Services). */
@media(max-width:560px){
  .hero h1 em{display:block}
}

/* 3. The menu toggle's screen-reader label had no hiding rule anywhere, so the
      word "Menu" rendered next to the hamburger. */
.screen-reader-text{
  position:absolute!important;
  width:1px;height:1px;
  margin:-1px;padding:0;
  overflow:hidden;
  clip:rect(0 0 0 0);
  clip-path:inset(50%);
  white-space:nowrap;
  border:0;
}

/* 4. Tap targets. Phone/email links were 17-21px tall; tap-to-call is a primary
      mobile action. Two different situations:
      - In-page contact links are `display:inline` with ~69px between rows, so
        vertical padding grows the hit area without moving any layout.
      - Footer links are `display:block` in a 7px-gap grid, so they need real
        padding and the column genuinely gets taller. */
@media(max-width:800px){
  /* every in-page phone/email link, not just the contact page - compliance
     carries them too. These are inline, so this costs no layout. */
  main a[href^="tel:"],
  main a[href^="mailto:"]{
    padding-block:14px;
  }
  /* standalone arrow CTAs ("Meet the standard ->") and the filter chips */
  main .text-link{
    padding-block:12px;
  }
  /* chips use a small font, so 13px padding still landed at 40px */
  .p8n-filter{
    padding-block:15px;
  }
  /* Compliance stacks `<a><br><a>` in a <dd> at 27px line-height - too tight
     for inline padding (the hit areas overlapped). Stack them as blocks and
     drop the <br> so the padding separates them instead. */
  main dd:has(> a[href^="tel:"]) a,
  main dd:has(> a[href^="mailto:"]) a{
    display:block;
    padding-block:13px;
  }
  main dd:has(> a[href^="tel:"]) br,
  main dd:has(> a[href^="mailto:"]) br{
    display:none;
  }
  .footer-main a[href^="tel:"],
  .footer-main a[href^="mailto:"],
  .footer-main a[href]{
    padding-block:12px;
  }
  /* the brand lockup is already large - don't pad it */
  .footer-main a.brand{
    padding-block:0;
  }
}

/* 5. Mobile menu links sat at 38-40px; lift them clear of 44px too. The CTA
      carries its own padding rule, so it needs naming explicitly. */
@media(max-width:800px){
  .preview-header nav a,
  .preview-header nav a.nav-cta{
    padding-block:13px;
  }
}

/* 6. PRE-EXISTING BUG (not introduced by the tap-target work): the phone/email
      links in the compliance page's <dd> blocks had no styling rule anywhere,
      so they rendered as default browser blue-underlined links on a dark
      premium layout. Match the rest of the in-page links. */
main dd a{
  color:var(--p8n-ivory);
  text-decoration:none;
  border-bottom:1px solid var(--p8n-line-strong);
}
main dd a:hover,
main dd a:focus-visible{
  color:var(--p8n-gold);
  border-bottom-color:var(--p8n-gold);
}

/* 7. PRE-EXISTING BUG (not introduced here): p8n-styles.css collapses
      .p8n-compliance__facts to one column at <=639px, but preview.css re-declared
      `.compliance-page .p8n-compliance__facts{grid-template-columns:repeat(2,1fr)}`
      with no media query. Higher specificity, always on - so the grid stayed at
      403px inside a 337px box with overflow:hidden, permanently clipping the
      company registration, information officer and contact values on mobile. */
@media(max-width:639px){
  .compliance-page .p8n-compliance__facts{
    grid-template-columns:1fr;
  }
}

/* ---------------------------------------------------------------
   Social links - 2026-09-09
   Footer "Follow" column. Icon buttons are 44px to match the tap-target
   standard set for the rest of the footer.
   --------------------------------------------------------------- */
.footer-main{
  grid-template-columns:1fr auto auto auto;
}
/* .footer-main is a flex item sharing the desktop row with .footer-base, so a
   4th column made it overflow its share and the browser shrank the Governance
   column (102px -> 77px), wrapping "Compliance centre" and "PSIRA 4514957" onto
   two lines. Hold each column at its content width and reclaim the difference
   from the very wide gaps. */
@media(min-width:1200px){
  .footer-main{
    gap:clamp(24px,4vw,56px);
  }
  .footer-main>div{
    min-width:max-content;
  }
}
/* Between 801 and 1199 there isn't room for four columns *and* the base bar on
   one row - holding the columns at content width pushed the page into a
   horizontal scroll. Stack the base bar below instead, which is how it is
   written anyway (width:100% + border-top), giving the columns the full width. */
@media(min-width:801px) and (max-width:1199px){
  .preview-footer{
    flex-direction:column;
    align-items:flex-start;
  }
}
.footer-social .social-row{
  display:flex;
  gap:10px;
  align-items:center;
}
.footer-main .social-row a{
  width:44px;
  height:44px;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid var(--p8n-line-strong);
  border-radius:50%;
  color:var(--p8n-muted);
  transition:color .25s var(--p8n-ease),border-color .25s var(--p8n-ease),transform .25s var(--p8n-spring);
}
.footer-main .social-row a:hover,
.footer-main .social-row a:focus-visible{
  color:var(--p8n-gold);
  border-color:var(--p8n-gold);
  transform:translateY(-2px);
}
.footer-main .social-row svg{
  width:18px;
  height:18px;
  fill:currentColor;
  display:block;
}
@media(max-width:800px){
  /* the footer collapses to 1fr 1fr / 1fr, so let the column flow with it */
  .footer-main{
    grid-template-columns:1fr 1fr;
  }
}
@media(max-width:560px){
  .footer-main{
    grid-template-columns:1fr;
  }
}