/*
Theme Name: Astounding Fitness
Author: Astounding Fitness LLP
Description: Lightweight responsive brand theme with editable SiteOrigin sections.
Version: 1.0.0
Requires PHP: 7.4
Text Domain: astounding-fitness
*/
:root{--pink:#df1767;--purple:#421d7d;--ink:#150f1e;--paper:#fbfafc;--muted:#625d69}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--pink);outline-offset:5px}img{max-width:100%;height:auto;display:block}.wrap{max-width:1320px;margin:auto;padding:0 5vw}.site-header{height:90px;position:sticky;top:0;z-index:50;background:#fffffff5;display:flex;align-items:center;justify-content:space-between;padding:12px 5vw;border-bottom:1px solid #eee}.brand img{width:135px;height:66px;object-fit:contain}.navigation{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:700}.navigation a:not(.btn):hover{color:var(--pink)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:14px 24px;background:var(--pink);color:white;border:1px solid var(--pink);font-size:14px;font-weight:700;transition:transform .2s,background .2s}.btn:hover{background:#b80d50;transform:translateY(-3px)}.btn.outline{background:transparent;border-color:#ffffff70}.menu-toggle{display:none;background:none;border:1px solid #ddd;padding:8px 15px}.skip{position:absolute;left:20px;top:-100px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}.hero{position:relative;min-height:740px;height:calc(100svh - 90px);max-height:1000px;isolation:isolate;color:white;display:flex;align-items:center;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;object-position:65% center}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b0812db,transparent 85%);z-index:-1}.hero .wrap{width:100%}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:3px;font-weight:700;color:var(--pink);margin:0 0 22px}.hero .eyebrow{color:#fff}.hero h1,h2,h3,.display{font-family:Impact,'Arial Narrow',sans-serif;font-weight:500;line-height:1.02;text-transform:uppercase;letter-spacing:-1.5px;margin:0 0 24px}.hero h1{font-size:clamp(64px,7.8vw,118px);max-width:700px}.accent{color:var(--pink)}.hero p.lead{font-size:20px;margin:25px 0 30px;max-width:460px}.actions{display:flex;gap:14px;flex-wrap:wrap}.hero-bottom{position:absolute;bottom:30px;left:5vw;right:5vw;display:flex;justify-content:space-between;font-size:10px;letter-spacing:3px;text-transform:uppercase}.hero-bottom span{color:#ef5e99}.section{padding:100px 0}h2{font-size:clamp(42px,5.2vw,76px)}h3{font-size:34px;letter-spacing:-.7px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:40px}.section-head h2{margin:0}.section-head p{max-width:320px;color:var(--muted);font-size:15px}.training-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.training-card{min-height:390px;position:relative;overflow:hidden;padding:35px;display:flex;flex-direction:column;justify-content:end;color:white;background:var(--purple);isolation:isolate}.training-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .5s}.training-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#11091bf0,transparent);z-index:-1}.training-card:hover img{transform:scale(1.04)}.training-card p{margin:0;max-width:240px;font-size:15px}.training-card .number{position:absolute;top:25px;font-size:12px;letter-spacing:3px;border-bottom:2px solid var(--pink);padding-bottom:6px}.dark{background:#140d1d;color:white}.dark .section-head p{color:#b8aebf}.locations{display:grid;grid-template-columns:1fr 1fr;gap:24px}.location{border:1px solid #ffffff20;padding:36px;position:relative;min-height:285px;background:radial-gradient(at 100% 0,#49286c70,transparent 65%);overflow:hidden}.location .sector{position:absolute;right:20px;top:0;font:180px/1 Impact,sans-serif;color:#ffffff05;pointer-events:none}.location h3{font-size:48px;margin:45px 0 15px}.location a{color:#ff78ad;font-weight:700;font-size:14px;display:inline-block;margin-top:22px}.location p{color:#c8c0d0;margin:0}.corporate{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:24px;padding:25px 36px;border:1px solid #ffffff20}.corporate h3{font-size:24px;margin:0 0 8px}.corporate p{font-size:14px;color:#c8c0d0;margin:0}.corporate a{font-size:13px;color:#ff78ad}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.split img{aspect-ratio:4/5;object-fit:cover}.split p{color:var(--muted)}.ticks{list-style:none;padding:0;margin:25px 0}.ticks li{padding:12px 0;border-bottom:1px solid #ddd}.ticks li:before{content:"↗";color:var(--pink);margin-right:15px}.cta{background:linear-gradient(115deg,#421d7d,#7a195f);color:white;padding:90px 0}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{max-width:850px;margin:0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-grid p{color:var(--muted)}.email-link{font-size:clamp(14px,1.6vw,23px);color:var(--purple);border-bottom:2px solid var(--pink);overflow-wrap:anywhere}.faq details{border-top:1px solid #ddd;padding:20px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{font-size:14px;margin-bottom:0}.footer{border-top:1px solid #ddd;padding:45px 0 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:35px}.footer img{width:145px}.footer-links{display:flex;gap:25px;font-size:13px}.footer-bottom{border-top:1px solid #ddd;padding-top:22px;display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.legal{max-width:900px;padding:70px 25px;margin:auto}.legal h1{font-size:40px}.panel-grid{margin-bottom:0!important}.panel-grid-cell{padding:0!important}.panel-layout .so-panel{margin-bottom:0!important}.reveal{opacity:1}.motion .reveal.waiting{opacity:0;transform:translateY(22px)}.motion .reveal{transition:opacity .65s,transform .65s}.hero-copy{animation:enter .8s both}@keyframes enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media(max-width:900px){.navigation{gap:17px;font-size:12px}.hero{min-height:660px}.section{padding:75px 0}.split{gap:35px}.training-card{padding:23px;min-height:340px}.section-head{display:block}.section-head p{max-width:600px}.hero h1{font-size:82px}}@media(max-width:650px){.site-header{height:76px}.brand img{width:113px;height:54px}.menu-toggle{display:block}.navigation{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:25px 6vw;flex-direction:column;align-items:stretch;box-shadow:0 10px 15px #0001}.navigation.open{display:flex}.hero{height:auto;min-height:760px;align-items:end;padding:230px 0 95px}.hero>img{object-position:69% center}.hero:before{background:linear-gradient(0deg,#100a17 5%,#100a1790 55%,#100a1720)}.hero h1{font-size:65px;letter-spacing:-1px;max-width:420px}.hero p.lead{font-size:17px}.hero-bottom{font-size:8px;letter-spacing:1.4px}.hero-bottom a{display:none}.section{padding:60px 0}.training-grid,.locations,.split,.contact-grid{grid-template-columns:1fr}.training-card{min-height:360px}.split{gap:35px}.split img{aspect-ratio:4/3}.corporate{display:block;padding:25px}.corporate a{display:inline-block;margin-top:15px}.cta{padding:60px 0}.cta .wrap{display:block}.cta .btn{margin-top:30px}.footer-top,.footer-bottom{align-items:start;flex-direction:column;gap:20px}.footer-links{flex-wrap:wrap}h2{font-size:46px}.contact-grid{gap:35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion .reveal.waiting{opacity:1;transform:none}}

.social-links{display:flex;flex-wrap:wrap;gap:16px;margin:0 0 30px}.social-links a{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:8px 14px;border:1px solid #ded7e4;border-radius:30px;font-size:13px}.social-links a:hover{color:#a12687;border-color:currentColor}.instagram-section{padding:60px 0;background:#f2ecf5;text-align:center}.instagram-section h2{font-size:clamp(32px,5vw,56px);margin:12px 0}.instagram-section p{margin-bottom:24px}.training-card img{object-position:center}.split>img{object-fit:cover;object-position:center}

.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;opacity:0;transition:opacity .4s}.hero-video.is-playing{opacity:1}.video-toggle{position:absolute;right:5vw;top:24px;z-index:2;background:#140d1dcc;color:#fff;border:1px solid #ffffff80;border-radius:24px;padding:10px 16px;min-height:44px;font-size:12px;cursor:pointer}@media(prefers-reduced-motion:reduce){.hero-video{transition:none}}
/* Instagram collage: actual feed posts, scoped to homepage section. */
#instagram #sb_instagram #sbi_images{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-rows:clamp(150px,18vw,240px);gap:12px!important;padding:0!important}
#instagram #sb_instagram #sbi_images .sbi_item{width:100%!important;height:100%!important;min-width:0;padding:0!important;float:none!important;overflow:hidden;border-radius:6px}
#instagram #sb_instagram #sbi_images .sbi_item:first-child{grid-column:span 2;grid-row:span 2}
#instagram #sb_instagram #sbi_images .sbi_item:nth-child(6){grid-column:1/-1}
#instagram #sb_instagram .sbi_photo_wrap,#instagram #sb_instagram .sbi_photo{height:100%!important;width:100%!important}
#instagram #sb_instagram .sbi_photo>img{width:100%!important;height:100%!important;object-fit:cover!important}
#instagram #sb_instagram #sbi_load{padding-top:24px}
#instagram #sb_instagram .sbi_follow_btn a{background:#df1767!important;border-radius:4px;padding:14px 24px!important}
@media(max-width:650px){#instagram #sb_instagram #sbi_images{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:clamp(160px,52vw,260px);gap:8px!important}#instagram #sb_instagram #sbi_images .sbi_item:first-child{grid-column:1/-1;grid-row:span 2}#instagram #sb_instagram #sbi_images .sbi_item:nth-child(6){grid-column:1/-1}}
.menu-toggle{width:46px;height:46px;padding:9px;border:0;border-radius:6px;color:var(--ink);cursor:pointer}.menu-toggle svg{display:block}.menu-toggle:hover{background:#f2ecf5}.menu-toggle[aria-expanded="true"]{color:var(--pink)}
