:root{
  --ct-navy:#0b2b47;
  --ct-navy-2:#123e63;
  --ct-deep:#071c2e;
  --ct-blue:#17659a;
  --ct-red:#e2272f;
  --ct-red-dark:#bd1720;
  --ct-bg:#f5f7f8;
  --ct-soft:#eaf1f5;
  --ct-text:#17212b;
  --ct-muted:#647482;
  --ct-line:#dce5ea;
  --ct-white:#fff;
  --ct-radius:24px;
  --ct-radius-sm:16px;
  --ct-shadow:0 22px 60px rgba(10,42,68,.14);
  --ct-shadow-strong:0 30px 80px rgba(8,36,60,.20);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ct-text);background:#fff}
body,button,input,select,textarea{font-family:Inter,system-ui,sans-serif}
a{transition:color .2s ease,background .2s ease,transform .2s ease,box-shadow .2s ease}
.entry-content{margin:0!important}
.ast-container,.site-content .ast-container{max-width:none!important;padding:0!important}
.ast-separate-container .ast-article-single,.ast-separate-container .ast-article-post{padding:0!important}
.site-content{overflow:hidden}
.ct-shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.ct-section{padding:100px 0;margin:0!important}
.ct-kicker{margin:0 0 16px!important;font-size:12px!important;font-weight:800!important;letter-spacing:.14em;text-transform:uppercase;color:var(--ct-red)!important}
.ct-kicker-light{color:#ff7a80!important}
.ct-h2,.ct-pagehero h1,.ct-support h2,.ct-promo h2,.ct-final-cta h2{font-family:Manrope,Inter,sans-serif;font-weight:800;letter-spacing:-.04em;line-height:1.04;color:var(--ct-navy);margin:0}
.ct-h2{font-size:clamp(36px,4vw,58px);max-width:860px}
.ct-text-link{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--ct-navy);text-decoration:none!important}
.ct-text-link:hover{color:var(--ct-red);transform:translateX(3px)}
.ct-buttons{gap:14px!important;margin-top:30px!important}
.ct-buttons .wp-block-button__link{font-size:14px!important;line-height:1!important;font-weight:800!important;border-radius:10px!important;padding:16px 22px!important;border:1px solid transparent!important;box-shadow:none!important}
.ct-btn-primary .wp-block-button__link{background:var(--ct-red)!important;color:#fff!important}
.ct-btn-primary .wp-block-button__link:hover{background:var(--ct-red-dark)!important;transform:translateY(-2px);box-shadow:0 14px 28px rgba(226,39,47,.23)!important}
.ct-btn-outline .wp-block-button__link{background:#fff!important;border-color:#c7d3da!important;color:var(--ct-navy)!important}
.ct-btn-outline .wp-block-button__link:hover{border-color:var(--ct-navy)!important;transform:translateY(-2px)}

/* Astra header */
.ct-topbar{background:var(--ct-deep);color:#dbe7ef;font-size:12px;letter-spacing:.02em}
.ct-topbar .ct-shell{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.ct-topbar-links{display:flex;gap:22px;align-items:center}
.ct-topbar a{color:#fff;text-decoration:none}
.ct-topbar a:hover{color:#ff7a80}
.site-header{position:relative;z-index:60}
.ast-primary-header-bar{background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(10,42,68,.08)!important;box-shadow:0 8px 28px rgba(9,38,62,.06);backdrop-filter:blur(12px)}
.ast-builder-menu-1 .menu-item>.menu-link,.main-header-menu>.menu-item>.menu-link{font-weight:700!important;color:var(--ct-navy)!important;font-size:14px!important}
.main-header-menu>.menu-item>.menu-link:hover,.main-header-menu>.current-menu-item>.menu-link{color:var(--ct-red)!important}
.main-header-menu .menu-cta>a{background:var(--ct-red)!important;color:#fff!important;border-radius:9px!important;padding:0 17px!important;margin-left:10px!important;height:42px!important;line-height:42px!important}
.main-header-menu .menu-cta>a:hover{background:var(--ct-red-dark)!important;color:#fff!important}
.ast-site-identity{padding:14px 0!important}
.ast-site-title-wrap .site-title{font-family:Manrope,Inter,sans-serif;font-weight:800!important;letter-spacing:-.03em}

/* Hero */
.ct-home-hero{background:linear-gradient(120deg,#f8fafb 0%,#eef5f8 58%,#e4eef3 100%);position:relative;overflow:hidden;padding:86px 0 94px!important}
.ct-home-hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:rgba(226,39,47,.08);filter:blur(2px);right:-240px;top:-260px}
.ct-home-hero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(23,101,154,.08);left:-240px;bottom:-280px}
.ct-hero-grid{gap:64px!important;margin:0!important;position:relative;z-index:2}
.ct-hero-copy{padding:10px 0}
.ct-hero-title{font-family:Manrope,Inter,sans-serif!important;font-size:clamp(52px,6vw,84px)!important;line-height:.95!important;letter-spacing:-.055em!important;color:var(--ct-navy)!important;margin:0!important;max-width:690px}
.ct-hero-lead{font-size:18px!important;line-height:1.75!important;color:#506879!important;max-width:650px;margin:28px 0 0!important}
.ct-hero-mini{display:flex;gap:22px;flex-wrap:wrap;margin-top:30px;color:#526b7d;font-size:13px;font-weight:700}
.ct-hero-media{position:relative}
.ct-hero-image-wrap{position:relative;padding:24px 8px 32px 24px}
.ct-hero-image{margin:0!important;border-radius:26px!important;overflow:hidden;box-shadow:var(--ct-shadow-strong);transform:perspective(1200px) rotateY(-3deg) rotateX(1deg)}
.ct-hero-image img{width:100%;height:535px;object-fit:cover;display:block}
.ct-sale-chip{position:absolute;z-index:3;top:0;left:0;background:var(--ct-red);color:#fff;font-weight:800;font-size:12px;letter-spacing:.1em;padding:10px 16px;border-radius:10px;box-shadow:0 12px 28px rgba(226,39,47,.22)}
.ct-floating-card{position:absolute;z-index:4;right:-8px;bottom:0;background:#fff;border:1px solid rgba(10,42,68,.08);border-radius:16px;padding:16px 20px;box-shadow:var(--ct-shadow);display:flex;flex-direction:column;min-width:190px}
.ct-floating-card strong{font-family:Manrope,Inter,sans-serif;color:var(--ct-navy);font-size:24px}
.ct-floating-card span{font-size:12px;color:var(--ct-muted);margin-top:2px}

/* Benefits */
.ct-benefits{background:#fff;border-bottom:1px solid var(--ct-line);box-shadow:0 10px 24px rgba(10,42,68,.035)}
.ct-benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.ct-benefit-grid>div{padding:26px 28px;border-right:1px solid var(--ct-line);position:relative}
.ct-benefit-grid>div:first-child{padding-left:0}.ct-benefit-grid>div:last-child{border-right:0;padding-right:0}
.ct-benefit-grid b{display:block;color:var(--ct-navy);font-size:13px;margin-bottom:5px}.ct-benefit-grid span{display:block;color:var(--ct-muted);font-size:12px}

/* Solutions */
.ct-solutions{background:#fff}
.ct-pills{display:flex;gap:10px;flex-wrap:wrap;margin:34px 0 42px}
.ct-pills a{border:1px solid #ced9df;border-radius:999px;padding:9px 15px;color:var(--ct-navy);font-size:12px;font-weight:800;text-decoration:none;background:#fff}
.ct-pills a:first-child,.ct-pills a:hover{background:var(--ct-navy);color:#fff;border-color:var(--ct-navy)}
.ct-feature-row{gap:0!important;margin:0 0 36px!important;border:1px solid var(--ct-line);border-radius:var(--ct-radius);overflow:hidden;background:var(--ct-bg);box-shadow:0 12px 34px rgba(9,38,62,.07)}
.ct-card-image{margin:0!important;height:100%}.ct-card-image img{width:100%;height:100%;min-height:470px;object-fit:cover;display:block}
.ct-feature-copy{padding:46px 48px!important;align-self:center}
.ct-label,.ct-red-tag{display:inline-block;background:var(--ct-red);color:#fff;border-radius:6px;padding:7px 10px;font-size:11px;letter-spacing:.08em;font-weight:800;text-transform:uppercase}
.ct-feature-copy h3{font:800 36px/1.08 Manrope,Inter,sans-serif;color:var(--ct-navy);margin:18px 0 14px}
.ct-feature-copy p,.ct-feature-copy li{font-size:15px;line-height:1.75;color:#5d6f7b}.ct-feature-copy ul{padding-left:20px;margin:20px 0 24px}
.ct-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}
.ct-category-card{display:block;text-decoration:none!important;color:inherit!important;border-radius:18px;overflow:hidden;background:#fff;border:1px solid var(--ct-line);box-shadow:0 8px 26px rgba(10,42,68,.06);transition:.32s ease}
.ct-category-card:hover{transform:translateY(-6px);box-shadow:var(--ct-shadow)}
.ct-category-image{margin:0!important;overflow:hidden}.ct-category-image img{width:100%;height:205px;object-fit:cover;transition:transform .5s ease}.ct-category-card:hover img{transform:scale(1.035)}
.ct-category-content{padding:22px}.ct-category-content h3{font:800 20px Manrope;color:var(--ct-navy);margin:0 0 7px}.ct-category-content p{font-size:13px;color:var(--ct-muted);min-height:42px;margin:0 0 14px}.ct-category-content span{font-size:13px;font-weight:800;color:var(--ct-red)}

/* Promo */
.ct-promo-section{background:#f7f8f8;padding-top:84px!important;padding-bottom:84px!important}
.ct-promo{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;align-items:center;background:#fff;border:1px solid var(--ct-line);border-radius:28px;overflow:hidden;box-shadow:var(--ct-shadow)}
.ct-promo>div:first-child{padding:50px 0 50px 50px}
.ct-promo h2{font-size:clamp(34px,3.7vw,52px);margin:18px 0 18px;color:var(--ct-navy)}
.ct-promo p{font-size:16px;line-height:1.75;color:var(--ct-muted);max-width:570px}
.ct-promo-img{margin:0!important}.ct-promo-img img{width:100%;height:410px;object-fit:cover;display:block}

/* Brands */
.ct-brands-section{background:#fff;padding-top:80px!important;padding-bottom:80px!important}
.ct-brand-row{display:flex;gap:10px;flex-wrap:wrap;margin:34px 0 28px}
.ct-brand-row span{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:10px 20px;background:#f7f9fa;border:1px solid var(--ct-line);border-radius:12px;color:#38566b;font:800 14px Manrope;letter-spacing:-.02em}

/* Support */
.ct-support{background:linear-gradient(135deg,var(--ct-deep),#0e3d60);color:#fff;position:relative;overflow:hidden}
.ct-support:after{content:"";position:absolute;width:460px;height:460px;border-radius:50%;border:1px solid rgba(255,255,255,.08);right:-180px;bottom:-280px;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.015)}
.ct-support .wp-block-columns{gap:70px!important;margin:0!important;position:relative;z-index:2}
.ct-support h2{font-size:clamp(38px,4.4vw,62px);color:#fff;max-width:700px;margin-bottom:22px}
.ct-support p{font-size:17px;line-height:1.8;color:#c9dae5;max-width:650px}
.ct-support-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;margin:28px 0 4px}
.ct-support-list span{font-size:13px;font-weight:700;color:#e7f0f5;padding-left:22px;position:relative}.ct-support-list span:before{content:"✓";position:absolute;left:0;color:#ff7a80}
.ct-support-image{margin:0!important;border-radius:24px;overflow:hidden;box-shadow:0 28px 70px rgba(0,0,0,.28);transform:rotate(1.2deg)}.ct-support-image img{height:470px;width:100%;object-fit:cover}

/* Company */
.ct-company{background:#eef4f6}
.ct-company .wp-block-columns{gap:72px!important;margin:0!important}
.ct-company-image{margin:0!important;border-radius:24px;overflow:hidden;box-shadow:var(--ct-shadow)}.ct-company-image img{width:100%;height:500px;object-fit:cover}
.ct-company-copy>p:not(.ct-kicker){font-size:16px;line-height:1.82;color:#5d6f7b;margin-top:24px}
.ct-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px 0 28px}
.ct-stats>div{background:#fff;border:1px solid var(--ct-line);border-radius:14px;padding:20px 16px}.ct-stats b{display:block;font:800 25px Manrope;color:var(--ct-navy)}.ct-stats span{display:block;color:var(--ct-muted);font-size:11px;margin-top:4px}

/* Guides */
.ct-guides{background:#fff}
.ct-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:38px}
.ct-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ct-guide-grid article{border:1px solid var(--ct-line);border-radius:18px;overflow:hidden;background:#fff;transition:.3s ease}.ct-guide-grid article:hover{transform:translateY(-5px);box-shadow:var(--ct-shadow)}
.ct-guide-image{margin:0!important;overflow:hidden}.ct-guide-image img{height:220px;width:100%;object-fit:cover}
.ct-guide-grid article>span,.ct-guide-grid article>h3,.ct-guide-grid article>a{margin-left:22px;margin-right:22px}.ct-guide-grid article>span{display:block;font-size:11px;font-weight:800;color:var(--ct-red);text-transform:uppercase;letter-spacing:.08em;margin-top:20px}.ct-guide-grid h3{font:750 20px/1.35 Manrope;color:var(--ct-navy);margin-top:8px;margin-bottom:20px;min-height:82px}.ct-guide-grid article>a{display:inline-block;margin-bottom:22px;color:var(--ct-navy);font-size:13px;font-weight:800;text-decoration:none}.ct-guide-grid article>a:hover{color:var(--ct-red)}

/* Final CTA */
.ct-final-cta{background:var(--ct-red);color:#fff;padding:40px 0;margin:0!important}
.ct-final-cta .ct-shell{display:flex;align-items:center;justify-content:space-between;gap:30px}.ct-final-cta p{margin:0 0 3px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ffd6d8}.ct-final-cta h2{font-size:clamp(30px,3vw,44px);color:#fff;margin:0}.ct-final-cta .ct-buttons{margin:0!important}.ct-final-cta .ct-btn-outline .wp-block-button__link{background:#fff!important;border-color:#fff!important;color:var(--ct-red)!important}

/* Internal pages */
.ct-pagehero{background:linear-gradient(125deg,var(--ct-deep),#12486f);padding:110px 0 92px!important;color:#fff;position:relative;overflow:hidden}
.ct-pagehero:after{content:"";position:absolute;width:400px;height:400px;border-radius:50%;background:rgba(226,39,47,.11);right:-170px;top:-210px}
.ct-pagehero .ct-shell{position:relative;z-index:2}.ct-pagehero h1{font-size:clamp(48px,6vw,78px);color:#fff;max-width:880px}.ct-page-lead{font-size:19px;line-height:1.75;color:#d4e2eb;max-width:790px;margin:25px 0 0}
.ct-inner{background:#fff}
.ct-inner-intro{gap:70px!important;margin:0 0 70px!important}.ct-inner h2{font:800 clamp(32px,3.5vw,48px)/1.08 Manrope;color:var(--ct-navy);margin:0 0 20px}.ct-inner p{font-size:16px;line-height:1.85;color:#596d7b}.ct-inner-image{margin:0!important;border-radius:22px;overflow:hidden;box-shadow:var(--ct-shadow)}.ct-inner-image img{height:420px;width:100%;object-fit:cover}
.ct-copy-block{max-width:920px;padding:42px 0;border-top:1px solid var(--ct-line)}.ct-copy-block+ .ct-copy-block{margin-top:8px}
.ct-inline-cta{margin-top:60px;background:#f3f6f7;border:1px solid var(--ct-line);border-radius:24px;padding:40px 42px;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}.ct-inline-cta h2{font-size:34px;margin:14px 0 10px}.ct-inline-cta p{margin:0;max-width:720px}.ct-inline-cta .ct-buttons{margin:0!important}
.ct-product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.ct-product-card{display:grid;grid-template-columns:42% 58%;background:#fff;border:1px solid var(--ct-line);border-radius:20px;overflow:hidden;text-decoration:none!important;color:inherit!important;box-shadow:0 9px 28px rgba(9,38,62,.055);transition:.3s ease}.ct-product-card:hover{transform:translateY(-5px);box-shadow:var(--ct-shadow)}.ct-product-image{margin:0!important;height:100%}.ct-product-image img{width:100%;height:100%;min-height:280px;object-fit:cover}.ct-product-card>div:last-child{padding:28px}.ct-product-card h2{font:800 25px Manrope;color:var(--ct-navy);margin:0 0 10px}.ct-product-card p{font-size:14px;line-height:1.7;color:var(--ct-muted)}.ct-product-card span{font-size:13px;font-weight:800;color:var(--ct-red)}
.ct-contact-box{padding-left:30px!important}.ct-contact-box h2{font:800 38px Manrope;color:var(--ct-navy);margin:18px 0 25px}.ct-contact-box p{font-size:15px;line-height:1.7;margin-bottom:18px}.ct-contact-box a{color:var(--ct-navy);font-weight:800}.ct-map-placeholder{margin-top:60px;min-height:260px;border-radius:24px;border:1px solid var(--ct-line);background:linear-gradient(135deg,#edf2f4,#dfe9ee);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.ct-map-placeholder span{font-size:11px;color:var(--ct-red);font-weight:800;letter-spacing:.12em}.ct-map-placeholder strong{font:800 28px Manrope;color:var(--ct-navy);margin:8px 0}.ct-map-placeholder p{color:var(--ct-muted);font-size:13px}
.ct-legal{max-width:920px;margin:90px auto;padding:0 24px}.ct-legal h1{font:800 54px Manrope;color:var(--ct-navy)}.ct-legal p{font-size:17px;line-height:1.8;color:var(--ct-muted)}

/* Footer */
.site-primary-footer-wrap,.site-above-footer-wrap,.site-below-footer-wrap{display:none!important}
.ct-custom-footer{background:var(--ct-deep);color:#d8e4eb;padding:70px 0 24px}
.ct-footer-grid{display:grid;grid-template-columns:1.5fr .7fr .9fr .7fr;gap:55px}.ct-footer-grid h3{font:800 14px Manrope;color:#fff;margin:0 0 18px}.ct-footer-grid a,.ct-footer-grid span{display:block;color:#bfcfd9;text-decoration:none;font-size:13px;line-height:1.65;margin:0 0 8px}.ct-footer-grid a:hover{color:#fff}.ct-footer-brand p{font-size:13px;line-height:1.75;color:#aec1cd;max-width:340px;margin-top:20px}.ct-wordmark{display:flex;align-items:center;gap:12px}.ct-mark{width:48px;height:48px;border-radius:12px;background:linear-gradient(145deg,var(--ct-red),#ff6f75);display:grid!important;place-items:center;color:#fff!important;font:800 18px Manrope;margin:0!important}.ct-wordmark strong{display:block;font:800 16px Manrope;color:#fff}.ct-wordmark small{display:block;color:#8fa8b7;margin-top:2px}.ct-footer-bottom{display:flex;justify-content:space-between;gap:30px;margin-top:52px;padding-top:20px;border-top:1px solid rgba(255,255,255,.09);font-size:11px;color:#8fa6b5}.ct-footer-bottom a{color:#c8d8e1;text-decoration:none}

/* Motion */
/* v0.9.9: reveal animation removed. Content must never depend on JavaScript to become visible. */
.ct-section .ct-shell{opacity:1!important;transform:none!important}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.js .ct-section .ct-shell{opacity:1!important;transform:none!important}}

/* Tablet */
@media(max-width:980px){
  .ct-section{padding:76px 0}
  .ct-hero-grid,.ct-support .wp-block-columns,.ct-company .wp-block-columns,.ct-inner-intro{gap:45px!important}
  .ct-hero-title{font-size:clamp(46px,7vw,68px)!important}
  .ct-hero-image img{height:440px}
  .ct-benefit-grid{grid-template-columns:1fr 1fr}.ct-benefit-grid>div:nth-child(2){border-right:0}.ct-benefit-grid>div:nth-child(-n+2){border-bottom:1px solid var(--ct-line)}
  .ct-category-grid{grid-template-columns:1fr 1fr}.ct-promo{grid-template-columns:1fr}.ct-promo>div:first-child{padding:42px 42px 0}.ct-promo-img img{height:330px}
  .ct-brand-row span{flex:1 1 22%}
  .ct-product-grid{grid-template-columns:1fr}
  .ct-footer-grid{grid-template-columns:1.3fr 1fr 1fr}.ct-footer-grid>div:last-child{grid-column:2/4}
}

/* Mobile */
@media(max-width:767px){
  .ct-shell{width:min(100% - 30px,1180px)}
  .ct-section{padding:54px 0}
  .ct-topbar .ct-shell{justify-content:center}.ct-topbar .ct-shell>div:first-child{display:none}.ct-topbar-links{gap:14px;font-size:11px}
  .ct-home-hero{padding:52px 0 60px!important}
  .ct-hero-grid{gap:36px!important}.ct-hero-title{font-size:46px!important}.ct-hero-lead{font-size:16px!important;margin-top:22px!important}.ct-buttons{margin-top:24px!important}.ct-buttons .wp-block-button{width:100%}.ct-buttons .wp-block-button__link{width:100%;text-align:center}
  .ct-hero-image-wrap{padding:14px 0 22px 10px}.ct-hero-image img{height:350px}.ct-floating-card{right:8px;min-width:165px;padding:13px 15px}.ct-sale-chip{left:0;top:-4px}
  .ct-benefit-grid{grid-template-columns:1fr}.ct-benefit-grid>div{padding:18px 0;border-right:0;border-bottom:1px solid var(--ct-line)}.ct-benefit-grid>div:last-child{border-bottom:0}
  .ct-h2{font-size:38px}.ct-pills{margin:26px 0 32px}.ct-feature-row{display:block!important}.ct-card-image img{min-height:300px;height:300px}.ct-feature-copy{padding:30px 25px!important}.ct-feature-copy h3{font-size:30px}
  .ct-category-grid{grid-template-columns:1fr}.ct-category-image img{height:230px}
  .ct-promo-section,.ct-brands-section{padding-top:54px!important;padding-bottom:54px!important}.ct-promo>div:first-child{padding:32px 25px 0}.ct-promo h2{font-size:36px}.ct-promo-img img{height:270px}
  .ct-brand-row span{flex:1 1 45%;min-width:130px}
  .ct-support .wp-block-columns,.ct-company .wp-block-columns,.ct-inner-intro{display:block!important}.ct-support h2{font-size:39px}.ct-support-list{grid-template-columns:1fr}.ct-support-image{margin-top:36px!important;transform:none}.ct-support-image img{height:310px}
  .ct-company-image img{height:330px}.ct-company-copy{margin-top:34px!important}.ct-stats{grid-template-columns:1fr 1fr}.ct-stats>div:last-child{grid-column:1/3}
  .ct-heading-row{display:block}.ct-heading-row>.ct-text-link{margin-top:18px}.ct-guide-grid{grid-template-columns:1fr}.ct-guide-grid h3{min-height:0}
  .ct-final-cta{padding:34px 0}.ct-final-cta .ct-shell{display:block}.ct-final-cta .ct-buttons{margin-top:22px!important}.ct-final-cta .ct-btn-outline .wp-block-button__link{width:auto}
  .ct-pagehero{padding:74px 0 62px!important}.ct-pagehero h1{font-size:47px}.ct-page-lead{font-size:16px}
  .ct-inner-intro{margin-bottom:45px!important}.ct-inner-image{margin-top:30px!important}.ct-inner-image img{height:300px}.ct-copy-block{padding:34px 0}.ct-inline-cta{grid-template-columns:1fr;padding:30px 24px;gap:22px}.ct-inline-cta h2{font-size:30px}.ct-inline-cta .ct-buttons{margin:0!important}
  .ct-product-card{grid-template-columns:1fr}.ct-product-image img{min-height:250px;height:250px}.ct-contact-box{padding-left:0!important;margin-top:34px!important}.ct-map-placeholder{margin-top:45px}
  .ct-footer-grid{grid-template-columns:1fr 1fr;gap:36px}.ct-footer-brand{grid-column:1/3}.ct-footer-grid>div:last-child{grid-column:auto}.ct-footer-bottom{display:block}.ct-footer-bottom span{display:block;margin-top:6px}
}

/* Editor: keep blocks readable */
.editor-styles-wrapper .ct-shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}

/* v0.9.5 - product families and premium brands */
.ct-section-lead{font-size:16px;line-height:1.75;color:var(--ct-muted);max-width:760px;margin:18px 0 0}
.ct-what-we-sell{background:linear-gradient(180deg,#f8fafb 0%,#f2f6f8 100%)}
.ct-family-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}
.ct-family-grid a{position:relative;display:flex;min-height:190px;flex-direction:column;justify-content:flex-end;padding:28px;border-radius:20px;background:#fff;border:1px solid var(--ct-line);text-decoration:none!important;box-shadow:0 9px 28px rgba(9,38,62,.055);overflow:hidden;transition:.3s ease}
.ct-family-grid a:before{content:"";position:absolute;inset:auto -70px -90px auto;width:180px;height:180px;border-radius:50%;background:rgba(226,39,47,.06);transition:.35s ease}
.ct-family-grid a:hover{transform:translateY(-5px);box-shadow:var(--ct-shadow)}
.ct-family-grid a:hover:before{transform:scale(1.2)}
.ct-family-grid span{position:absolute;top:22px;right:24px;font:800 12px Manrope;color:#9babb5;letter-spacing:.08em}
.ct-family-grid strong{position:relative;z-index:2;font:800 22px/1.18 Manrope;color:var(--ct-navy);max-width:300px}
.ct-family-grid small{position:relative;z-index:2;display:block;margin-top:10px;font-size:13px;line-height:1.55;color:var(--ct-muted)}
.ct-brand-note{font-size:12px!important;line-height:1.65!important;color:#7a8b96!important;margin:24px 0 0!important}
.ct-brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px}
.ct-brand-card{display:flex;min-height:152px;flex-direction:column;padding:24px;border-radius:18px;background:#fff;border:1px solid var(--ct-line);text-decoration:none!important;box-shadow:0 7px 22px rgba(9,38,62,.045);transition:.28s ease}
.ct-brand-card:hover{transform:translateY(-5px);border-color:#c6d5dd;box-shadow:var(--ct-shadow)}
.ct-brand-card strong{font:800 17px/1.2 Manrope;color:var(--ct-navy);letter-spacing:-.02em}
.ct-brand-card span{display:block;margin-top:11px;font-size:12px;line-height:1.55;color:var(--ct-muted);flex:1}
.ct-brand-card em{display:block;margin-top:16px;font-style:normal;font-size:11px;font-weight:800;color:var(--ct-red)}
.ct-brands-page{background:#f7f9fa}
.ct-brands-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:end;margin-bottom:4px}
.ct-brands-intro>p{font-size:16px;line-height:1.8;color:var(--ct-muted);margin:0}
.ct-brands-page .ct-brand-grid{grid-template-columns:repeat(4,1fr)}
.ct-brands-page .ct-inline-cta{margin-top:70px}

@media(max-width:980px){
  .ct-family-grid{grid-template-columns:1fr 1fr}
  .ct-brand-grid,.ct-brands-page .ct-brand-grid{grid-template-columns:repeat(2,1fr)}
  .ct-brands-intro{grid-template-columns:1fr;gap:20px}
}
@media(max-width:767px){
  .ct-family-grid{grid-template-columns:1fr;gap:14px;margin-top:30px}
  .ct-family-grid a{min-height:160px;padding:24px}
  .ct-brand-grid,.ct-brands-page .ct-brand-grid{grid-template-columns:1fr}
  .ct-brand-card{min-height:132px}
}

/* =========================================================
   v0.9.6 — Gutenberg native rebuild
   Every visual component is now a valid core block.
   ========================================================= */
.ct-card-row{gap:18px!important;margin:36px 0 0!important}
.ct-card-row-3{margin-top:18px!important}
.ct-card-block{height:100%;background:#fff;border:1px solid var(--ct-line);border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(9,38,62,.06);padding:0 0 24px;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.ct-card-block:hover{transform:translateY(-5px);box-shadow:var(--ct-shadow);border-color:#c7d5dd}
.ct-card-block-image{margin:0 0 24px!important;overflow:hidden}
.ct-card-block-image img{display:block;width:100%;height:220px;object-fit:cover;transition:transform .45s ease}
.ct-card-block:hover .ct-card-block-image img{transform:scale(1.035)}
.ct-card-block-title,.ct-card-block-text,.ct-card-block-link{margin-left:24px!important;margin-right:24px!important}
.ct-card-block-title{font:800 21px/1.18 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;margin-top:0!important;margin-bottom:10px!important}
.ct-card-block-text{font-size:13px!important;line-height:1.65!important;color:var(--ct-muted)!important;margin-bottom:16px!important}
.ct-card-block-link{font-size:13px!important;font-weight:800!important;margin-bottom:0!important}
.ct-card-block-link a{color:var(--ct-red)!important;text-decoration:none!important}
.ct-card-compact .ct-card-block-image img{height:180px}

.ct-hero-media-stack{position:relative;padding:24px 8px 32px 24px}
.ct-hero-media-stack>.ct-sale-chip{position:absolute;z-index:5;top:0;left:0;margin:0!important;width:auto;background:var(--ct-red);color:#fff!important;font-weight:800!important;font-size:12px!important;letter-spacing:.1em;padding:10px 16px!important;border-radius:10px;box-shadow:0 12px 28px rgba(226,39,47,.22)}
.ct-floating-card{position:absolute!important;z-index:5;right:-8px;bottom:0;background:#fff;border:1px solid rgba(10,42,68,.08);border-radius:16px;padding:16px 20px!important;box-shadow:var(--ct-shadow);min-width:190px}
.ct-floating-number{font:800 24px/1 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;margin:0!important}
.ct-floating-copy{font-size:12px!important;color:var(--ct-muted)!important;margin:5px 0 0!important}

.ct-benefit-grid{margin:0!important;gap:0!important}
.ct-benefit-item{padding:26px 28px!important;border-right:1px solid var(--ct-line)}
.ct-benefit-item:first-child{padding-left:0!important}.ct-benefit-item:last-child{border-right:0;padding-right:0!important}
.ct-benefit-title{font:800 13px/1.3 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;margin:0 0 5px!important}
.ct-benefit-copy{font-size:12px!important;line-height:1.5!important;color:var(--ct-muted)!important;margin:0!important}

.ct-feature-title{font:800 36px/1.08 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;margin:18px 0 14px!important}
.ct-feature-text,.ct-feature-list{font-size:15px!important;line-height:1.75!important;color:#5d6f7b!important}
.ct-feature-list{padding-left:20px!important;margin:20px 0 24px!important}
p.ct-text-link{margin:0!important}p.ct-text-link a{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--ct-navy);text-decoration:none!important}
p.ct-text-link a:hover{color:var(--ct-red)}

.ct-brand-row{gap:14px!important;margin:14px 0 0!important}
.ct-brand-row:first-of-type{margin-top:38px!important}
.ct-brand-card-block{height:100%;min-height:178px;display:flex;flex-direction:column;justify-content:flex-start;background:#fff;border:1px solid var(--ct-line);border-radius:18px;padding:22px!important;box-shadow:0 7px 22px rgba(9,38,62,.045);transition:.28s ease}
.ct-brand-card-block:hover{transform:translateY(-4px);box-shadow:var(--ct-shadow);border-color:#c6d5dd}
.ct-brand-logo{margin:0 0 16px!important;min-height:54px;display:flex;align-items:center}
.ct-brand-logo img{max-height:52px!important;width:auto!important;max-width:100%!important;object-fit:contain!important;filter:saturate(.92);transition:filter .2s ease,transform .2s ease}
.ct-brand-card-block:hover .ct-brand-logo img{filter:saturate(1.05);transform:scale(1.02)}
.ct-brand-desc{font-size:12px!important;line-height:1.55!important;color:var(--ct-muted)!important;margin:0 0 14px!important;flex:1}
.ct-brand-link{font-size:11px!important;font-weight:800!important;margin:0!important}.ct-brand-link a{color:var(--ct-red)!important;text-decoration:none!important}
.ct-brand-name-fallback{font:800 17px Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;margin:0 0 16px!important}

.ct-support-grid,.ct-company-grid,.ct-contact-grid{gap:56px!important;margin:0!important}
.ct-support-title{font:800 clamp(36px,4vw,56px)/1.06 Manrope,Inter,sans-serif!important;color:#fff!important;margin:0 0 22px!important}
.ct-support-copy{font-size:16px!important;line-height:1.75!important;color:#d3e1ea!important;margin:0!important}
.ct-company-copy{padding-left:24px!important}
.ct-company-image,.ct-inner-image{margin:0!important;border-radius:24px!important;overflow:hidden;box-shadow:var(--ct-shadow)}
.ct-company-image img,.ct-inner-image img{width:100%;height:460px;object-fit:cover;display:block}

.ct-guide-grid{gap:18px!important;margin:36px 0 0!important}
.ct-guide-card{height:100%;background:#fff;border:1px solid var(--ct-line);border-radius:18px;padding:28px!important}
.ct-guide-title{font:800 20px/1.25 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;margin:0 0 12px!important}
.ct-guide-copy{font-size:13px!important;line-height:1.65!important;color:var(--ct-muted)!important;margin:0 0 18px!important}

.ct-final-grid{margin:0!important}.ct-final-kicker{color:#ffb4b7!important;font-size:11px!important;font-weight:800!important;letter-spacing:.1em!important;margin:0 0 8px!important}.ct-final-title{font:800 clamp(30px,3.5vw,48px)/1.08 Manrope,Inter,sans-serif!important;color:#fff!important;margin:0!important}.ct-final-actions .ct-buttons{justify-content:flex-end;margin:0!important}

.ct-pagehero-title{font:800 clamp(46px,5vw,68px)/1.02 Manrope,Inter,sans-serif!important;color:#fff!important;letter-spacing:-.045em!important;margin:0!important;max-width:900px}
.ct-inner-title,.ct-copy-title,.ct-inline-title,.ct-contact-title,.ct-map-title{font-family:Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;font-weight:800!important;letter-spacing:-.03em!important}
.ct-inner-title{font-size:clamp(34px,3.5vw,48px)!important;margin:0 0 18px!important}.ct-inner-copy,.ct-copy-text,.ct-inline-copy,.ct-map-copy{font-size:16px!important;line-height:1.8!important;color:var(--ct-muted)!important}
.ct-inner-intro{gap:54px!important;margin:0 0 54px!important}.ct-copy-block{padding:42px 0!important;border-top:1px solid var(--ct-line)}.ct-copy-title{font-size:30px!important;margin:0 0 14px!important}.ct-copy-text{margin:0!important}
.ct-inline-cta{margin-top:54px!important;padding:38px!important;background:linear-gradient(135deg,#eef4f7,#f8fafb);border:1px solid var(--ct-line);border-radius:22px}.ct-inline-title{font-size:34px!important;margin:0 0 10px!important}.ct-inline-copy{margin:0!important}

.ct-contact-title{font-size:38px!important;margin:18px 0 25px!important}.ct-contact-line{font-size:15px!important;line-height:1.7!important;margin:0 0 18px!important}.ct-contact-line a{color:var(--ct-navy)!important;font-weight:800!important}.ct-map-title{font-size:38px!important;margin:70px 0 10px!important}.ct-map-copy{max-width:760px;margin:0 0 28px!important}.ct-map-embed{border-radius:24px;overflow:hidden;box-shadow:var(--ct-shadow);border:1px solid var(--ct-line);background:#eaf1f5}.ct-map-embed iframe{display:block;width:100%;height:460px}

/* Keep frontend entrance motion, but never hide blocks in the editor. */
.editor-styles-wrapper .ct-section .ct-shell,.editor-styles-wrapper .ct-shell{opacity:1!important;transform:none!important}

@media(max-width:980px){
  .ct-card-row,.ct-brand-row{flex-wrap:wrap!important}.ct-card-row>.wp-block-column,.ct-brand-row>.wp-block-column{flex-basis:calc(50% - 10px)!important;flex-grow:1!important}
  .ct-benefit-grid{flex-wrap:wrap!important}.ct-benefit-grid>.wp-block-column{flex-basis:50%!important}.ct-benefit-item:nth-child(2){border-right:0}.ct-benefit-item:nth-child(-n+2){border-bottom:1px solid var(--ct-line)}
  .ct-company-copy{padding-left:0!important}
}
@media(max-width:767px){
  .ct-card-row,.ct-brand-row,.ct-benefit-grid,.ct-support-grid,.ct-company-grid,.ct-contact-grid,.ct-final-grid{display:block!important}
  .ct-card-row>.wp-block-column,.ct-brand-row>.wp-block-column,.ct-benefit-grid>.wp-block-column{width:100%!important;flex-basis:100%!important;margin-bottom:16px!important}
  .ct-benefit-item{padding:18px 0!important;border-right:0!important;border-bottom:1px solid var(--ct-line)!important}.ct-benefit-item:last-child{border-bottom:0!important}
  .ct-card-block-image img{height:230px}.ct-card-compact .ct-card-block-image img{height:210px}
  .ct-hero-media-stack{padding:14px 0 22px 10px}.ct-floating-card{right:8px!important}.ct-support-grid>.wp-block-column+ .wp-block-column,.ct-company-grid>.wp-block-column+ .wp-block-column,.ct-contact-grid>.wp-block-column+ .wp-block-column{margin-top:34px!important}
  .ct-company-image img,.ct-inner-image img{height:320px}.ct-final-actions .ct-buttons{justify-content:flex-start;margin-top:22px!important}.ct-map-title{margin-top:48px!important}.ct-map-embed iframe{height:360px}
}

/* =========================================================
   v0.9.7 — Archivio reale C.T., cataloghi e product showcase
   ========================================================= */
.ct-showcase{background:linear-gradient(180deg,#f7f9fa 0%,#ffffff 100%)}
.ct-product-gallery{margin-top:42px!important}
.ct-gallery-title{font:800 clamp(28px,3vw,40px)/1.12 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;letter-spacing:-.035em!important;margin:0 0 24px!important}
.ct-product-gallery-row{gap:18px!important;margin:18px 0 0!important}
.ct-product-tile{height:100%;background:#fff;border:1px solid var(--ct-line);border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(9,38,62,.065);padding:0 0 24px!important;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.ct-product-tile:hover{transform:translateY(-5px);box-shadow:var(--ct-shadow);border-color:#c8d6de}
.ct-product-tile-image{margin:0 0 22px!important;background:linear-gradient(145deg,#fff,#f1f5f7);overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:245px}
.ct-product-tile-image img{display:block;width:100%!important;height:245px!important;object-fit:contain!important;padding:18px;transition:transform .4s ease}
.ct-product-tile:hover .ct-product-tile-image img{transform:scale(1.035)}
.ct-product-tile-title,.ct-product-tile-copy{margin-left:24px!important;margin-right:24px!important}
.ct-product-tile-title{font:800 20px/1.2 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;margin-top:0!important;margin-bottom:9px!important}
.ct-product-tile-copy{font-size:13px!important;line-height:1.65!important;color:var(--ct-muted)!important;margin-bottom:0!important}

/* Authentic image + foreground product composition. */
.ct-hero-product-float{position:absolute!important;z-index:6;right:-24px;bottom:42px;margin:0!important;width:42%;max-width:245px;min-width:160px;background:rgba(255,255,255,.96);border:1px solid rgba(10,42,68,.10);border-radius:22px;padding:16px!important;box-shadow:0 24px 60px rgba(4,27,46,.22);backdrop-filter:blur(10px);transform:rotate(2deg)}
.ct-hero-product-float img{display:block!important;width:100%!important;height:220px!important;object-fit:contain!important;filter:drop-shadow(0 14px 18px rgba(10,42,68,.20))}
.ct-hero-media-stack:hover .ct-hero-product-float{transform:translateY(-4px) rotate(1deg)}

.ct-related-brands{margin-top:62px!important;padding-top:48px!important;border-top:1px solid var(--ct-line)}
.ct-related-brands .ct-brand-row:first-of-type{margin-top:28px!important}

.ct-catalog-promo{background:linear-gradient(135deg,#eef4f7,#f8fafb);border-top:1px solid var(--ct-line);border-bottom:1px solid var(--ct-line)}
.ct-catalogs-page{background:#f7f9fa}
.ct-catalog-group-title{font:800 clamp(27px,3vw,38px)/1.15 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;letter-spacing:-.03em!important;margin:64px 0 22px!important;padding-top:8px!important}
.ct-catalog-group-title:first-of-type{margin-top:44px!important}
.ct-catalog-row{gap:18px!important;margin:18px 0 0!important}
.ct-catalog-card{height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid var(--ct-line);border-radius:20px;padding:18px 18px 22px!important;box-shadow:0 9px 28px rgba(9,38,62,.055);transition:transform .28s ease,box-shadow .28s ease}
.ct-catalog-card:hover{transform:translateY(-4px);box-shadow:var(--ct-shadow)}
.ct-catalog-cover{margin:0 0 20px!important;overflow:hidden;border-radius:14px;background:#eef3f5;border:1px solid #e0e8ec}
.ct-catalog-cover img{display:block;width:100%!important;height:310px!important;object-fit:cover!important;object-position:top center;transition:transform .35s ease}
.ct-catalog-card:hover .ct-catalog-cover img{transform:scale(1.018)}
.ct-catalog-title{font:800 18px/1.28 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;margin:0 0 9px!important;flex:1}
.ct-catalog-brand{font-size:11px!important;text-transform:uppercase;letter-spacing:.08em;font-weight:800!important;color:var(--ct-red)!important;margin:0 0 16px!important}
.ct-catalog-actions{margin-top:auto!important}
.ct-catalog-actions .wp-block-button,.ct-catalog-actions .wp-block-button__link{width:100%}
.ct-catalog-actions .wp-block-button__link{text-align:center}

/* Brand area: original logos get room and visual hierarchy. */
.ct-brand-card-block{min-height:205px}
.ct-brand-logo{min-height:72px!important;margin-bottom:18px!important}
.ct-brand-logo img{max-height:68px!important;max-width:190px!important;filter:none!important}
.ct-brand-card-block:hover .ct-brand-logo img{filter:none!important}

/* Product pages: preserve technical product proportions rather than cropping them. */
.ct-inner .ct-product-gallery .ct-product-tile-image img,
.ct-products-landing .ct-card-block-image img{object-fit:contain!important;background:#fff;padding:14px}
.ct-products-landing .ct-card-block-image{background:#fff}

/* Genuine premises should remain photographic and immersive. */
.ct-company-image img,.ct-inner-image img,.ct-hero-image img{filter:saturate(.96) contrast(1.02)}

/* Never let adjacent editorial blocks collapse together. */
.ct-section + .ct-section{margin-top:0!important}
.entry-content > .wp-block-group + .wp-block-group{margin-top:0!important}
.ct-copy-block + .ct-copy-block{margin-top:30px!important}

@media(max-width:980px){
  .ct-product-gallery-row,.ct-catalog-row{flex-wrap:wrap!important}
  .ct-product-gallery-row>.wp-block-column,.ct-catalog-row>.wp-block-column{flex-basis:calc(50% - 10px)!important;flex-grow:1!important}
  .ct-hero-product-float{right:-4px;bottom:30px;width:38%;max-width:205px}
  .ct-hero-product-float img{height:180px!important}
  .ct-catalog-cover img{height:285px!important}
}
@media(max-width:767px){
  .ct-product-gallery{margin-top:32px!important}
  .ct-product-gallery-row,.ct-catalog-row{display:block!important;margin-top:14px!important}
  .ct-product-gallery-row>.wp-block-column,.ct-catalog-row>.wp-block-column{width:100%!important;flex-basis:100%!important;margin-bottom:18px!important}
  .ct-product-tile-image,.ct-product-tile-image img{height:230px!important;min-height:230px}
  .ct-hero-product-float{right:8px;bottom:24px;width:42%;min-width:135px;padding:10px!important;border-radius:16px}
  .ct-hero-product-float img{height:135px!important}
  .ct-related-brands{margin-top:42px!important;padding-top:34px!important}
  .ct-catalog-group-title{margin-top:48px!important}
  .ct-catalog-cover img{height:360px!important;object-fit:contain!important;background:#eef3f5}
  .ct-brand-card-block{min-height:175px}
}

/* v0.9.8 — Cataloghi live: robust server-rendered archive */
.ct-live-catalog{margin-top:44px}
.ct-catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border:1px solid var(--ct-line);border-radius:18px;padding:22px 24px;margin:0 0 42px;box-shadow:0 10px 30px rgba(9,38,62,.045)}
.ct-catalog-toolbar strong{display:block;font:800 18px/1.2 Manrope,Inter,sans-serif;color:var(--ct-navy)}
.ct-catalog-toolbar span{display:block;margin-top:5px;color:var(--ct-muted);font-size:13px}
.ct-catalog-search{width:min(340px,100%);min-height:46px;border:1px solid #cdd9df!important;border-radius:12px!important;background:#f8fafb!important;padding:0 16px!important;font:600 14px/1 Inter,sans-serif!important;box-shadow:none!important}
.ct-catalog-search:focus{border-color:var(--ct-red)!important;outline:2px solid rgba(220,35,45,.1)!important}
.ct-live-catalog-group{margin:0 0 66px}
.ct-live-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ct-live-catalog-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--ct-line);border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(9,38,62,.055);transition:transform .25s ease,box-shadow .25s ease}
.ct-live-catalog-card:hover{transform:translateY(-4px);box-shadow:var(--ct-shadow)}
.ct-live-catalog-cover{display:flex;align-items:flex-start;justify-content:center;height:340px;background:linear-gradient(145deg,#eef3f5,#fff);overflow:hidden;border-bottom:1px solid var(--ct-line)}
.ct-live-catalog-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .3s ease}
.ct-live-catalog-card:hover .ct-live-catalog-cover img{transform:scale(1.015)}
.ct-catalog-pdf-placeholder{align-self:center;font:800 42px/1 Manrope,sans-serif;color:#9aaab4}
.ct-live-catalog-body{display:flex;flex-direction:column;flex:1;padding:22px 22px 24px}
.ct-live-catalog-body .ct-catalog-title{font-size:18px!important;min-height:46px;margin-bottom:18px!important}
.ct-catalog-open{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:auto;min-height:46px;border-radius:10px;background:var(--ct-red);color:#fff!important;text-decoration:none!important;font-weight:800;padding:10px 16px;transition:transform .2s ease,background .2s ease}
.ct-catalog-open:hover{background:#b81720;color:#fff!important;transform:translateY(-1px)}
.ct-catalog-no-results{background:#fff;border:1px solid var(--ct-line);border-radius:18px;padding:30px;text-align:center;color:var(--ct-muted)}
@media (max-width:960px){.ct-live-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ct-catalog-toolbar{align-items:stretch;flex-direction:column}.ct-catalog-search{width:100%}}
@media (max-width:640px){.ct-live-catalog-grid{grid-template-columns:1fr}.ct-live-catalog-cover{height:300px}.ct-live-catalog-group{margin-bottom:48px}}


/* v0.9.9 failsafe: never hide frontend content while scripts load or fail */
html body:not(.wp-admin) .ct-section .ct-shell,
html.js body:not(.wp-admin) .ct-section .ct-shell,
html.js body:not(.wp-admin) .ct-section.is-visible .ct-shell{opacity:1!important;transform:none!important;visibility:visible!important;}


/* =========================================================
   v0.9.10 — Master Graphic pass: header + hero
   Compact premium header, cleaned logo and collision-free hero.
   ========================================================= */

/* Header container: the previous full-width Astra container pushed
   the menu too far from the identity on large screens. */
.site-header .ast-builder-grid-row-container-inner,
.site-header .ast-container{
  width:100%!important;
  max-width:1240px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:28px!important;
  padding-right:28px!important;
}
.site-header .ast-builder-grid-row{
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:36px!important;
  min-height:88px!important;
}
.site-header-primary-section-left{min-width:222px!important;align-items:center!important}
.site-header-primary-section-right{min-width:0!important;justify-content:flex-end!important;align-items:center!important}
.ast-site-identity{padding:8px 0!important}

/* Digital cleanup of the original C.T. wordmark. The image remains
   the real company identity; only the white matte and proportions are cleaned. */
.custom-logo-link{
  display:block!important;
  width:222px!important;
  height:82px!important;
  background:url('../library/images/logo-clean.png') center/contain no-repeat!important;
  line-height:0!important;
}
.custom-logo-link img.custom-logo{
  width:222px!important;
  height:82px!important;
  object-fit:contain!important;
  opacity:0!important;
}
.ast-builder-menu-1 .main-header-menu,
.main-header-menu{align-items:center!important;gap:2px!important}
.ast-builder-menu-1 .menu-item>.menu-link,
.main-header-menu>.menu-item>.menu-link{
  padding-left:11px!important;
  padding-right:11px!important;
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
  white-space:nowrap!important;
}
.main-header-menu .menu-cta>a{
  margin-left:12px!important;
  padding-left:18px!important;
  padding-right:18px!important;
  height:44px!important;
  min-height:44px!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.main-header-menu .menu-cta>a:hover,
.main-header-menu .menu-cta>a:focus{
  background:var(--ct-red-dark)!important;
  color:#fff!important;
}

/* Hero — cleaner hierarchy and layered product photography without collisions. */
.ct-home-hero{padding:74px 0 92px!important;background:linear-gradient(125deg,#f7fafc 0%,#edf5f8 57%,#e5eff3 100%)}
.ct-hero-grid{gap:76px!important;align-items:center!important}
.ct-hero-copy{padding:0!important}
.ct-hero-title{font-size:clamp(50px,5.2vw,76px)!important;line-height:.965!important;max-width:650px!important}
.ct-hero-lead{max-width:620px!important;margin-top:26px!important}
.ct-hero-media{position:relative;z-index:2}
.ct-hero-media-stack{
  position:relative!important;
  isolation:isolate;
  padding:30px 34px 42px 18px!important;
  max-width:590px;
  margin-left:auto;
}
.ct-hero-media-stack:before{
  content:"";
  position:absolute;
  z-index:-2;
  width:76%;
  aspect-ratio:1;
  border-radius:50%;
  right:-6%;
  top:3%;
  background:radial-gradient(circle at 35% 32%,rgba(23,101,154,.22),rgba(23,101,154,.04) 58%,transparent 70%);
  filter:blur(1px);
}
.ct-hero-image{
  position:relative!important;
  z-index:1;
  margin:0!important;
  border-radius:30px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.84);
  box-shadow:0 34px 80px rgba(7,35,57,.18)!important;
  transform:none!important;
}
.ct-hero-image img{
  width:100%!important;
  height:510px!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
.ct-hero-media-stack>.ct-sale-chip{
  top:8px!important;
  left:0!important;
  padding:11px 16px!important;
  border-radius:9px!important;
  box-shadow:0 14px 30px rgba(226,39,47,.22)!important;
}
.ct-hero-product-float{
  right:-12px!important;
  bottom:0!important;
  width:36%!important;
  max-width:205px!important;
  min-width:155px!important;
  padding:14px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.98)!important;
  border:1px solid rgba(10,42,68,.09)!important;
  box-shadow:0 28px 64px rgba(4,27,46,.22)!important;
  transform:none!important;
}
.ct-hero-product-float img{
  height:178px!important;
  object-fit:contain!important;
  filter:drop-shadow(0 15px 20px rgba(10,42,68,.18))!important;
}
.ct-hero-media-stack:hover .ct-hero-product-float{transform:translateY(-4px)!important}
.ct-floating-card{
  left:-22px!important;
  right:auto!important;
  bottom:28px!important;
  min-width:205px!important;
  max-width:230px!important;
  padding:14px 18px!important;
  background:linear-gradient(135deg,var(--ct-deep),var(--ct-navy))!important;
  border-color:rgba(255,255,255,.12)!important;
  box-shadow:0 20px 45px rgba(7,28,46,.25)!important;
}
.ct-floating-card strong,
.ct-floating-card .ct-floating-number{
  color:#fff!important;
  font-size:22px!important;
  line-height:1.05!important;
  margin:0!important;
}
.ct-floating-card span,
.ct-floating-card .ct-floating-copy{
  color:#d8e6ef!important;
  font-size:11px!important;
  line-height:1.45!important;
  margin:5px 0 0!important;
}

/* Red CTA contrast: never inherit Astra's orange hover text. */
.ct-btn-primary .wp-block-button__link:hover,
.ct-btn-primary .wp-block-button__link:focus,
.wp-block-button.ct-btn-primary .wp-block-button__link:hover,
.wp-block-button.ct-btn-primary .wp-block-button__link:focus,
.main-header-menu .menu-cta>a:hover,
.main-header-menu .menu-cta>a:focus,
.ct-final-cta .wp-block-button__link:hover,
.ct-final-cta .wp-block-button__link:focus{
  color:#fff!important;
  text-decoration:none!important;
}

@media(max-width:1100px){
  .site-header .ast-builder-grid-row-container-inner,.site-header .ast-container{padding-left:20px!important;padding-right:20px!important}
  .site-header .ast-builder-grid-row{column-gap:20px!important}
  .custom-logo-link,.custom-logo-link img.custom-logo{width:194px!important;height:74px!important}
  .site-header-primary-section-left{min-width:194px!important}
  .ast-builder-menu-1 .menu-item>.menu-link,.main-header-menu>.menu-item>.menu-link{padding-left:8px!important;padding-right:8px!important;font-size:13px!important}
  .ct-hero-grid{gap:48px!important}
  .ct-floating-card{left:-8px!important}
}

@media(max-width:921px){
  .site-header .ast-builder-grid-row{min-height:78px!important;grid-template-columns:auto 1fr!important}
  .custom-logo-link,.custom-logo-link img.custom-logo{width:184px!important;height:68px!important}
  .site-header-primary-section-left{min-width:184px!important}
  .ct-home-hero{padding:58px 0 72px!important}
  .ct-hero-media-stack{max-width:620px;margin:28px auto 0!important;padding:24px 22px 44px!important}
  .ct-hero-product-float{right:2px!important;bottom:0!important;width:31%!important;max-width:190px!important}
  .ct-floating-card{left:4px!important;bottom:24px!important}
}

@media(max-width:600px){
  .site-header .ast-builder-grid-row-container-inner,.site-header .ast-container{padding-left:14px!important;padding-right:14px!important}
  .custom-logo-link,.custom-logo-link img.custom-logo{width:160px!important;height:60px!important}
  .site-header-primary-section-left{min-width:160px!important}
  .ct-home-hero{padding-top:46px!important}
  .ct-hero-title{font-size:clamp(42px,13vw,58px)!important}
  .ct-hero-media-stack{padding:20px 8px 88px!important;margin-top:22px!important}
  .ct-hero-image img{height:390px!important}
  .ct-hero-product-float{right:4px!important;bottom:12px!important;width:42%!important;min-width:132px!important;padding:10px!important}
  .ct-hero-product-float img{height:120px!important}
  .ct-floating-card{left:4px!important;bottom:18px!important;min-width:165px!important;max-width:190px!important;padding:12px 14px!important}
  .ct-floating-card strong,.ct-floating-card .ct-floating-number{font-size:18px!important}
}


/* =========================================================
   v0.9.11 — Master QA: legal pages, conversion CTA, footer cleanup
   ========================================================= */

/* Astra default footer is intentionally suppressed: the custom Multiprojects
   footer above contains the complete navigation and legal links. */
.site-primary-footer-wrap,.site-below-footer-wrap,.ast-small-footer,.ast-footer-overlay{display:none!important}

/* Strong call CTA across product pages. */
.ct-inline-cta .ct-buttons{display:flex!important;gap:12px!important;align-items:center!important;flex-wrap:wrap!important}
.ct-inline-cta .ct-btn-primary .wp-block-button__link{
  min-width:150px!important;
  background:var(--ct-red)!important;
  color:#fff!important;
  box-shadow:0 12px 26px rgba(226,39,47,.18)!important;
}
.ct-inline-cta .ct-btn-primary .wp-block-button__link:hover,
.ct-inline-cta .ct-btn-primary .wp-block-button__link:focus{background:var(--ct-red-dark)!important;color:#fff!important;transform:translateY(-1px)}

/* Legal pages: readable, premium and consistent with the rest of the site. */
.ct-legal-page{padding-top:72px!important;padding-bottom:92px!important}
.ct-legal-page>.ct-shell{max-width:980px!important}
.ct-legal-updated{font-size:13px!important;color:var(--ct-muted)!important;margin:0 0 30px!important}
.ct-legal-section{padding:30px 0!important;border-top:1px solid var(--ct-line)!important}
.ct-legal-section:first-of-type{border-top:0!important}
.ct-legal-title{font:800 clamp(22px,2.2vw,30px)/1.18 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;margin:0 0 14px!important;letter-spacing:-.02em!important}
.ct-legal-copy{font-size:16px!important;line-height:1.82!important;color:#405466!important;margin:0!important}
.ct-legal-copy a{font-weight:700;color:var(--ct-blue)!important;text-decoration:underline;text-underline-offset:3px}

/* Give all major blocks breathing room; maintain the Multiprojects 30px minimum. */
.ct-inner .ct-copy-block+.ct-copy-block,
.ct-inner .ct-product-gallery,
.ct-inner .ct-related-brands,
.ct-inner .ct-inline-cta{margin-top:max(54px,30px)!important}

@media(max-width:600px){
  .ct-legal-page{padding-top:48px!important;padding-bottom:64px!important}
  .ct-legal-section{padding:26px 0!important}
  .ct-inline-cta .ct-buttons{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  .ct-inline-cta .ct-buttons .wp-block-button,.ct-inline-cta .ct-buttons .wp-block-button__link{width:100%!important}
}


/* Product-card call CTA: visible on every representative product. */
.ct-product-call{margin:18px 24px 0!important}
.ct-product-call a{display:inline-flex!important;align-items:center!important;gap:8px!important;color:var(--ct-red)!important;font-weight:800!important;font-size:13px!important;text-decoration:none!important}
.ct-product-call a:hover,.ct-product-call a:focus{color:var(--ct-red-dark)!important;gap:11px!important}

/* Product FAQ — useful content without turning pages into text walls. */
.ct-product-faq{margin-top:64px!important;padding:38px!important;background:#f6f9fb;border:1px solid var(--ct-line);border-radius:24px}
.ct-product-faq .ct-gallery-title{margin-bottom:24px!important}
.ct-faq-item{padding:22px 0!important;border-top:1px solid var(--ct-line)!important}
.ct-faq-item:first-of-type{border-top:0!important}
.ct-faq-question{font:800 19px/1.3 Manrope,Inter,sans-serif!important;color:var(--ct-navy)!important;margin:0 0 8px!important}
.ct-faq-answer{font-size:15px!important;line-height:1.72!important;color:var(--ct-muted)!important;margin:0!important}

.ct-guides-page .ct-guide-card{height:100%}
.ct-guides-page .ct-card-row{margin-top:30px!important}

@media(max-width:600px){
  .ct-product-faq{padding:26px 22px!important;margin-top:44px!important}
}
