/* Shared front-end and editor styles. Fonts stay local: no third-party calls. */
@font-face{font-family:Montserrat;font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/montserrat-medium.ttf') format('truetype')}
@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/montserrat-bold.ttf') format('truetype')}
@font-face{font-family:Montserrat;font-style:normal;font-weight:900;font-display:swap;src:url('../fonts/montserrat-black.ttf') format('truetype')}
@font-face{font-family:Montserrat;font-style:italic;font-weight:500;font-display:swap;src:url('../fonts/montserrat-medium-italic.ttf') format('truetype')}
:root{
  --campaign-black:#000000;--campaign-dark:#080808;--campaign-light:#F2F0EA;
  --campaign-yellow:#FECB00;--campaign-secondary:#D5D0C2;--campaign-dark-soft:#1E1D19;
  --campaign-font:var(--wp--preset--font-family--campaign,'Montserrat',Arial,sans-serif);
  --campaign-margin:clamp(40px,5.556vw,110px);
  --campaign-heading:clamp(32px,2.778vw,48px);
}
/* The Gotham style variation replaces --campaign-font when font files arrive. */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto}
body{margin:0}
.wp-site-blocks{padding:0}
.wp-site-blocks>*,.campaign-main>*{margin-block:0}
.campaign-main,.campaign-header,.campaign-footer{font-family:var(--campaign-font);font-weight:500;font-size:16px;line-height:1.55}
.campaign-main{background:var(--campaign-dark);color:var(--campaign-light)}
.campaign-main :where(p,h1,h2,figure,blockquote,ul){margin:0}
.campaign-main :where(h1,h2){font-weight:900;letter-spacing:.01em;text-transform:uppercase;overflow-wrap:normal}
.campaign-main h2{font-size:var(--campaign-heading);line-height:1.1}
.campaign-main :where(p,li){overflow-wrap:break-word}
.campaign-main :where(img),.campaign-header img,.campaign-footer img{display:block;max-width:100%;height:auto}
.campaign-main .wp-block-group{margin-block:0}
.campaign-main .is-layout-flow>*+*,.campaign-header .is-layout-flow>*+*,.campaign-footer .is-layout-flow>*+*{margin-block-start:0}
.campaign-header,.campaign-footer{background:var(--campaign-black);color:var(--campaign-light)}
.campaign-header-inner{height:96px;display:flex;align-items:center;padding-inline:var(--campaign-margin)}
.campaign-header .campaign-logo{margin:0;width:247.5px}
.campaign-header .campaign-logo img{width:247.5px;height:auto}
.campaign-hero{position:relative;isolation:isolate;min-height:720px;display:grid;align-items:start}
.campaign-hero .campaign-hero-photo{position:absolute;inset:0;z-index:-1;width:100%;height:100%;margin:0}
.campaign-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.75}
.campaign-hero-content{padding:180px var(--campaign-margin) 100px;max-width:calc(960px + 2 * var(--campaign-margin))}
.campaign-hero h1{line-height:1;font-size:clamp(52px,5vw,86px)}
.campaign-hero h1 span{display:block}
.campaign-hero h1 .hero-secondary{font-size:clamp(44px,3.889vw,66px);line-height:1.05;margin-top:20px}
.campaign-hero .campaign-lead{color:var(--campaign-secondary);font-size:24px;line-height:1.4;margin-top:20px;max-width:800px}
.campaign-hero-eyebrow{display:none}
.campaign-future{background:var(--campaign-light);color:var(--campaign-dark);padding:96px var(--campaign-margin)}
.campaign-future h2{font-size:28px;line-height:1.15;padding-block:24px;margin-bottom:28px}
.campaign-reading-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
.campaign-reading-column{min-width:0}
.campaign-reading-columns strong{font-weight:700}
.campaign-split{display:grid;grid-template-columns:minmax(0,680fr) minmax(0,760fr);align-items:stretch}
.campaign-split-see{grid-template-columns:minmax(0,760fr) minmax(0,680fr)}
.campaign-split .campaign-photo{position:relative;margin:0;min-height:220px}
.campaign-split .campaign-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.campaign-split-why .campaign-photo img{object-position:44% center}
.campaign-split-content{padding:56px var(--campaign-margin) 56px 56px;min-width:0;color:var(--campaign-secondary)}
.campaign-split-content h2{color:var(--campaign-light);margin-bottom:16px}
.campaign-split-content p+p{margin-top:24.8px}
.campaign-list{padding-left:20px;list-style-type:square;margin-block:24.8px 0!important}
.campaign-list li{padding-left:2px}
.campaign-list li+li{margin-top:24.8px}
.campaign-list li::marker{content:'■  ';color:var(--campaign-yellow);font-size:1em}
.campaign-split-see .campaign-list{margin-top:0!important}
.campaign-split-see .campaign-list+p{margin-top:24.8px}
.campaign-cta{background:var(--campaign-yellow);color:var(--campaign-dark)}
.campaign-cta-content{padding:96px var(--campaign-margin);display:flex;flex-direction:column;align-items:flex-start;gap:18px}
.campaign-eyebrow{font-size:14px;line-height:1.2}
.campaign-cta-content>p{color:var(--campaign-dark-soft)}
.campaign-cta-copy p{margin:0}
.campaign-cta .wp-block-buttons{margin-top:24.8px}
.campaign-cta .wp-block-button__link{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:12px 24px;border:1px solid var(--campaign-dark);border-radius:0;background:var(--campaign-dark);color:var(--campaign-light);font-family:var(--campaign-font);font-size:14px;font-weight:700;line-height:1.2;min-height:48px;text-decoration:none;box-shadow:none}
.campaign-cta .wp-block-button__link::after{content:'';display:block;flex:none;width:24px;height:24px;background:currentColor;mask:url('../images/arrow-right.svg') center/contain no-repeat;-webkit-mask:url('../images/arrow-right.svg') center/contain no-repeat}
.campaign-cta .wp-block-button__link:hover,.campaign-cta .wp-block-button__link:active{background:var(--campaign-light);color:var(--campaign-dark)}
.campaign-cta .campaign-cta-photo{display:none;margin:0}
.campaign-quote-section{padding:84px calc(var(--campaign-margin) + 20px);height:auto;min-height:400px;display:flex;flex-direction:column;gap:28px}
.campaign-quotation{border:0;padding:0;color:var(--campaign-light);font-style:normal;width:100%;max-width:1180px}
.campaign-quotation p{font-size:22px;font-weight:500;font-style:italic;line-height:1.5;text-align:justify}
.campaign-quotation cite{display:block;margin-top:28px;color:var(--campaign-yellow);font-size:16px;font-weight:500;font-style:normal;line-height:1.4}
.campaign-footer-inner{min-height:216px;padding:48px var(--campaign-margin);display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
.campaign-footer figure{margin:0}
.campaign-footer .campaign-logo{width:247.5px}
.campaign-footer .campaign-logo img{width:247.5px;height:auto}
.campaign-footer .campaign-emi{width:193px}
.campaign-footer .campaign-emi img{width:193px;height:auto}
:where(a,button,input,select,textarea):focus-visible{outline:2px solid currentColor;outline-offset:4px}
.campaign-cta a:focus-visible{outline:2px solid var(--campaign-dark);outline-offset:3px}
.campaign-skip-link{position:absolute;z-index:1000;top:8px;left:8px;padding:12px;background:var(--campaign-yellow);color:var(--campaign-dark);transform:translateY(-200%)}
.campaign-skip-link:focus{transform:translateY(0)}
.campaign-generic{padding:64px var(--campaign-margin);min-height:60vh}
@media(min-width:1921px){.campaign-hero{min-height:780px}}
@media(min-width:1024px) and (max-width:1279px){
  .campaign-split-content{padding:40px}
  .campaign-split h2{font-size:32px}
  .campaign-hero-content{padding-top:150px}
}
@media(max-width:1023px){
  :root{--campaign-margin:40px;--campaign-heading:36px}
  .campaign-header-inner{height:72px}
  .campaign-hero{min-height:640px}
  .campaign-hero-content{padding-top:110px;padding-bottom:80px}
  .campaign-hero h1{font-size:56px}
  .campaign-hero h1 .hero-secondary{font-size:48px}
  .campaign-future{padding-block:64px}
  .campaign-future h2{font-size:26px;padding:0;margin-bottom:24px}
  .campaign-reading-columns{gap:24px;grid-template-columns:minmax(0,1fr)}
  .campaign-split,.campaign-split-see{grid-template-columns:1fr}
  .campaign-split .campaign-photo{height:340px}
  .campaign-split-content{padding:40px var(--campaign-margin)}
  .campaign-cta-content{padding:64px var(--campaign-margin)}
  .campaign-cta-copy p+p{margin-top:24.8px}
  .campaign-cta .campaign-cta-photo{display:block;position:relative;height:300px;background:var(--campaign-dark)}
  .campaign-cta-photo img{height:100%;width:100%;object-fit:cover}
  .campaign-cta .campaign-eyebrow{display:none}
  .campaign-cta .wp-block-buttons{margin-top:0}
  .campaign-quote-section{padding:64px var(--campaign-margin);min-height:0;gap:24px}
  .campaign-quotation p{font-size:20px;text-align:left}
  .campaign-footer-inner{min-height:200px}
}
@media(max-width:599px){
  :root{--campaign-margin:20px;--campaign-heading:32px}
  .campaign-header-inner{height:64px}
  .campaign-header .campaign-logo,.campaign-header .campaign-logo img{width:214.5px}
  .campaign-hero{min-height:560px}
  .campaign-hero-content{padding:56px var(--campaign-margin) 64px;max-width:100%}
  .campaign-hero-eyebrow{display:block;font-size:14px;font-weight:700;line-height:1.2;margin-bottom:14px!important;max-width:350px}
  .campaign-hero h1{font-size:clamp(44px,13.333vw,52px);line-height:.95;max-width:350px}
  .campaign-hero h1 .hero-secondary{font-size:clamp(38px,11.282vw,44px);line-height:1;margin-top:14px}
  .campaign-hero .campaign-lead{font-size:20px;margin-top:14px;max-width:350px}
  .campaign-hero .campaign-lead br{display:none}
  .campaign-future{padding-block:40px}
  .campaign-future h2{font-size:24px;line-height:1.15;margin-bottom:20px}
  .campaign-reading-columns{gap:20px}
  .campaign-split .campaign-photo{height:220px}
  .campaign-split-content{padding:32px var(--campaign-margin)}
  .campaign-cta-content{padding:32px var(--campaign-margin);gap:12px}
  .campaign-cta .campaign-cta-photo{height:220px}
  .campaign-quote-section{padding:48px 24px;gap:20px}
  .campaign-quote-section .campaign-eyebrow{font-size:12px}
  .campaign-quotation p{font-size:17px;line-height:1.5}
  .campaign-quotation cite{font-size:14px;margin-top:20px}
  .campaign-footer-inner{min-height:180px;padding:32px 20px;flex-direction:column;align-items:stretch;justify-content:space-between;gap:28px}
  .campaign-footer .campaign-logo,.campaign-footer .campaign-logo img{width:169.5px}
  .campaign-footer .campaign-emi{align-self:flex-end}
  .campaign-footer .campaign-emi,.campaign-footer .campaign-emi img{width:124px}
}
/* Keep deliberately mobile-only starter content selectable in the editor. */
.editor-styles-wrapper .campaign-hero-eyebrow,.editor-styles-wrapper .campaign-cta-photo{display:block}
