/* Balanced, item-aware layouts for every generated site. */
.site-section:not(.amazon-products-section){padding-block:clamp(64px,6.5vw,92px)}
.site-section:not(.amazon-products-section) .section-heading{max-width:760px;margin-bottom:30px}
.site-section:not(.amazon-products-section) .section-heading h2{font-size:clamp(32px,3.4vw,48px);line-height:1.02;margin-block:9px 12px}
.site-section:not(.amazon-products-section) .section-heading p{max-width:680px;margin-bottom:0}
.site-section:not(.amazon-products-section) .section-symbol{width:76px;height:76px;right:8px;top:0;border-radius:24px;opacity:.58}
.site-section:not(.amazon-products-section) .section-symbol svg{width:34px;height:34px}
.site-grid.items-1{grid-template-columns:minmax(0,1fr)}
.site-grid.items-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.site-grid.items-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.site-grid.items-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.mobile-nav-toggle,.mobile-contact-link{display:none}

.module-featured-categories .site-grid{gap:20px}
.module-featured-categories .category-card{min-height:310px;border-radius:18px}
.module-featured-categories .category-visual{height:112px;padding:16px 18px}
.module-featured-categories .category-visual>.card-icon{left:18px;bottom:15px;width:48px;height:48px;border-radius:14px}
.module-featured-categories .category-visual>.card-icon svg{width:22px;height:22px}
.module-featured-categories .category-visual>b{right:14px;bottom:4px;font-size:48px;opacity:.72}
.module-featured-categories .category-orbit{width:126px;height:126px;right:-42px;top:-54px;box-shadow:0 0 0 18px color-mix(in srgb,var(--primary) 4%,transparent),0 0 0 36px color-mix(in srgb,var(--primary) 2%,transparent)}
.module-featured-categories .category-card .card-copy{padding:20px}
.module-featured-categories .category-card h3{font-size:18px;margin-bottom:8px}
.module-featured-categories .category-card p{min-height:0;margin:0 0 18px}

.module-buying-guides .site-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.module-buying-guides .guide-card,.module-buying-guides .guide-card.card-0{grid-column:auto;grid-template-columns:1fr;gap:18px;min-height:292px;padding:24px;background:#ffffff0b;border-color:#ffffff20}
.module-buying-guides .guide-card.card-0{background:linear-gradient(145deg,#ffffff12,#ffffff08)}
.module-buying-guides .guide-top{flex-direction:row;align-items:center;justify-content:space-between}
.module-buying-guides .guide-top>span,.module-buying-guides .guide-card.card-0 .guide-top>span{font-size:42px;line-height:1}
.module-buying-guides .guide-card .card-copy{justify-content:flex-start}
.module-buying-guides .guide-card h3,.module-buying-guides .guide-card.card-0 h3{font-size:22px;line-height:1.15;max-width:none;margin:0 0 10px}
.module-buying-guides .guide-card p,.module-buying-guides .guide-card.card-0 p{font-size:13px;max-width:none;margin:0 0 14px}
.module-buying-guides .guide-card .card-copy a{margin-top:auto}

.module-faq .site-grid{grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:14px}
.module-faq .site-grid:not(.items-10){grid-template-columns:repeat(2,minmax(0,1fr))}
.module-faq .faq-item{border-radius:17px}
.module-faq .faq-item summary{grid-template-columns:42px minmax(0,1fr) 28px;gap:12px;padding:18px}
.module-faq .faq-icon{width:42px;height:42px;border-radius:13px}
.module-faq .faq-icon svg{width:20px;height:20px}
.module-faq .faq-item summary strong{font-size:15px}
.module-faq .faq-answer{padding:0 18px 20px}
.module-faq .faq-answer>span{display:none}
.module-faq .faq-answer p{margin:0 0 12px}

/* The closing call-to-action is a full-width website section, not a floating card. */
.site-cta{max-width:none;margin:0;padding:clamp(58px,6vw,82px) max(6%,calc((100% - 1240px)/2));border-radius:0;box-shadow:none;text-align:left;display:grid;grid-template-columns:64px minmax(0,1fr) auto;grid-template-rows:auto auto auto;column-gap:24px;align-items:center}
.site-cta .cta-pattern{right:5%;top:-190px}
.site-cta .cta-icon{grid-column:1;grid-row:1/4;margin:0;width:58px;height:58px}
.site-cta>small{grid-column:2;grid-row:1;margin:0 0 7px}
.site-cta>h2{grid-column:2;grid-row:2;max-width:820px;margin:0;font-size:clamp(28px,3.2vw,44px);line-height:1.08}
.site-cta>p{grid-column:2;grid-row:3;max-width:720px;margin:10px 0 0}
.site-cta>a{grid-column:3;grid-row:1/4;align-self:center;white-space:nowrap}

@media(max-width:1050px){
  .site-grid.items-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .module-buying-guides .site-grid,.module-faq .site-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
  html,body{max-width:100%;overflow-x:hidden}
  .site-header{height:64px;padding-inline:20px;gap:14px}
  .site-logo{min-width:0}
  .site-logo strong{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .header-cta{padding:10px 13px}
  .site-hero,.layout-2 .site-hero,.layout-3 .site-hero,.layout-4 .site-hero,.layout-5 .site-hero,.layout-6 .site-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:34px;min-height:0;padding:54px 24px 68px;text-align:left}
  .hero-copy,.layout-3 .hero-copy{width:100%;max-width:none;margin:0;padding:0;order:1}
  .hero-copy h1,.layout-5 .hero-copy h1,.layout-6 .hero-copy h1{font-size:clamp(40px,10vw,58px);line-height:1;max-width:680px;margin:18px 0}
  .hero-copy p{font-size:16px;line-height:1.6;margin:0}
  .hero-actions,.layout-3 .hero-actions{justify-content:flex-start;flex-wrap:wrap;gap:14px;margin-top:24px}
  .hero-proof,.layout-3 .hero-proof{justify-content:flex-start;margin-top:22px}
  .hero-visual,.layout-2 .hero-visual,.layout-3 .hero-visual,.layout-4 .hero-visual,.layout-5 .hero-visual,.layout-6 .hero-visual{order:2;width:100%;max-width:620px;min-height:380px;margin:0 auto;border-radius:24px;clip-path:none}
  .trust-strip,.layout-5 .trust-strip{width:calc(100% - 32px);margin:-28px 16px 0;transform:none;grid-template-columns:repeat(2,minmax(0,1fr))}
  .trust-strip>div{padding:17px;min-width:0}
  .site-section:not(.amazon-products-section){padding:62px 24px}
  .section-heading{padding-right:72px}
  .section-heading h2{font-size:clamp(30px,7vw,42px)!important}
  .site-grid.items-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .module-buying-guides .guide-card,.module-buying-guides .guide-card.card-0{grid-template-columns:1fr;min-height:260px}
  .amazon-products-section{padding:42px 24px!important}
  .amazon-products-shell{width:100%}
  .amazon-products-grid{grid-auto-columns:minmax(210px,46vw)}
  .amazon-product-card a{min-height:42px}
  .enquiry-section{padding:62px 24px}
  .enquiry-shell{gap:34px}
  .studio-enquiry-form{padding:28px;border-radius:22px}
  .site-cta{grid-template-columns:54px minmax(0,1fr);column-gap:18px}
  .site-cta .cta-icon{width:50px;height:50px}
  .site-cta>a{grid-column:2;grid-row:4;margin-top:20px;justify-self:start}
  footer{padding:28px 24px}
}
@media(max-width:560px){
  body:has(.domain-sale-bar){padding-top:148px}
  body:has(.domain-sale-bar) .site-header{top:148px}
  .domain-sale-bar{grid-template-columns:minmax(0,1fr) auto;padding:13px 16px;gap:10px 14px}
  .sale-bar-domain>span{font-size:8px}
  .sale-bar-domain strong{font-size:17px}
  .sale-bar-price{justify-self:end;text-align:right}
  .sale-bar-price small{font-size:8px}
  .sale-bar-price b{font-size:20px}
  .sale-bar-actions{grid-column:1/-1;width:100%}
  .sale-bar-actions a{min-height:42px;padding:10px 12px}
  .site-header{height:60px;padding-inline:16px}
  .site-logo i{width:32px;height:32px;border-radius:10px}
  .site-logo strong{font-size:15px}
  .site-hero,.layout-2 .site-hero,.layout-3 .site-hero,.layout-4 .site-hero,.layout-5 .site-hero,.layout-6 .site-hero{padding:42px 18px 56px;gap:28px}
  .hero-copy h1,.layout-5 .hero-copy h1,.layout-6 .hero-copy h1{font-size:clamp(36px,11vw,48px)}
  .hero-copy p{font-size:15px}
  .hero-actions{align-items:stretch;flex-direction:column;width:100%}
  .primary-action{justify-content:center;width:100%;min-height:50px}
  .text-action{padding:10px 2px;text-align:center}
  .hero-proof{display:grid;gap:10px}
  .hero-visual,.layout-2 .hero-visual,.layout-3 .hero-visual,.layout-4 .hero-visual,.layout-5 .hero-visual,.layout-6 .hero-visual{min-height:330px;aspect-ratio:auto;border-radius:20px}
  .hero-photo>img{border-radius:inherit}
  .image-caption{left:20px;right:20px;bottom:20px}
  .image-caption strong{font-size:21px}
  .trust-strip,.layout-5 .trust-strip{grid-template-columns:1fr;width:calc(100% - 24px);margin:-22px 12px 0}
  .trust-strip>div{grid-template-columns:38px minmax(0,1fr);padding:14px;border-right:0;border-bottom:1px solid #e5ecea!important}
  .trust-strip>div:last-child{border-bottom:0!important}
  .trust-strip>div>span{width:38px;height:38px}
  .site-grid.items-2,.site-grid.items-3,.site-grid.items-4,.module-buying-guides .site-grid,.module-faq .site-grid{grid-template-columns:1fr}
  .site-section:not(.amazon-products-section){padding:52px 18px}
  .site-section:not(.amazon-products-section) .section-heading{padding-right:0;margin-bottom:24px}
  .site-section:not(.amazon-products-section) .section-heading h2{font-size:32px!important}
  .site-section:not(.amazon-products-section) .section-heading p{font-size:14px;line-height:1.6}
  .site-section:not(.amazon-products-section) .section-symbol{display:none}
  .module-featured-categories .category-card,.module-buying-guides .guide-card,.module-buying-guides .guide-card.card-0{min-height:0}
  .module-featured-categories .category-card{border-radius:16px}
  .module-buying-guides .guide-card,.module-buying-guides .guide-card.card-0{padding:20px}
  .module-faq .faq-answer{padding:0 18px 20px}
  .amazon-products-section{padding:38px 18px!important}
  .amazon-products-intro h2{font-size:30px}
  .amazon-products-grid{grid-auto-columns:84vw;gap:12px}
  .amazon-product-card>img,.amazon-product-placeholder{height:180px}
  .amazon-commission-note{font-size:11px;line-height:1.45}
  .enquiry-section{padding:52px 18px}
  .enquiry-intro h2{font-size:38px}
  .enquiry-intro>p{font-size:15px}
  .studio-enquiry-form{padding:20px;border-radius:18px}
  .form-grid{gap:14px}
  .form-grid input,.form-grid textarea{font-size:16px}
  .send-code-button,.enquiry-submit{min-height:48px}
  .site-cta{display:block;padding:52px 22px;text-align:center}
  .site-cta .cta-icon{margin:0 auto 16px}
  .site-cta>small,.site-cta>h2,.site-cta>p{display:block;margin-left:auto;margin-right:auto}
  .site-cta>p{margin-top:12px}
  .site-cta>a{display:flex;width:100%;justify-content:center;margin-top:22px;min-height:50px}
  footer{padding:26px 18px;gap:14px}
  .affiliate-footer-disclosure{padding:14px;margin-top:2px}
}

/* Narrow-phone safeguards: no clipped controls, overlays or horizontal canvas. */
@media(max-width:620px){
  body:has(.domain-sale-bar){padding-top:116px}
  body:has(.domain-sale-bar) .site-header{position:relative;top:auto}
  .domain-sale-bar{grid-template-columns:minmax(0,1fr) auto;padding:12px 16px;gap:8px 12px}
  .sale-bar-assurance{display:none}
  .sale-bar-domain{min-width:0}
  .sale-bar-domain strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .sale-bar-price{min-width:64px;padding:0;border:0;text-align:right}
  .sale-bar-actions{grid-column:1/-1;display:block;width:100%}
  .sale-bar-actions .sale-secondary{display:none!important}
  .sale-bar-actions .sale-primary{display:flex;width:100%;min-height:42px;padding:9px 12px;justify-content:center;white-space:normal;text-align:center;font-size:10px;line-height:1.25;overflow:hidden}
  .site-header{position:relative;top:auto;width:100%;height:58px;padding:0 16px;overflow:visible;z-index:80}
  .site-header .site-logo{margin-right:auto}
  .site-header .header-cta{display:none!important}
  .mobile-nav-toggle{display:grid;width:42px;height:42px;padding:10px;border:1px solid #dce5e3;border-radius:12px;background:#fff;place-content:center;gap:4px;cursor:pointer}
  .mobile-nav-toggle span{display:block;width:20px;height:2px;border-radius:3px;background:var(--text);transition:transform .2s,opacity .2s}
  .site-header.nav-open .mobile-nav-toggle span:nth-child(1){transform:translateY(6px) rotate(45deg)}
  .site-header.nav-open .mobile-nav-toggle span:nth-child(2){opacity:0}
  .site-header.nav-open .mobile-nav-toggle span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
  .site-header nav{display:none;position:absolute;left:12px;right:12px;top:calc(100% + 8px);padding:10px;border:1px solid #dfe8e5;border-radius:16px;background:#fff;box-shadow:0 20px 50px rgba(14,35,40,.18);flex-direction:column;gap:3px}
  .site-header.nav-open nav{display:flex}
  .site-header nav a{display:flex;align-items:center;min-height:44px;padding:10px 12px;border-radius:10px;font-size:14px;color:var(--text)}
  .site-header nav a:hover{background:var(--secondary)}
  .site-header nav .mobile-contact-link{display:flex;margin-top:4px;background:var(--primary);color:#fff;justify-content:center}
  .site-hero,.site-hero>*{min-width:0;max-width:100%}
  .hero-copy h1{max-width:100%;overflow-wrap:anywhere;word-break:normal}
  .hero-copy p{max-width:100%;overflow-wrap:break-word}
  .hero-visual{max-width:100%;overflow:hidden}
  .visual-top,.visual-result,.compare-row{min-width:0}
  .visual-top strong,.visual-result strong,.compare-row strong{white-space:normal;overflow-wrap:anywhere}
  .compare-row{grid-template-columns:38px minmax(0,1fr)}
  .compare-row>b{display:none}
  .amazon-products-shell,.amazon-carousel,.amazon-products-grid{min-width:0;max-width:100%}
  .amazon-products-section{padding:38px 16px!important}
  .amazon-products-intro{padding:0;margin-bottom:4px}
  .amazon-products-intro h2{font-size:28px;line-height:1.08}
  .amazon-products-intro p{font-size:14px}
  .amazon-products-grid{display:grid;grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:visible;padding:0}
  .amazon-product-card{border-radius:12px;box-shadow:0 8px 22px rgba(20,35,50,.07)}
  .amazon-product-card>img,.amazon-product-placeholder{height:120px;padding:9px}
  .amazon-product-card>div{padding:10px;gap:6px}
  .amazon-product-card h3{font-size:11px;line-height:1.3;-webkit-line-clamp:2}
  .amazon-product-card b{font-size:14px}
  .amazon-rating{font-size:9px}
  .amazon-product-card a{min-height:40px;padding:8px 6px;font-size:9px}
  .amazon-scroll{display:none}
  .amazon-commission-note{margin-top:4px;padding:11px 12px}
  .enquiry-shell,.studio-enquiry-form,.form-grid,.verification-box,.code-controls{min-width:0;max-width:100%}
  .form-grid input,.form-grid textarea,.code-controls input{min-width:0;max-width:100%}
  footer,.affiliate-footer-disclosure{max-width:100%;overflow-wrap:anywhere}
}

/* Compact, sequential email verification flow. */
.verification-box{padding:0!important;display:block!important;overflow:hidden;background:#fff!important;border-color:color-mix(in srgb,var(--primary) 18%,#d9e7e4)!important;border-radius:14px!important}
.verification-request{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;background:color-mix(in srgb,var(--secondary) 52%,#fff)}
.verification-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:color-mix(in srgb,var(--primary) 12%,#fff);color:var(--primary)}
.verification-icon svg{width:20px;height:20px}
.verification-copy{min-width:0}
.verification-copy>b{display:block;font:800 15px/1.2 var(--display)}
.verification-copy p{margin:3px 0 0!important;font-size:11px!important;line-height:1.4;overflow-wrap:anywhere}
.verification-email{color:var(--text);font-weight:700}
.send-code-button{min-height:42px!important;padding:10px 15px!important;white-space:nowrap}
.code-controls{display:grid!important;grid-template-columns:30px minmax(110px,.55fr) minmax(130px,.45fr);align-items:center;gap:11px;padding:11px 16px;border-top:1px solid #e4ecea;background:#fbfcfc;opacity:.62;transition:opacity .2s,background .2s}
.code-controls[aria-disabled="false"]{opacity:1;background:#fff}
.code-step{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#edf2f1;color:var(--muted);font-size:11px;font-weight:800}
.code-sent .code-step{background:color-mix(in srgb,var(--primary) 12%,#fff);color:var(--primary)}
.code-controls label{display:grid!important;gap:1px!important;min-width:0}
.code-controls label b{font:750 13px/1.2 var(--display)}
.code-controls label small{color:var(--muted);font-size:10px;font-weight:500;line-height:1.25}
.code-controls input{width:100%!important;min-height:40px;padding:9px 12px!important;background:#fff!important}
.code-controls input:disabled{background:#f1f4f3!important;color:#7c8987;cursor:not-allowed}
.form-status{display:block;min-height:0!important;padding:0 16px;font-size:11px!important;line-height:1.4}
.form-status:not(:empty){padding-block:9px;border-top:1px solid #e8eeed}
.enquiry-submit{min-height:48px!important}
.enquiry-submit:disabled{opacity:.42;cursor:not-allowed}
@media(max-width:700px){
  .verification-request{grid-template-columns:38px minmax(0,1fr);padding:13px}
  .verification-request .send-code-button{grid-column:1/-1;width:100%}
  .code-controls{grid-template-columns:28px minmax(0,1fr);padding:11px 13px}
  .code-controls input{grid-column:1/-1}
}

/* Public footer: compact, legible and consistent across desktop and mobile. */
.site-footer>span:nth-child(2){font-size:12px!important}
.site-footer>span:nth-child(2)::after{content:none!important;display:none!important}
@media(min-width:821px){
  .site-footer{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;padding:28px max(5vw,calc((100% - 1340px)/2));gap:8px 28px;border-top:4px solid color-mix(in srgb,var(--primary) 78%,#fff);background:linear-gradient(132deg,#0d1d2a,color-mix(in srgb,var(--primary-dark) 68%,#102b34));color:#d5e2e1}
  .site-footer .footer-logo{grid-column:1;grid-row:1;margin:0;width:max-content;color:#fff}
  .site-footer .footer-logo strong{color:#fff;font-size:18px}
  .site-footer>span:nth-child(2){grid-column:1;grid-row:2;color:#b8c9c7;font-size:12px!important;font-weight:600;letter-spacing:.01em}
  .site-footer>.protected{grid-column:2;grid-row:1/3;align-self:center;justify-self:end;padding:9px 12px;border:1px solid #ffffff20;border-radius:10px;background:#ffffff0c;color:#dbe8e6;font-weight:600}
  .site-footer>.protected svg{color:#91ead8}
  .site-footer .affiliate-footer-disclosure{grid-column:1/-1;display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;margin:14px 0 0;padding:14px 16px;border:1px solid #ffffff18;border-radius:12px;background:#ffffff0b;color:#c7d5d4;box-shadow:none}
  .site-footer .affiliate-footer-disclosure>span{width:32px;height:32px;border-color:#8fdccc;color:#8fdccc}
  .site-footer .affiliate-footer-disclosure p{font-size:10px;line-height:1.55}
  .site-footer .affiliate-footer-disclosure strong{color:#fff}
}
@media(max-width:360px){.amazon-products-grid{grid-template-columns:1fr}.amazon-product-card>img,.amazon-product-placeholder{height:160px}}

/* Final phone-width guardrail: every generated layout must stay inside the viewport. */
@media(max-width:620px){
  html,body,body>main,.site-header,.domain-sale-bar,.site-hero,.site-section,.enquiry-section,body>footer{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important}
  .site-header{display:flex!important;padding-inline:16px!important}
  .site-header .site-logo{max-width:calc(100% - 58px)!important;flex:0 1 auto!important}
  .site-header .site-logo strong{max-width:230px!important}
  .mobile-nav-toggle{display:grid!important;flex:0 0 42px!important;margin-left:auto!important;visibility:visible!important;opacity:1!important}
  .site-header nav{width:auto!important;max-width:none!important;overflow:visible!important}
  .site-hero,.layout-2 .site-hero,.layout-3 .site-hero,.layout-4 .site-hero,.layout-5 .site-hero,.layout-6 .site-hero{display:grid!important;grid-template-columns:minmax(0,1fr)!important;padding:42px 18px 56px!important;gap:28px!important}
  .hero-copy,.layout-2 .hero-copy,.layout-3 .hero-copy,.layout-4 .hero-copy,.layout-5 .hero-copy,.layout-6 .hero-copy{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important}
  .hero-copy h1,.layout-3 .hero-copy h1,.layout-4 .hero-copy h1,.layout-5 .hero-copy h1,.layout-6 .hero-copy h1{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:16px 0!important;font-size:clamp(34px,10.5vw,44px)!important;line-height:1.02!important;letter-spacing:-.05em!important;white-space:normal!important;overflow-wrap:break-word!important;word-break:normal!important}
  .hero-copy p{width:100%!important;max-width:100%!important;white-space:normal!important}
  .hero-actions,.hero-proof{width:100%!important;max-width:100%!important}
  .hero-visual,.layout-2 .hero-visual,.layout-3 .hero-visual,.layout-4 .hero-visual,.layout-5 .hero-visual,.layout-6 .hero-visual{width:100%!important;max-width:100%!important;min-width:0!important;margin-inline:0!important;padding:18px!important}
  .compare-panel,.visual-result{width:100%!important;max-width:100%!important;min-width:0!important}
}
