/* ZEM One Phase B2 — Visual Foundation */
:root{
  --zem-b2-ink:#101c24;
  --zem-b2-navy:#071821;
  --zem-b2-green:#174f42;
  --zem-b2-green-bright:#2b735f;
  --zem-b2-gold:#d7ad55;
  --zem-b2-gold-soft:#f2d99b;
  --zem-b2-ivory:#faf8f3;
  --zem-b2-cream:#f2eee5;
  --zem-b2-line:rgba(16,28,36,.12);
  --zem-b2-shadow:0 24px 70px rgba(7,24,33,.12);
  --zem-b2-radius:18px;
}
body.zem-one-b2{background:var(--zem-b2-ivory)}
body.zem-one-b2 .shell{width:min(1240px,calc(100% - 56px))}
body.zem-one-b2 .topbar{background:#06141c;border-bottom:1px solid rgba(255,255,255,.08)}
body.zem-one-b2 .topbar-inner{min-height:38px}
body.zem-one-b2 .topbar-inner>span{font-weight:700;color:rgba(255,255,255,.88)}
body.zem-one-b2 .topbar-rating{color:var(--zem-b2-gold-soft);font-weight:800}
body.zem-one-b2 .site-header{background:rgba(250,248,243,.94);border-bottom:1px solid var(--zem-b2-line);box-shadow:0 8px 30px rgba(7,24,33,.035)}
body.zem-one-b2 .nav-wrap{height:92px;gap:32px}
body.zem-one-b2 .brand{min-width:104px}
body.zem-one-b2 .brand img{width:84px;height:84px;filter:drop-shadow(0 7px 14px rgba(7,24,33,.10))}
body.zem-one-b2 .desktop-nav{gap:30px;color:#25343d}
body.zem-one-b2 .desktop-nav>a,
body.zem-one-b2 .nav-dropdown>a{font-size:13px;font-weight:800;letter-spacing:.01em}
body.zem-one-b2 .desktop-nav a:after{height:2px;bottom:0;border-radius:10px}
body.zem-one-b2 .nav-dropdown-menu{width:640px;border:1px solid rgba(16,28,36,.1);border-radius:16px;box-shadow:0 28px 80px rgba(7,24,33,.18);padding:30px}
body.zem-one-b2 .nav-dropdown-menu b{color:var(--zem-b2-green);font-size:19px}
body.zem-one-b2 .nav-dropdown-menu a{border-radius:9px;padding:10px 12px}
body.zem-one-b2 .nav-cta{min-height:50px;border-radius:999px;padding-inline:24px;box-shadow:0 14px 34px rgba(215,173,85,.28)}
body.zem-one-b2 .button{border-radius:999px;min-height:54px;padding-inline:27px}
body.zem-one-b2 .button:hover{transform:translateY(-3px)}
body.zem-one-b2 .button-gold{background:linear-gradient(135deg,var(--zem-b2-gold),#e9c66f);box-shadow:0 16px 38px rgba(215,173,85,.28)}
body.zem-one-b2 .zem-cinematic-hero{height:820px;min-height:calc(100vh - 130px)}
body.zem-one-b2 .zem-hero-overlay{background:linear-gradient(90deg,rgba(4,16,23,.96) 0%,rgba(4,16,23,.82) 38%,rgba(4,16,23,.28) 70%,rgba(4,16,23,.08) 100%),linear-gradient(180deg,rgba(0,0,0,.03) 50%,rgba(4,16,23,.68) 100%)}
body.zem-one-b2 .zem-hero-copy{padding-bottom:145px;max-width:760px}
body.zem-one-b2 .zem-hero-copy h1,
body.zem-one-b2 .zem-hero-copy h2{font-size:clamp(58px,6.4vw,94px);line-height:.94;letter-spacing:-.062em;text-shadow:0 4px 30px rgba(0,0,0,.2)}
body.zem-one-b2 .zem-hero-copy .hero-lede{max-width:640px;font-size:18px;line-height:1.78;color:rgba(255,255,255,.79)}
body.zem-one-b2 .zem-v770-hero-meta{margin-bottom:25px}
body.zem-one-b2 .zem-hero-trust-pills{gap:10px}
body.zem-one-b2 .zem-hero-trust-pills span{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:9px 13px;backdrop-filter:blur(12px)}
body.zem-one-b2 .zem-v770-side-arrow{width:52px;height:52px;border-radius:50%;background:rgba(7,24,33,.45);border-color:rgba(255,255,255,.3);backdrop-filter:blur(10px)}
body.zem-one-b2 .trust-strip{background:#fff;border-bottom:1px solid var(--zem-b2-line)}
body.zem-one-b2 .trust-strip-inner{min-height:88px}
body.zem-one-b2 .section{padding:128px 0}
body.zem-one-b2 .section-heading{margin-bottom:62px}
body.zem-one-b2 .section-heading h2,
body.zem-one-b2 .why-copy h2,
body.zem-one-b2 .quote-intro h2{font-size:clamp(44px,5.1vw,70px);line-height:1.02;letter-spacing:-.052em}
body.zem-one-b2 .service-card{border-radius:var(--zem-b2-radius);overflow:hidden;border:0;box-shadow:0 18px 48px rgba(7,24,33,.12);transition:transform .35s ease,box-shadow .35s ease}
body.zem-one-b2 .service-card:hover{transform:translateY(-8px);box-shadow:0 30px 74px rgba(7,24,33,.19)}
body.zem-one-b2 .service-card-shade{background:linear-gradient(180deg,rgba(4,15,23,.02) 5%,rgba(4,15,23,.32) 48%,rgba(4,15,23,.95) 100%)}
body.zem-one-b2 .service-link{border-radius:999px;width:46px;height:46px;display:inline-flex;align-items:center;justify-content:center}
body.zem-one-b2 .why-section,
body.zem-one-b2 .services-choice-section{background:var(--zem-b2-cream)}
body.zem-one-b2 .review-card{border-radius:var(--zem-b2-radius);border:1px solid rgba(255,255,255,.10);box-shadow:0 22px 60px rgba(0,0,0,.18)}
body.zem-one-b2 .featured-review{transform:translateY(-14px)}
body.zem-one-b2 .quote-section{background:radial-gradient(circle at 15% 20%,rgba(43,115,95,.26),transparent 35%),linear-gradient(135deg,#071821,#0d2932)}
body.zem-one-b2 .quote-grid{gap:90px}
body.zem-one-b2 .quote-form{border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.24)}
body.zem-one-b2 .zem-premium-footer{background:#05151d}
body.zem-one-b2 .footer-main-grid{gap:48px}
body.zem-one-b2 .footer-contact-card{border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.12)}
body.zem-one-b2 .footer-review-card{border-radius:14px}
body.zem-one-b2 .page-hero,
body.zem-one-b2 .detail-hero{min-height:610px}
body.zem-one-b2 .page-hero:after,
body.zem-one-b2 .detail-hero:after{background:linear-gradient(90deg,rgba(5,20,28,.94),rgba(5,20,28,.68) 52%,rgba(5,20,28,.16))}
body.zem-one-b2 .page-intro-band{background:#fff}
body.zem-one-b2 .all-service-card,
body.zem-one-b2 .zem-info-card,
body.zem-one-b2 .gallery-service-card{border-radius:var(--zem-b2-radius);overflow:hidden;box-shadow:0 16px 45px rgba(7,24,33,.09)}
@media(max-width:1050px){
 body.zem-one-b2 .desktop-nav{gap:18px}
 body.zem-one-b2 .nav-cta{padding-inline:18px}
 body.zem-one-b2 .shell{width:min(100% - 40px,1240px)}
}
@media(max-width:900px){
 body.zem-one-b2 .nav-wrap{height:82px}
 body.zem-one-b2 .brand img{width:72px;height:72px}
 body.zem-one-b2 .mobile-menu{background:rgba(250,248,243,.99);box-shadow:0 25px 60px rgba(7,24,33,.16)}
 body.zem-one-b2 .mobile-menu nav{padding-block:25px 34px}
 body.zem-one-b2 .mobile-menu a:not(.button){padding:15px 4px;border-bottom:1px solid var(--zem-b2-line);font-weight:750}
 body.zem-one-b2 .zem-cinematic-hero{height:740px}
 body.zem-one-b2 .featured-review{transform:none}
}
@media(max-width:600px){
 body.zem-one-b2 .shell{width:min(100% - 30px,1240px)}
 body.zem-one-b2 .topbar-inner{min-height:36px}
 body.zem-one-b2 .topbar-rating{display:none}
 body.zem-one-b2 .brand img{width:64px;height:64px}
 body.zem-one-b2 .zem-cinematic-hero{height:690px;min-height:690px}
 body.zem-one-b2 .zem-hero-copy{padding:70px 0 130px}
 body.zem-one-b2 .zem-hero-copy h1,body.zem-one-b2 .zem-hero-copy h2{font-size:clamp(46px,13.2vw,64px)}
 body.zem-one-b2 .zem-hero-copy .hero-lede{font-size:15px;line-height:1.7}
 body.zem-one-b2 .zem-hero-trust-pills{display:grid;grid-template-columns:1fr 1fr}
 body.zem-one-b2 .zem-hero-trust-pills span:last-child{grid-column:1/-1}
 body.zem-one-b2 .section{padding:88px 0}
 body.zem-one-b2 .button{width:100%;min-height:52px}
}

/* ZEM One v9.0.0 Authority Platform */
.zem-v9-authority{background:#f7f3e9}.zem-v9-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:48px;align-items:end;margin-bottom:38px}.zem-v9-heading h2{margin:8px 0 0}.zem-v9-heading>p{margin:0;color:#5f665f;line-height:1.8}.zem-v9-feature-grid,.zem-v9-category-grid,.zem-v9-resource-grid,.zem-v9-community-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.zem-v9-feature,.zem-v9-category-grid article,.zem-v9-resource-grid article,.zem-v9-community-grid article{background:#fff;border:1px solid rgba(22,67,50,.12);border-radius:24px;padding:30px;box-shadow:0 18px 48px rgba(25,55,42,.08)}.zem-v9-feature>span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f3e5b8;color:#173f32;font-weight:800}.zem-v9-feature h3,.zem-v9-category-grid h3,.zem-v9-resource-grid h3,.zem-v9-community-grid h3{margin:20px 0 10px}.zem-v9-feature p,.zem-v9-category-grid p,.zem-v9-resource-grid p,.zem-v9-community-grid p{color:#626a64;line-height:1.7}.zem-v9-latest{margin-top:44px}.zem-v9-latest-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.zem-v9-latest-title a{font-weight:700;color:#1f6048}.zem-v9-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.zem-v9-post-grid article{padding:24px;border-radius:18px;background:#173f32;color:#fff}.zem-v9-post-grid p{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#e1c675}.zem-v9-post-grid h4{font-size:1.1rem;line-height:1.45}.zem-v9-post-grid h4 a,.zem-v9-post-grid .text-link{color:#fff}.zem-v9-hero{background:linear-gradient(135deg,#123d30,#24624c)}.zem-v9-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.zem-v9-guides{background:#f8f7f2}.zem-v9-club-band,.zem-v9-seasonal{background:#153f32;color:#fff}.zem-v9-club-grid,.zem-v9-seasonal-grid,.zem-v9-club-page-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:56px;align-items:center}.zem-club-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.zem-club-form label{display:grid;gap:7px}.zem-club-form label span{font-weight:700;font-size:.88rem}.zem-club-form input[type=text],.zem-club-form input[type=email]{width:100%;border:1px solid rgba(255,255,255,.25);background:#fff;color:#173f32;border-radius:12px;padding:14px}.zem-club-consent{grid-column:1/-1;grid-template-columns:auto 1fr!important;align-items:start}.zem-club-consent input{margin-top:4px}.zem-club-consent span{font-weight:500!important;line-height:1.5}.zem-club-form button,.zem-club-privacy{grid-column:1/-1}.zem-club-privacy{font-size:.8rem;opacity:.78}.zem-club-privacy a{color:inherit;text-decoration:underline}.zem-club-message{padding:12px 16px;border-radius:10px;margin-bottom:14px}.zem-club-message.success{background:#daf1df;color:#164a2c}.zem-club-message.error{background:#ffe2df;color:#80251f}.zem-v9-resource-grid article>span{float:right;color:#b8943b;font-weight:800}.zem-v9-community-section{background:#f7f3e9}.zem-v9-community-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.zem-v9-season-list,.zem-v9-benefit-list{display:grid;gap:12px}.zem-v9-season-list article,.zem-v9-benefit-list article{display:grid;gap:4px;padding:18px 20px;border:1px solid rgba(255,255,255,.16);border-radius:14px}.zem-v9-season-list strong,.zem-v9-benefit-list strong{color:#e5c675}.zem-v9-club-card{background:#173f32;color:#fff;border-radius:26px;padding:34px;box-shadow:0 24px 60px rgba(23,63,50,.22)}.zem-v9-club-page-grid .zem-v9-benefit-list article{border-color:rgba(23,63,50,.14)}.zem-v9-club-page-grid .zem-v9-benefit-list strong{color:#173f32}.zem-v9-club-page-grid .zem-club-form{grid-template-columns:1fr}.zem-v9-club-page-grid .zem-club-consent,.zem-v9-club-page-grid .zem-club-form button,.zem-v9-club-page-grid .zem-club-privacy{grid-column:auto}
@media(max-width:980px){.zem-v9-heading,.zem-v9-club-grid,.zem-v9-seasonal-grid,.zem-v9-club-page-grid{grid-template-columns:1fr}.zem-v9-feature-grid,.zem-v9-category-grid,.zem-v9-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.zem-v9-community-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.zem-v9-feature-grid,.zem-v9-category-grid,.zem-v9-resource-grid,.zem-v9-community-grid,.zem-v9-post-grid,.zem-club-form{grid-template-columns:1fr}.zem-v9-heading{gap:18px}.zem-v9-feature,.zem-v9-category-grid article,.zem-v9-resource-grid article,.zem-v9-community-grid article{padding:24px}.zem-v9-latest-title{align-items:flex-start;flex-direction:column}.zem-club-consent,.zem-club-form button,.zem-club-privacy{grid-column:auto}}

/* ZEM One v9.0.1 production hardening */
.zem-club-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.zem-club-form label span small{font-weight:500;opacity:.72}.zem-club-unavailable{padding:18px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:rgba(255,255,255,.08);line-height:1.65}.zem-club-unavailable a{text-decoration:underline}.zem-v9-community-grid article{display:flex;flex-direction:column;align-items:flex-start}.zem-v9-community-grid article .text-link{margin-top:auto;padding-top:10px}.zem-v9-community-grid article .text-link+.text-link{margin-top:0;padding-top:8px}.zem-v9-page :focus-visible,.zem-club-form :focus-visible{outline:3px solid #e4bd62;outline-offset:3px}.zem-club-form input[type=text]:focus,.zem-club-form input[type=email]:focus{border-color:#e4bd62;box-shadow:0 0 0 3px rgba(228,189,98,.2)}
.zem-v9-club-cta h3{margin-top:0;font-size:1.45rem}.zem-v9-club-cta p{line-height:1.7;color:rgba(255,255,255,.78)}.zem-v9-club-cta .button{margin-top:10px}
.zem-club-action-card{padding:22px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2)}.zem-club-action-card h3{margin:0 0 8px}.zem-club-action-card p{line-height:1.65;color:rgba(255,255,255,.8)}.zem-club-action-card form{margin-top:16px}
