/* Sovereignty Global mobile composition layer — Oct 2026.
   Loaded last on public pages. Mobile is treated as its own composition:
   shorter imagery, tighter vertical rhythm, readable type and touch-first chrome. */

.mobile-nav-actions{display:none}

@media(max-width:760px){
  :root{
    --sg-header-height:64px;
    --mobile-gutter:18px;
    --mobile-section:52px;
  }

  html{scroll-padding-top:72px}
  body.v2{overflow-x:hidden}
  body.v2 main{overflow-x:clip}

  /* Header + navigation */
  .site-header{
    min-height:64px;
    height:64px;
    grid-template-columns:1fr auto;
    gap:10px;
    padding-inline:16px;
  }
  .site-header .brand{width:158px;height:42px}
  .header-actions{display:none}
  .nav-toggle{
    display:grid;
    place-content:center;
    gap:4px;
    width:44px;
    height:44px;
    justify-self:end;
    padding:10px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;
    background:rgba(255,255,255,.025);
  }
  .nav-toggle span:not(.sr-only){
    width:18px;
    height:1px;
    margin:0 auto;
  }
  .js .primary-nav.is-open{
    top:64px;
    max-height:calc(100dvh - 64px);
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:8px 16px 18px;
    border-bottom:1px solid rgba(255,255,255,.1);
    background:rgba(9,20,38,.985);
    box-shadow:0 22px 50px rgba(0,0,0,.3);
    backdrop-filter:blur(22px);
    -webkit-backdrop-filter:blur(22px);
  }
  .primary-nav.is-open>a,
  .primary-nav.is-open .services-dropdown summary{
    display:flex;
    min-height:48px;
    align-items:center;
    padding:0 4px;
    border-bottom:1px solid rgba(255,255,255,.055);
    font-size:.72rem;
    letter-spacing:.065em;
  }
  .primary-nav.is-open .services-menu{
    margin:0;
    padding:4px 0 8px 12px;
  }
  .primary-nav.is-open .services-menu a{
    display:flex;
    min-height:44px;
    align-items:center;
    padding:0 8px;
    font-size:.7rem;
  }
  .primary-nav.is-open .nav-search-toggle{
    display:flex;
    width:100%;
    min-height:48px;
    align-items:center;
    justify-content:flex-start;
    gap:10px;
    padding:0 4px;
    border:0;
    border-bottom:1px solid rgba(255,255,255,.055);
    border-radius:0;
    background:transparent;
    color:#d7dee8;
  }
  .primary-nav.is-open .nav-search-toggle::after{
    content:"Search";
    font-family:var(--font-label);
    font-size:.72rem;
    font-weight:600;
    letter-spacing:.065em;
    text-transform:uppercase;
  }
  .mobile-nav-actions{
    display:grid;
    grid-template-columns:1fr 1.25fr;
    gap:9px;
    margin-top:12px;
    padding-top:4px;
  }
  .mobile-nav-actions a{
    display:flex;
    min-height:46px;
    align-items:center;
    justify-content:center;
    padding:0 12px;
    border-radius:var(--radius-pill);
    font-family:var(--font-label);
    font-size:.66rem;
    font-weight:600;
    letter-spacing:.055em;
    text-align:center;
    text-transform:uppercase;
  }
  .mobile-nav-login{
    border:1px solid rgba(255,255,255,.14);
    color:#eef2f6;
  }
  .mobile-nav-cta{
    border:1px solid var(--color-gold);
    background:var(--color-gold);
    color:var(--color-text-on-gold);
  }

  /* Shared touch + spacing */
  .button{min-height:48px;padding-inline:20px}
  .method-shell,
  .services-shell,
  .service-shell,
  .bank-shell,
  .trust-shell,
  .hub-shell{
    width:calc(100% - (2 * var(--mobile-gutter)));
  }
  .method-section,
  .services-section,
  .service-section,
  .bank-section,
  .trust-section,
  .trust-editorial,
  .trust-process,
  .trust-contact,
  .hub-section{
    padding-block:var(--mobile-section);
  }

  /* Homepage */
  .v2 .hero{min-height:620px}
  .v2 .hero::after{
    background:linear-gradient(180deg,rgba(7,18,35,.18) 0%,rgba(7,18,35,.36) 28%,rgba(7,18,35,.82) 63%,rgba(7,18,35,.99) 100%);
  }
  .v2 .hero-banner{background-position:66% center}
  .v2 .hero-copy{
    width:100%;
    padding:84px var(--mobile-gutter) 42px;
  }
  .v2 .hero-copy h1{
    max-width:100%;
    font-size:clamp(2rem,8.4vw,2.5rem);
    line-height:1.08;
    letter-spacing:-.025em;
  }
  .v2 .hero-copy h1 .hero-line{white-space:nowrap}
  .v2 .hero-copy .eyebrow{margin-bottom:12px;font-size:.66rem;letter-spacing:.12em}
  .v2 .hero-copy .hero-intro{
    max-width:34rem;
    margin-top:18px;
    font-size:.96rem;
    line-height:1.6;
  }
  .v2 .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
    margin-top:24px;
  }
  .v2 .hero-actions .button{width:100%;min-width:0}
  .v2 .hero-actions .button + .button{
    border-color:rgba(201,170,102,.68);
    background:rgba(9,20,38,.46);
    color:#fff;
    box-shadow:none;
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
  }

  .v2 .stat-band{padding:16px var(--mobile-gutter)}
  .v2 .stat-band-grid{
    grid-template-columns:1fr 1fr;
    gap:0;
  }
  .v2 .stat-band .stat{
    min-height:98px;
    padding:18px 12px;
    border:0;
    border-bottom:1px solid rgba(255,255,255,.07);
  }
  .v2 .stat-band .stat:nth-child(odd){border-right:1px solid rgba(255,255,255,.07)}
  .v2 .stat-band .stat:last-child{
    grid-column:1/-1;
    min-height:88px;
    border-right:0;
    border-bottom:0;
  }
  .v2 .stat-num{font-size:1.75rem}
  .v2 .stat-label{max-width:none;margin-top:6px;font-size:.66rem;line-height:1.4}

  .v2 .home-sec{
    width:calc(100% - (2 * var(--mobile-gutter)));
    padding:56px 0;
  }
  .v2 .home-head{margin-bottom:26px}
  .v2 .home-head::before{width:30px}
  .v2 .home-head h2{font-size:clamp(2rem,9.5vw,2.55rem);line-height:1.06}
  .v2 .home-head p{margin-top:13px;font-size:.93rem;line-height:1.62}
  .v2 .goal-card{
    min-height:0;
    padding:22px 20px;
    border-radius:18px;
  }
  .v2 .goal-card p{font-size:.88rem;line-height:1.58}
  .v2 #method .goal-grid{grid-template-columns:1fr;gap:11px}
  .v2 #method .goal-card{padding:22px 20px}
  .v2 #method .home-head h2{font-size:2rem}
  .v2 .split-media{min-height:270px;aspect-ratio:4/3}
  .v2 .cta-band--photo{
    width:calc(100% - (2 * var(--mobile-gutter)));
    margin:8px auto 42px;
    padding:28px 22px;
    border-radius:22px;
  }
  .v2 .cta-actions{display:grid;width:100%;grid-template-columns:1fr;gap:9px}
  .v2 .cta-actions .button{width:100%}

  /* Homepage mobile composition: compact lists instead of stacked desktop cards */
  .v2 .home-sec{
    padding:40px 0;
    content-visibility:visible;
    contain-intrinsic-size:none;
  }
  .v2 .home-sec--center,
  .v2 .home-sec--proof{
    width:100%;
    margin-inline:0;
    padding:46px var(--mobile-gutter);
    box-sizing:border-box;
  }

  .v2 #method .home-head{
    margin-bottom:22px;
    text-align:left;
  }
  .v2 #method .home-head::before{margin-left:0;margin-right:0}
  .v2 #method .home-head h2{
    margin-inline:0;
    font-size:2.05rem;
    line-height:1.08;
  }
  .v2 #method .home-head p{
    margin-inline:0;
    font-size:.9rem;
  }
  .v2 #method .goal-grid{
    display:block;
    max-width:none;
    border-top:1px solid rgba(255,255,255,.1);
  }
  .v2 #method .goal-card{
    display:grid;
    grid-template-columns:1fr auto;
    gap:8px 14px;
    min-height:0;
    padding:20px 0;
    border:0;
    border-bottom:1px solid rgba(255,255,255,.1);
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  .v2 #method .goal-card .card-cat{
    grid-column:1;
    margin:0;
    font-size:.72rem;
  }
  .v2 #method .goal-card p{
    grid-column:1/-1;
    margin:0;
    font-size:.9rem;
    line-height:1.55;
  }
  .v2 #method .goal-card .goal-sub{
    grid-column:1/-1;
    margin-top:2px;
    font-size:.8rem;
    line-height:1.5;
  }
  .v2 #method .goal-card .go{
    grid-column:2;
    grid-row:1;
    align-self:center;
    margin:0;
    padding:0;
    border:0;
    font-size:.66rem;
    white-space:nowrap;
  }
  .v2 #method .home-section-action{
    margin-top:22px;
    text-align:left;
  }
  .v2 #method .home-section-action .button{
    width:100%;
    min-height:48px;
    padding-inline:16px;
    font-size:.68rem;
  }

  #method{padding-bottom:30px}
  #goals{padding-top:34px;padding-bottom:36px}
  #goals .goal-grid{
    display:grid;
    gap:8px;
  }
  #goals .goal-card{
    min-height:0;
    height:auto;
    aspect-ratio:auto;
    justify-content:flex-start;
    padding:16px 16px 15px;
    border-radius:16px;
  }
  #goals .goal-card .card-cat{
    margin-bottom:8px;
    font-size:.7rem;
  }
  #goals .goal-card p{
    margin:0 0 10px;
    font-size:.86rem;
    line-height:1.5;
  }
  #goals .goal-card .go{
    margin-top:0;
    font-size:.66rem;
  }

  #how-we-work .home-head{
    margin-bottom:22px;
    text-align:left;
  }
  #how-we-work .home-head::before{margin-left:0;margin-right:0}
  #how-we-work .process-steps{
    display:block;
    width:100%;
    max-width:none;
    margin:0;
    border-top:1px solid rgba(255,255,255,.1);
  }
  #how-we-work .process-step{
    position:relative;
    display:grid;
    grid-template-columns:42px 1fr;
    grid-template-rows:auto auto;
    gap:4px 14px;
    align-items:start;
    min-height:0;
    padding:18px 0;
    border:0;
    border-bottom:1px solid rgba(255,255,255,.1);
    border-radius:0;
    background:transparent;
    text-align:left;
  }
  #how-we-work .process-step__num{
    grid-column:1;
    grid-row:1/3;
    display:grid;
    width:38px;
    height:38px;
    margin:0;
    place-items:center;
    border:1px solid rgba(201,170,102,.55);
    border-radius:50%;
    background:rgba(201,170,102,.05);
    box-shadow:none;
    color:var(--sg-gold-soft);
    font-family:var(--font-accent);
    font-size:1rem;
    font-style:italic;
  }
  #how-we-work .process-step h3{
    grid-column:2;
    margin:0;
    color:#fff;
    font-family:var(--font-heading);
    font-size:1.18rem;
    font-weight:600;
    line-height:1.2;
    text-align:left;
  }
  #how-we-work .process-step p{
    grid-column:2;
    max-width:none;
    margin:2px 0 0;
    color:#aeb8c6;
    font-size:.86rem;
    line-height:1.55;
    text-align:left;
  }
  #how-we-work .home-section-action{
    margin-top:22px;
    text-align:left;
  }

  .v2 .handle-grid{
    display:block;
    border-top:1px solid rgba(255,255,255,.1);
  }
  .v2 .handle-card{
    min-height:0;
    padding:18px 0;
    border:0;
    border-bottom:1px solid rgba(255,255,255,.1);
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  .v2 .handle-card .card-cat{margin-bottom:7px}
  .v2 .handle-card p{
    margin:0;
    font-size:.9rem;
    line-height:1.55;
  }

  .v2 .home-sec--who .split{gap:24px}
  .v2 .home-sec--proof{padding-top:38px;padding-bottom:38px}
  .v2 .home-sec--proof .home-head h2{
    max-width:100%;
    font-size:2.05rem;
    line-height:1.06;
  }
  .v2 [aria-labelledby="guides-h"]{
    padding-top:38px;
    padding-bottom:40px;
  }
  .v2 [aria-labelledby="guides-h"] .home-head{
    margin-bottom:22px;
  }
  .v2 .guide-grid{
    gap:9px;
  }
  .v2 .guide-card{
    min-height:0;
    height:auto;
    padding:20px 18px;
    border-radius:16px;
  }
  .v2 .guide-card__meta{font-size:.64rem}
  .v2 .guide-card h3{
    margin:14px 0 9px;
    font-size:1.55rem;
    line-height:1.12;
  }
  .v2 .guide-card p{
    font-size:.84rem;
    line-height:1.55;
  }
  .v2 .guide-card__link{
    margin-top:14px;
    padding-top:0;
    font-size:.66rem;
  }
  .v2 .who-item{padding:15px 0}
  .v2 .who-item p{font-size:.9rem;line-height:1.5}
  .v2 .who-range{margin-top:22px;font-size:.9rem;line-height:1.58}
  .v2 .split-media{min-height:240px;aspect-ratio:4/3}

  /* Flagship 10/10/10 */
  .method-hero{padding-bottom:22px}
  .method-hero__top{padding:42px 0 12px}
  .method-page .method-hero h1{
    font-size:clamp(2.65rem,11.3vw,3.35rem);
    line-height:1;
  }
  .method-page .method-hero__sub{margin-top:18px;font-size:1.06rem;line-height:1.45}
  .method-hero__visual{height:190px;margin-top:20px}
  .method-hero__visual img{width:150vw}
  .method-rates{border-radius:18px}
  .method-rate{padding:15px 16px}
  .method-rate dd{font-size:2.6rem}
  .method-part,
  .method-result-card{padding:24px 22px}
  .method-part__top{margin-bottom:20px}
  .method-part__number{font-size:2.8rem}
  .method-savings{padding:26px 22px;border-radius:22px}
  .method-savings__figure strong{font-size:4rem}
  .method-example__intro{gap:16px;margin-bottom:26px}
  .method-profit-value{font-size:2.7rem}
  .method-example__result{padding:24px 22px;border-radius:20px}
  .method-retained{font-size:3.4rem}
  .method-results__grid{gap:12px}
  .method-step-grid article{padding:22px 0}
  .method-final__card{padding:28px 22px;border-radius:22px}
  .method-final h2{font-size:clamp(2.35rem,10.5vw,3rem)}
  .method-actions{display:grid;grid-template-columns:1fr;gap:9px}
  .method-actions>.button{width:100%}

  /* Flagship 10/10/10 — phone composition */
  .method-page main>.method-section,
  .method-page main>.method-standalone{
    content-visibility:visible;
    contain-intrinsic-size:none;
  }
  .method-section{padding-block:40px}
  .method-page p{font-size:.9rem;line-height:1.62}
  .method-page .method-kicker{
    margin-bottom:12px;
    font-size:.66rem;
    letter-spacing:.12em;
  }
  .method-page .method-link{
    font-size:.84rem;
    text-underline-offset:5px;
  }

  .method-hero{padding-bottom:22px}
  .method-hero__top{padding:38px 0 10px}
  .method-page .method-hero h1{
    font-size:clamp(2.35rem,10vw,2.85rem);
    line-height:1.02;
  }
  .method-page .method-hero__sub{
    margin:16px 0 10px;
    font-size:1rem;
    line-height:1.45;
  }
  .method-hero__copy>p:not(.method-kicker):not(.method-hero__sub){
    font-size:.9rem;
    line-height:1.58;
  }
  .method-hero__visual{
    height:175px;
    margin-top:18px;
  }
  .method-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    margin-top:20px;
  }
  .method-actions>.button{
    width:100%;
    min-height:46px;
  }
  .method-hero .method-actions .button + .button{
    border-color:rgba(201,170,102,.62);
    background:transparent;
    color:#fff;
  }

  .method-rates{border-radius:16px}
  .method-rate{padding:14px 16px}
  .method-rate dd{font-size:2.5rem}
  .method-rate dt{font-size:.78rem}
  .method-rate dt span{font-size:.7rem}
  .method-page .method-hero__note{
    margin-top:16px;
    font-size:.72rem;
    line-height:1.55;
  }

  .method-proof{padding:24px 0}
  .method-proof__grid{gap:18px 14px}
  .method-proof strong{font-size:1.8rem}
  .method-proof span{
    margin-top:5px;
    font-size:.68rem;
    line-height:1.4;
  }

  .method-split{gap:20px}
  .method-split h2,
  .method-example__intro h2,
  .method-results__head h2,
  .method-audience h2,
  .method-process h2,
  .method-standalone h2,
  .method-clarity h2{
    font-size:clamp(2.05rem,9vw,2.45rem);
    line-height:1.05;
  }
  .method-split p{margin-bottom:14px}

  .method-parts{padding-top:0}
  .method-parts__grid{
    display:block;
    border-top:1px solid var(--border-subtle);
  }
  .method-part{
    padding:22px 0;
    border:0;
    border-bottom:1px solid var(--border-subtle);
    border-radius:0;
    background:transparent;
  }
  .method-part__top{
    margin-bottom:14px;
    gap:16px;
  }
  .method-part__label{font-size:.66rem}
  .method-part__number{font-size:2.7rem}
  .method-part h3{
    font-size:1.55rem;
    line-height:1.15;
  }
  .method-part p{
    margin:14px 0;
    font-size:.88rem;
    line-height:1.58;
  }
  .method-page .method-part__detail{
    padding-top:14px;
    font-size:.77rem;
    line-height:1.55;
  }

  .method-savings{
    gap:20px;
    margin-top:16px;
    padding:22px 20px;
    border-radius:18px;
  }
  .method-savings__figure{
    padding-bottom:18px;
  }
  .method-savings__figure strong{font-size:3.45rem}
  .method-savings__figure span{
    margin-top:10px;
    font-size:.7rem;
  }
  .method-savings h3{
    font-size:1.65rem;
    line-height:1.12;
  }
  .method-savings p{
    font-size:.86rem;
    line-height:1.56;
  }
  .method-page .method-savings__risk{
    padding-top:14px;
    font-size:.72rem;
    line-height:1.5;
  }

  .method-example__intro{
    gap:12px;
    margin-bottom:22px;
  }
  .method-example__intro p{
    font-size:.88rem;
    line-height:1.58;
  }
  .method-example__grid{gap:22px}
  .method-example__control label{font-size:.82rem}
  .method-profit-value{
    margin:6px 0 14px;
    font-size:2.45rem;
  }
  .method-slider-labels{font-size:.7rem}
  .method-example__breakdown{margin-top:18px}
  .method-example__breakdown>div{
    gap:10px;
    padding:12px 0;
    font-size:.82rem;
  }
  .method-example__result{
    padding:20px 18px;
    border-radius:18px;
  }
  .method-example__result>span{font-size:.64rem}
  .method-retained{
    margin:12px 0;
    font-size:2.8rem;
  }
  .method-page .method-example__result p{
    margin-bottom:14px;
    font-size:.84rem;
    line-height:1.55;
  }
  .method-retention-bar{margin:18px 0 12px}
  .method-page .method-example__footnote{
    margin-top:20px;
    font-size:.7rem;
    line-height:1.55;
  }

  .method-results__head{
    gap:12px;
    margin-bottom:4px;
  }
  .method-results__grid{
    display:block;
    border-top:1px solid var(--border-subtle);
  }
  .method-result-card{
    padding:20px 0;
    border:0;
    border-bottom:1px solid var(--border-subtle);
    border-radius:0;
    background:transparent;
  }
  .method-result-card>p:first-child{
    font-size:.65rem;
    letter-spacing:.09em;
  }
  .method-result-card strong{
    font-size:2.55rem;
    line-height:1;
  }
  .method-result-card p{
    font-size:.86rem;
    line-height:1.56;
  }
  .method-page .method-results__note{
    margin-top:16px;
    font-size:.7rem;
  }

  .method-audience__grid article{padding:18px 0}
  .method-audience h3{
    font-size:1.55rem;
    line-height:1.15;
  }
  .method-audience__grid p{
    margin-top:8px;
    font-size:.86rem;
    line-height:1.55;
  }

  .method-step-grid{
    display:block;
    margin-top:22px;
    border-top:1px solid var(--border-subtle);
  }
  .method-step-grid article{
    display:grid;
    grid-template-columns:38px 1fr;
    gap:4px 12px;
    padding:17px 0;
    border-top:0;
    border-bottom:1px solid var(--border-subtle);
  }
  .method-step-grid article>span{
    grid-row:1/3;
    display:grid;
    width:34px;
    height:34px;
    place-items:center;
    border:1px solid var(--border-gold);
    border-radius:50%;
    font-size:.82rem;
  }
  .method-step-grid h3{
    margin:0;
    font-size:1.1rem;
    line-height:1.2;
  }
  .method-step-grid p{
    margin:0;
    font-size:.84rem;
    line-height:1.5;
  }

  .method-standalone{
    padding-block:38px;
  }
  .method-standalone__links{
    gap:7px;
    margin:16px 0;
  }
  .method-standalone__links a{
    padding:9px 12px;
    font-size:.76rem;
  }
  .method-clarity__card{
    gap:16px;
    padding:20px 18px;
    border-radius:18px;
  }
  .method-clarity p{
    margin-bottom:12px;
    font-size:.84rem;
  }

  .method-final{padding-bottom:42px}
  .method-final__card{
    padding:24px 20px;
    border-radius:20px;
  }
  .method-final h2{
    font-size:clamp(2.2rem,9.5vw,2.65rem);
  }
  .method-final p{
    margin:16px 0;
    font-size:.88rem;
  }
  .method-final .method-link{margin-top:18px}
  .method-page .method-disclaimer{
    margin-top:18px;
    font-size:.7rem;
    line-height:1.55;
  }

  /* Services overview */
  .services-hero__copy{padding:42px 0 24px}
  .services-hero h1{font-size:var(--hero-title-size);line-height:var(--hero-title-leading)}
  .services-hero__copy>p:not(.services-kicker){margin-top:18px}
  .services-hero__visual{height:190px}
  .services-hero__visual img{width:148%}
  .services-flagship{padding:26px 22px;border-radius:22px}
  .services-flagship__copy p:not(.services-kicker){margin-top:16px}
  .services-flagship__copy .button{width:100%;margin-top:22px}
  .services-flagship__rates{margin-top:4px;border-radius:18px}
  .services-flagship__rate{padding:14px 16px}
  .services-flagship__rate strong{font-size:2.35rem}
  .services-options__head{margin:52px 0 24px}
  .services-options__head h2{font-size:2.35rem;line-height:1.05}
  .services-grid{gap:11px}
  .services-card{padding:22px 20px;border-radius:18px}
  .services-card__meta{margin-bottom:15px}
  .services-card p{margin:13px 0 20px}
  .services-actions{display:grid;grid-template-columns:1fr;gap:9px}
  .services-actions>.button{width:100%}

  /* Shared service pages */
  .service-hero{padding:42px 0 0}
  .service-hero__grid{padding-bottom:28px}
  .service-hero h1{font-size:var(--hero-title-size);line-height:var(--hero-title-leading)}
  .service-hero__lead{margin-top:18px;font-size:1rem;line-height:1.58}
  .service-hero__visual{height:190px;aspect-ratio:auto}
  .service-method-strip{padding-block:20px}
  .service-method-strip__inner{gap:14px}
  .service-method-strip__inner p{font-size:.82rem}
  .service-editorial__grid{gap:30px}
  .service-editorial__media{min-height:280px;border-radius:20px}
  .service-editorial__lead{font-size:.96rem}
  .service-facts{padding-block:20px}
  .service-fact{padding:20px 18px}
  .service-fact strong{font-size:2.15rem}
  .service-section-head{gap:14px;margin-bottom:26px}
  .service-section-head h2,
  .service-process__intro h2,
  .service-clarity__copy h2{font-size:clamp(2.2rem,10vw,2.7rem)}
  .service-card-grid{gap:11px}
  .service-card{padding:22px 20px;border-radius:18px}
  .service-step-grid article{padding:20px 0}
  .service-clarity__photo{min-height:170px}
  .service-clarity__copy{padding:22px 20px 18px}
  .service-clarity__points{padding:18px 20px}
  .service-actions{display:grid;grid-template-columns:1fr;gap:9px}
  .service-actions .button,
  .service-actions .service-button-secondary{width:100%;justify-content:center}

  /* Banking */
  .bank-hero{padding:42px 0 0}
  .bank-hero__grid{padding-bottom:28px}
  .bank-hero h1{font-size:var(--hero-title-size);line-height:var(--hero-title-leading)}
  .bank-hero__lead{margin-top:18px;font-size:1rem;line-height:1.58}
  .bank-hero__visual{height:190px;aspect-ratio:auto}
  .bank-method-strip{padding-block:20px}
  .bank-method-strip__inner{gap:14px}
  .bank-method-strip__inner p{font-size:.82rem}
  .bank-card{padding:22px 20px;border-radius:18px}
  .bank-editorial__grid{gap:30px}
  .bank-editorial__media{min-height:300px;border-radius:20px}
  .bank-section-head{gap:14px;margin-bottom:26px}
  .bank-section-head h2,
  .bank-process__intro h2,
  .bank-clarity__copy h2{font-size:clamp(2.2rem,10vw,2.7rem)}
  .bank-fact-panel__card{border-radius:20px}
  .bank-fact-panel__number{font-size:3.7rem}
  .bank-audience-grid{gap:11px}
  .bank-step-grid article{padding:20px 0}
  .bank-clarity__photo{min-height:170px}
  .bank-clarity__copy{padding:22px 20px 18px}
  .bank-clarity__points{padding:18px 20px}
  .bank-actions{display:grid;grid-template-columns:1fr;gap:9px}
  .bank-actions .button,
  .bank-actions .bank-button-secondary{width:100%;justify-content:center}

  /* About / Contact / FAQ */
  .trust-hero{
    display:flex;
    min-height:0;
    flex-direction:column;
  }
  .trust-hero__inner{
    order:1;
    min-height:0;
    align-items:flex-start;
    padding:42px 0 30px;
  }
  .trust-hero__visual{
    position:relative;
    order:2;
    inset:auto;
    width:100%;
    height:205px;
  }
  .trust-hero__visual::after{
    background:linear-gradient(180deg,var(--color-navy-950),rgba(9,20,38,.06) 18%,transparent 52%,rgba(9,20,38,.18));
  }
  .trust-hero__visual img{object-position:center}
  .trust-hero h1{font-size:clamp(2.65rem,11vw,3.35rem);line-height:1}
  .trust-hero__lead{margin-top:18px;font-size:1rem;line-height:1.58}
  .trust-actions{display:grid;width:100%;grid-template-columns:1fr;gap:9px;margin-top:24px}
  .trust-actions .button,
  .trust-actions .trust-link{
    width:100%;
    min-height:48px;
    justify-content:center;
  }
  .trust-proof__grid{grid-template-columns:1fr 1fr}
  .trust-proof__item{
    min-height:112px;
    padding:20px 16px;
  }
  .trust-proof__item:nth-child(odd){border-right:1px solid var(--border-subtle)}
  .trust-proof__item:nth-child(even){border-right:0}
  .trust-proof__item:last-child{
    grid-column:1/-1;
    min-height:96px;
    border-right:0;
  }
  .trust-proof__item strong{font-size:1.9rem}
  .trust-proof__item span{font-size:.7rem}
  .trust-editorial__grid{gap:30px}
  .trust-editorial__media{min-height:280px;border-radius:20px}
  .trust-editorial__copy h2,
  .trust-section-head h2,
  .trust-process__intro h2,
  .trust-contact__intro h2{font-size:clamp(2.2rem,10vw,2.7rem)}
  .trust-points{margin-top:24px}
  .trust-point{padding:16px 0}
  .trust-process__list li{padding:18px 0}
  .trust-outcomes{grid-template-columns:1fr 1fr;gap:10px}
  .trust-outcome{min-height:0;padding:20px 17px}
  .trust-outcome strong{font-size:1.9rem}
  .trust-outcome p{margin-top:12px;font-size:.76rem;line-height:1.55}
  .trust-contact__grid{gap:28px}
  .trust-page .form-stack{padding:22px 18px;border-radius:20px}
  .faq-tools{margin:0 0 26px;padding:10px;border-radius:16px}
  .faq-search input{min-height:46px}
  .faq-results-head{gap:8px}
  .faq-results-head h2{font-size:2.2rem}
  .faq-page .faq-section-h{margin-top:42px}
  .trust-final__card{padding:28px 22px;border-radius:22px}
  .trust-final h2{font-size:2.45rem}
  .trust-final__actions{display:grid;width:100%;grid-template-columns:1fr;gap:9px}
  .trust-final__actions .button{width:100%}

  /* Resources + client results */
  .hub-hero__inner{
    grid-template-columns:1fr;
    gap:24px;
    min-height:0;
    padding:52px 0 42px;
  }
  .hub-hero h1{font-size:clamp(2.65rem,11vw,3.35rem);line-height:1}
  .hub-hero__copy>p:not(.hub-kicker){margin-top:18px;font-size:1rem;line-height:1.58}
  .hub-hero__note{padding:18px;border-radius:16px}
  .hub-section-head{margin-bottom:26px}
  .hub-section-head h2{font-size:clamp(2.2rem,10vw,2.7rem)}
  .resource-featured{gap:10px}
  .resource-featured-side{gap:10px}
  .resource-feature--lead,
  .resource-feature{min-height:250px;border-radius:20px}
  .resource-feature__inner{padding:24px 20px}
  .resource-feature h2{font-size:2.5rem}
  .resource-feature h3{font-size:1.75rem}
  .resource-start{margin-bottom:38px}
  .resource-toolbar{margin-inline:0;padding:10px;border-radius:16px}
  .resources-hub .resource-card{border-radius:16px}
  .resources-hub .resource-card-link{padding:18px 16px}
  .resources-hub .resource-card p{font-size:.78rem}
  .resources-hub .resource-arrow{font-size:0}
  .resources-hub .resource-arrow span:last-child{font-size:1rem}
  .case-showcase{gap:10px}
  .case-poster{flex-basis:min(72vw,280px);border-radius:18px}
  .case-record summary{padding:18px 0}
  .case-fact{padding:17px;border-radius:16px}
  .hub-final__card{padding:28px 22px;border-radius:22px}
  .hub-final h2{font-size:2.45rem}
  .hub-final__actions{display:grid;width:100%;grid-template-columns:1fr;gap:9px}
  .hub-final__actions .button{width:100%}

  /* Articles + older legal/generic pages */
  .article-hero{min-height:0;padding:54px var(--mobile-gutter) 42px}
  .article-back{margin-bottom:20px}
  .article-hero h1{font-size:clamp(2.45rem,10.5vw,3rem);line-height:1}
  .article-deck{margin-top:18px;font-size:1rem;line-height:1.62}
  .article-meta{margin-top:20px}
  .article-shell{width:calc(100% - (2 * var(--mobile-gutter)));padding:42px 0 68px;gap:20px}
  .article-toc{padding:14px;border-radius:16px}
  .article-lead{font-size:1.4rem;line-height:1.48}
  .article-body section{padding:30px 0}
  .article-body h2{font-size:2rem}
  .article-body p{line-height:1.72}
  .article-callout{padding:20px 18px;border-radius:16px}
  .article-next{width:calc(100% - (2 * var(--mobile-gutter)));margin-bottom:48px}
  .article-next-inner{padding:24px 20px;border-radius:20px}
  .article-disclaimer{width:calc(100% - (2 * var(--mobile-gutter)))}

  .v2 .page-hero{min-height:0;padding:52px 0 42px}
  .v2 .page-hero-inner{width:calc(100% - (2 * var(--mobile-gutter)))}
  .v2 .page-hero h1{font-size:clamp(2.65rem,11vw,3.35rem);line-height:1}
  .v2 .page-hero-inner>p:not(.page-kicker),
  .v2 .hub-hero-copy>p:not(.page-kicker){font-size:1rem;line-height:1.62}
  .v2 .content-wrap{width:calc(100% - (2 * var(--mobile-gutter)));padding:48px 0}
  .v2 .content-card{padding:22px 20px;border-radius:18px}
  .v2 .cta-band{width:calc(100% - (2 * var(--mobile-gutter)));margin-bottom:42px;padding:26px 20px;border-radius:20px}

  /* Footer */
  .site-footer{
    grid-template-columns:1fr 1fr;
    gap:28px 18px;
    padding:46px var(--mobile-gutter) 28px;
  }
  .footer-brand{grid-column:1/-1}
  .footer-brand .brand{width:200px;height:48px}
  .footer-brand p{max-width:310px;margin-top:12px}
  .footer-column h3{margin-bottom:10px;font-size:.68rem}
  .footer-column a{padding:4px 0;font-size:.78rem;line-height:1.45}
  .footer-faq-q{display:none}
  .footer-bottom{
    grid-column:1/-1;
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
    margin-top:6px;
    padding-top:22px;
  }

  /* Cookie controls */
  .cookie-notice{
    left:12px;
    right:12px;
    bottom:12px;
    width:auto;
    max-width:none;
    padding:14px;
    border-radius:16px;
  }
  .cookie-notice p{font-size:.76rem;line-height:1.5}
  .cookie-notice__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .cookie-notice__actions button{min-height:44px}
}

@media(max-width:430px){
  .site-header{padding-inline:14px}
  .site-header .brand{width:146px;height:40px}
  .mobile-nav-actions{grid-template-columns:1fr}
  .v2 .hero{min-height:600px}
  .v2 .hero-copy h1{font-size:clamp(1.92rem,8.2vw,2.2rem)}
  .v2 #method .goal-card{
    grid-template-columns:1fr;
  }
  .v2 #method .goal-card .go{
    grid-column:1;
    grid-row:auto;
    justify-self:start;
    margin-top:4px;
  }
  .v2 .home-head h2,
  .service-section-head h2,
  .bank-section-head h2,
  .trust-editorial__copy h2,
  .trust-section-head h2,
  .hub-section-head h2{font-size:2.18rem}
  .method-page .method-hero h1,
  .trust-hero h1,
  .hub-hero h1{font-size:2.68rem}
  .method-hero h1 span{white-space:normal}
  .method-rate dd{font-size:2.45rem}
  .trust-outcomes{grid-template-columns:1fr}
  .trust-outcome{padding:18px}
  .resource-feature h2{font-size:2.25rem}
  .site-footer{gap:26px 14px}
}
