/* Shared layout for review pages. Brand colors come from :root variables set inline in each page. */
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/poppins-400-latin.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/poppins-700-latin.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:400 800;font-display:swap;src:url(fonts/montserrat-latin.woff2) format("woff2")}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--brand-bg);color:var(--brand-text);font-family:"Poppins",Arial,Helvetica,sans-serif;font-size:21px;line-height:33px;overflow-x:hidden}
img{max-width:100%;height:auto;display:block;margin:0 auto}
.shot img{border-radius:10px;box-shadow:0 0 10px 0 rgba(0,0,0,.5)}
a{color:inherit}
[hidden]{display:none!important}

.hero{background:var(--brand-primary);padding:20px;text-align:center}
.hero-title{margin:0 0 20px;font-family:"Montserrat",Arial,sans-serif;font-size:44px;font-weight:800;line-height:1.1}
.hero-title a,.hero-domain a,.band a{color:#fff;text-decoration:none}
.hero-domain{margin:20px 0 0;font-family:"Montserrat",Arial,sans-serif;font-size:35px;font-weight:400;line-height:1.2}

.btn{display:inline-block;background:var(--brand-cta);color:var(--brand-cta-text);font-family:"Poppins",Arial,sans-serif;font-size:25px;font-weight:700;line-height:1.2;text-align:center;text-decoration:none;padding:20px 120px;border-radius:10px;box-shadow:0 0 16px -2px rgba(0,0,0,.5);transition:background-color .3s,transform .3s}
.hero .btn:hover,.cta .btn:hover{transform:scale(1.1)}
.btn:hover,.btn:focus-visible{background:var(--brand-cta-hover)}
.cta{text-align:center;margin:20px 0}

.shot{margin:20px auto;text-align:center}
.shot a{display:block}
.shot-hero{max-width:1129px;padding:10px 0}
.shot-hero img{width:43%}
.shot-2 img{width:43%}
.shot-3 img{width:70%}

.content-wrap{background:#F3F3F3;padding:30px 0 90px}
.content{max-width:1129px;margin:0 auto;background:var(--brand-bg);padding:0 0 10px}
.content section{overflow:hidden}
.band{margin:0 0 20px;background:var(--brand-primary);color:#fff;font-size:45px;font-weight:700;line-height:60px;text-align:center;text-shadow:0 0 10px rgba(0,0,0,.3)}
.band a{display:block}
.copy{padding:0 30px}
.copy{margin-bottom:20px}
.copy p{margin:0 0 .9em}
.copy ul{margin:0 0 .9em;padding-left:40px}
.copy li p{margin-bottom:.4em}

.official-notice{text-align:center;font-weight:700;color:#D10000}

.reviews{list-style:none;margin:0 0 20px;padding:10px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.review-card{background:var(--brand-primary);color:var(--brand-on-primary-small,#fff);font-size:21px;line-height:33px}
.review-head{display:flex;align-items:center;gap:15px;padding:20px;color:inherit;text-decoration:none}
.review-head img{width:70px;height:70px;border-radius:50%;object-fit:cover;margin:0;flex:none}
.review-head cite{font-style:normal;display:flex;flex-direction:column}
.review-avatar{flex:none;width:70px;height:70px;border-radius:50%;background:#fff;color:var(--brand-primary);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:24px}
.review-name{font-size:21px;line-height:1.3}
.review-title{font-size:14px;line-height:1.4}
.review-text{margin:0;padding:20px;border-top:1px solid rgba(255,255,255,.35)}

.site-footer{background:#fff;padding:40px 10px 10px}
.disclaimer{max-width:1120px;margin:0 auto 20px;padding:0 60px;color:#444;font-family:"Montserrat",Arial,sans-serif;font-size:9px;font-weight:400;line-height:22px;text-align:justify}
.legal{list-style:none;max-width:912px;margin:0 auto 20px;padding:10px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;color:#000;font-size:15px;font-weight:700;line-height:15px;text-align:center}
.copyright{max-width:1120px;margin:0 auto;padding:0 80px 30px;color:#000;font-family:"Montserrat",Arial,sans-serif;font-size:12px;font-weight:700;line-height:22px;text-align:center}

/* Organic version only: sticky CTA bar (mobile) and exit pop-up (desktop) */
.sticky-cta{display:none}
.exit-pop{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.65);display:flex;align-items:center;justify-content:center;padding:20px}
.exit-box{position:relative;background:#fff;max-width:520px;width:100%;padding:36px 28px 28px;border-radius:12px;text-align:center}
.exit-box img{width:220px;margin-bottom:12px}
.exit-box p{margin:0 0 20px;font-size:19px}
.exit-box .btn{padding:16px 28px;font-size:20px}
.exit-close{position:absolute;top:6px;right:8px;width:44px;height:44px;border:0;background:none;font-size:32px;line-height:1;cursor:pointer;color:#000}

@media (max-width:768px){
  body{font-size:19px}
  .hero{padding:20px 0}
  .hero-title{font-size:34px}
  .hero-domain{font-size:20px}
  .hero-domain a{color:var(--brand-on-primary-small,#fff)}
  .btn{font-size:22px;padding:15px 30px;margin:0 30px}
  .shot-hero img{width:86%}
  .shot-2 img{width:86%}
  .shot-3 img{width:78%}
  body{line-height:1.4}
  .content-wrap{padding:0 0 20px}
  .band{font-size:25px;line-height:1.3;padding:10px 20px}
  .copy{text-align:center}
  .copy ul{padding-left:0;list-style-position:inside}
  .reviews{grid-template-columns:1fr}
  .review-card{font-size:19px;line-height:1.4}
  .review-name{font-size:19px}
  .review-title{font-size:16px}
  .site-footer{padding:30px 10px}
  .disclaimer{padding:0 20px}
  .legal{font-size:12px}
  .copyright{font-size:9px;padding:0 20px}
  .has-sticky{padding-bottom:76px}
  .sticky-cta{display:block;position:fixed;left:0;right:0;bottom:0;z-index:900;background:#fff;padding:8px 12px;box-shadow:0 -2px 10px rgba(0,0,0,.2);text-align:center}
  .sticky-cta .btn{display:block;margin:0;padding:12px 10px;font-size:17px}
  .exit-pop{display:none}
}
