/* Alligator Boats | presentation only | 2026-09-16
   Existing content, IDs, links, widgets and interaction states are preserved.
   Scope: body.ab-visual. Remove/deactivate plugin to restore previous presentation.
   Typography uses the existing Karla/Rubik font requests; no new dependencies.
   Shape: controls 6px, cards/media 12px. Motion: feedback only.
*/
body.ab-visual {
  --ab-ink:#142a32; --ab-muted:#49616a; --ab-accent:#61c0db;
  --ab-link:#17677c; --ab-dark:#102730; --ab-dark-2:#17343e;
  --ab-paper:#f3f7f8; --ab-line:#d5e0e4; --ab-white:#fff;
  --ab-font:'Karla',system-ui,-apple-system,'Segoe UI',sans-serif;
  --ab-heading:'Rubik','Karla',system-ui,sans-serif;
  --ab-width:1200px; --ab-gutter:clamp(20px,4vw,64px);
  --ab-space:clamp(56px,6vw,88px);
  font-family:var(--ab-font); color:var(--ab-ink); font-size:17px; line-height:1.65;
  background:#fff;
}
body.ab-visual :is(h1,h2,h3,h4,h5,h6) {font-family:var(--ab-heading);letter-spacing:-.025em;line-height:1.2;text-wrap:balance;}
body.ab-visual :is(button,input,select,textarea) {font-family:var(--ab-font);}
body.ab-visual :is([class^="ab"],[class*=" ab"]) {font-family:var(--ab-font);}
body.ab-visual :is(h1,h2,h3,h4)[class] {font-family:var(--ab-heading);}
body.ab-visual :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible {
  outline:3px solid #147a98!important;outline-offset:4px!important;
  box-shadow:0 0 0 6px #fff!important;
}
body.ab-visual :is(p,li) {text-wrap:pretty;}
body.ab-visual :is(.entry-content,.summary) a:not([class]) {color:var(--ab-link);text-underline-offset:4px;}
/* Header: same menu, clearer hierarchy and touch targets. */
body.ab-visual .main-header-bar {border-bottom:1px solid var(--ab-line);background:#fff;}
body.ab-visual .ast-primary-header-bar .ast-container {max-width:1328px;padding-inline:var(--ab-gutter);}
body.ab-visual .site-branding {padding:12px 0;}
body.ab-visual .custom-logo {width:126px;max-height:56px;object-fit:contain;}
body.ab-visual .main-header-menu .menu-link {font-family:var(--ab-font);font-size:16px;font-weight:700;line-height:1.3;padding:16px 17px;color:var(--ab-ink);}
body.ab-visual .main-header-menu .current-menu-item>.menu-link,
body.ab-visual .main-header-menu .menu-link:hover {color:var(--ab-link);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px;}
body.ab-visual .ast-button-wrap .menu-toggle {min-height:44px;min-width:44px;border:1px solid var(--ab-line);border-radius:6px;color:var(--ab-ink);background:var(--ab-paper);}
body.ab-visual .ast-mobile-header-content .menu-link {padding:16px 24px;border-bottom:1px solid var(--ab-line);}
/* Consistent controls. Explicit selectors keep hidden and disabled states intact. */
body.ab-visual :is(.ab-btn-primary,.abtcta-btn,.abpr-btn,.absk-btn,.abz-btn,.abm-btn,.abcon-road-btn,.abhdpe-btn-p,.abhdpe-btn-primary,.abst-btn-primary,.abpm-btn-primary,.abft-cta-btn,.abfaq-foot-btn,.abfaq-photo-btn),
body.ab-visual .wpcf7 input.wpcf7-submit {
  background:var(--ab-link);color:#fff!important;border:1px solid var(--ab-link);
  border-radius:6px;box-shadow:none;min-height:50px;padding:13px 24px!important;
  font-size:16px;font-weight:700;line-height:1.35;letter-spacing:0;text-transform:none;
  text-align:center;justify-content:center;transition:background .18s ease,color .18s ease;
}
body.ab-visual :is(.ab-btn-primary,.abst-btn-primary,.abpm-btn-primary,.abhdpe-btn-p,.abhdpe-btn-primary,.abft-cta-btn,.absk-btn-dark) {background:var(--ab-accent);color:var(--ab-dark)!important;border-color:var(--ab-accent);}
body.ab-visual :is(.ab-btn-primary,.abtcta-btn,.abpr-btn,.absk-btn,.abz-btn,.abm-btn,.abcon-road-btn,.abhdpe-btn-p,.abhdpe-btn-primary,.abst-btn-primary,.abpm-btn-primary,.abft-cta-btn,.abfaq-foot-btn,.abfaq-photo-btn):hover,
body.ab-visual .wpcf7 input.wpcf7-submit:hover {background:#19596c;color:#fff!important;box-shadow:none;transform:none;}
body.ab-visual :is(.ab-btn-secondary,.abtcta-btn-ghost,.abpr-btn-ghost,.absk-btn-ghost,.abz-btn-ghost,.abst-btn-secondary,.abpm-btn-ghost,.abhdpe-btn-secondary,.abcon-vcta-ghost) {
  border-radius:6px;min-height:50px;padding:13px 22px!important;font-size:16px;
  line-height:1.35;font-weight:700;box-shadow:none;letter-spacing:0;text-transform:none;
  text-align:center;justify-content:center;
}
body.ab-visual :is(.abtcta-btn-ghost,.abpr-btn-ghost,.absk-btn-ghost,.abz-btn-ghost) {color:var(--ab-link)!important;border-color:#a5bec7;background:#fff;}
body.ab-visual :is(.ab-btn-secondary,.abst-btn-secondary,.abpm-btn-ghost,.abcon-vcta-ghost,.abz-final .abz-btn-ghost) {color:#d9f2f8!important;border-color:#7cabb8;background:transparent;}
/* Home hero: show the real boat beside an unbroken reading surface. */
body.ab-visual.home .uagb-block-1e5d1737 {
  background:var(--ab-dark);position:relative;isolation:isolate;min-height:650px;
  padding:64px max(var(--ab-gutter),calc((100vw - 1200px)/2))!important;
  align-items:flex-start;justify-content:center;
}
body.ab-visual.home .uagb-block-1e5d1737::before {background:linear-gradient(90deg,#102730 0%,#102730 43%,rgba(16,39,48,.6) 60%,rgba(16,39,48,.06) 100%)!important;opacity:1!important;z-index:1;}
body.ab-visual.home .uagb-block-1e5d1737 .uagb-container__video-wrap {left:41%;width:59%;}
body.ab-visual.home .uagb-block-1e5d1737 video {object-position:60% center;}
body.ab-visual .ab-hero-content {width:54%;max-width:640px;margin:0;padding:0;z-index:2;}
body.ab-visual .ab-h1 {font-size:clamp(38px,4vw,58px);font-weight:700;line-height:1.08;letter-spacing:-.035em;margin:0 0 12px;text-shadow:none;}
body.ab-visual .ab-claim {font-size:clamp(23px,2.3vw,32px);font-weight:500;color:#9ddcec;-webkit-text-fill-color:currentColor;background:none;margin:0 0 26px;}
body.ab-visual .ab-sub {font-size:17px;line-height:1.65;color:#e0e9ed;max-width:550px;margin:0 0 24px;}
body.ab-visual .ab-sub strong {background:none;color:#fff;padding:0;}
body.ab-visual .ab-pills {gap:8px 16px;margin-bottom:26px;}
body.ab-visual .ab-pill {font-size:12px;border:0;border-radius:0;padding:0 0 0 10px;border-left:2px solid #61c0db;background:none;color:#d9e7eb;backdrop-filter:none;}
body.ab-visual .ab-cta-group {gap:12px;margin-bottom:16px;}
body.ab-visual .ab-cta-note {color:#c1d2d8;font-size:13px;max-width:520px;}
/* Common section rhythm and headings, preserving all sections. */
body.ab-visual :is(.abtb-section,.abst-section,.abhnd-section,.abpr-section,.abpm-section,.abfaq-section,.abnas-section,.abcta-section,.absk-hero,.absk-cat) {padding:var(--ab-space) var(--ab-gutter);}
body.ab-visual :is(.abtb-inner,.abst-inner,.abhnd-inner,.abpr-inner,.abpm-inner,.abfaq-inner,.abnas-inner,.abcta-inner,.absk-inner) {max-width:1200px;}
body.ab-visual :is(.abst-section,.abpm-section,.abfaq-section,.abcta-section,.absk-cat-dark) {background:var(--ab-dark);}
body.ab-visual :is(.abst-bg,.abpm-bg,.abfaq-bg,.abpr-bg,.abcta-bg,.abft-bg,.abhdpe-hex-layer,.abhdpe-vcta-hex,.abhdpe-scroll-hint) {display:none;}
body.ab-visual :is(.abtb-header,.abst-header,.abhnd-head,.abpr-header,.abpm-header,.abfaq-header,.abnas-header,.absk-hero-head,.absk-cat-head,.abgal-hero) {text-align:left;max-width:850px;margin:0 0 36px;}
body.ab-visual :is(.abst-h2,.abhnd-h2,.abpr-h2,.abpm-h2,.abfaq-h2,.abnas-h2,.abcta-h2,.absk-hero-h2,.absk-cat-h2,.abhdpe-sh,.abgal-h1) {font-size:clamp(29px,3.1vw,44px);line-height:1.15;letter-spacing:-.03em;font-weight:700;}
body.ab-visual :is(.abst-lead,.abhnd-lead,.abpr-lead,.abpm-lead,.abfaq-lead,.absk-hero-lead,.absk-cat-lead,.abgal-lead) {font-size:17px;line-height:1.7;margin-left:0;max-width:70ch;}
body.ab-visual :is(.abst-lead,.abpm-lead,.abfaq-lead,.abcta-lead,.absk-cat-lead-dark) {color:#c2d4db;}
body.ab-visual :is(.abtb-eyebrow,.abhnd-eyebrow,.abpr-eyebrow,.abnas-eyebrow,.absk-eyebrow,.abgal-eyebrow,.abtcta-eyebrow) {color:var(--ab-link);font-size:12px;letter-spacing:.1em;}
body.ab-visual :is(.abst-eyebrow,.abpm-eyebrow,.abfaq-eyebrow,.abcta-eyebrow,.absk-eyebrow-dark) {color:#95d9e9;font-size:12px;letter-spacing:.1em;}
/* Trust facts: less card decoration, more readable supporting text. */
body.ab-visual .abtb-grid {gap:28px;}
body.ab-visual .abtb-card {border:0;border-top:2px solid var(--ab-line);border-radius:0;box-shadow:none;padding:24px 0 0;text-align:left;}
body.ab-visual .abtb-card:hover {box-shadow:none;transform:none!important;}
body.ab-visual :is(.abtb-card-glow,.abtb-card-line) {display:none;}
body.ab-visual .abtb-icon-ring {width:42px;height:42px;border:0;border-radius:8px;background:#e9f4f7;margin:0 0 18px;animation:none;}
body.ab-visual .abtb-icon-ring svg {stroke:var(--ab-link);width:25px;height:25px;}
body.ab-visual .abtb-card-title {font-size:18px;}
body.ab-visual .abtb-card-text {font-size:15px;line-height:1.65;color:var(--ab-muted);}
body.ab-visual .abtcta {max-width:none;margin:40px 0 0;padding:32px;background:var(--ab-paper);border-radius:12px;}
body.ab-visual .abtcta-text {font-size:16px;color:var(--ab-muted);}
/* Real media and tabbed product presentations. */
body.ab-visual .abst-tabs {border-radius:8px;background:var(--ab-dark-2);border-color:#42616c;}
body.ab-visual .abst-tab {min-height:70px;border-radius:5px;text-transform:none;}
body.ab-visual .abst-tab-label {color:#d2e3e9;font-size:16px;}
body.ab-visual .abst-tab-num {color:#97bdc9;}
body.ab-visual .abst-tab.abst-active {box-shadow:none;}
body.ab-visual .abst-panels {padding:36px;background:var(--ab-dark-2);border-color:#35545f;box-shadow:none;backdrop-filter:none;border-radius:12px;}
body.ab-visual .abst-panel {grid-template-columns:minmax(0,1fr) 300px;}
body.ab-visual :is(.abst-panel-text p,.abst-cta-text,.abpm-feature-desc,.abpm-panel-content p) {font-size:16px;color:#cadce3;}
body.ab-visual :is(.abst-media-cap,.abpm-price-note,.abpm-specs li span) {color:#b3cbd4;font-size:13px;}
body.ab-visual .abhnd-benefit-text {font-size:16px;color:var(--ab-muted);}
body.ab-visual .abpm-feature-box {background:transparent;border:0;border-left:2px solid #426b78;border-radius:0;padding:0 24px;backdrop-filter:none;}
body.ab-visual .abpm-showcase {background:var(--ab-dark-2);border-color:#35545f;border-radius:12px;box-shadow:none;padding:36px;}
body.ab-visual .abpm-tabs {justify-content:flex-start;}
body.ab-visual .abpm-tab {border-radius:6px;min-height:48px;box-shadow:none;color:#d4e4e9;border-color:#7695a1;}
body.ab-visual .abpm-tab.abpm-active {box-shadow:none;}
body.ab-visual .abpm-panel-image img {object-fit:contain;}
/* Boat and engine cards, keeping all badges and prices as currently supplied. */
body.ab-visual :is(.abpr-section,.absk-hero,.absk-cat-grey) {background:var(--ab-paper);}
body.ab-visual :is(.abpr-card,.absk-card,.absk-tile,.absk-mcard) {border-radius:12px;box-shadow:none;border-color:var(--ab-line);}
body.ab-visual :is(.abpr-card,.absk-card,.absk-tile):hover {box-shadow:0 10px 26px #1027300d;border-color:#8cb0bd;transform:none;}
body.ab-visual :is(.abpr-img-wrap,.absk-card-img) {aspect-ratio:16/10;background:#edf2f4;}
body.ab-visual :is(.abpr-img,.absk-card-img img) {object-fit:contain;padding:12px;}
body.ab-visual :is(.abpr-body,.absk-card-body,.absk-tile-body) {padding:28px;}
body.ab-visual :is(.abpr-h3,.absk-card-title) {font-size:25px;line-height:1.2;}
body.ab-visual :is(.abpr-h3 span,.absk-card-title span) {color:var(--ab-link);}
body.ab-visual :is(.abpr-desc,.absk-card-desc,.absk-tile-desc) {font-size:16px;color:var(--ab-muted);}
body.ab-visual :is(.abpr-price-note,.abpr-spec li span:first-child,.absk-price-note) {color:#526972;font-size:13px;}
body.ab-visual .abpr-spec li span:last-child {font-size:15px;}
body.ab-visual :is(.abpr-badge,.absk-badge,.absk-mbadge,.abpm-badge) {border-radius:4px;font-size:11px;box-shadow:none;}
body.ab-visual :is(.abpr-badge-top,.absk-badge-accent) {background:var(--ab-link);border-color:var(--ab-link);}
body.ab-visual :is(.abpr-note,.absk-note) {box-shadow:none;background:#fff;border-radius:8px;}
body.ab-visual .absk-mcard {background:var(--ab-dark-2);border-color:#35545f;}
body.ab-visual .absk-mcard-img {aspect-ratio:4/5;background:#eaf0f2;}
body.ab-visual .absk-mcard-img img {object-fit:contain;}
body.ab-visual .absk-mcard-desc {font-size:16px;color:#ccdee5;}
body.ab-visual .absk-mprice-sub {font-size:13px;color:#b5cdd7;}
body.ab-visual .absk-close {background:var(--ab-paper);padding:0 var(--ab-gutter) var(--ab-space);}
body.ab-visual .absk-close-box {max-width:1200px;border-radius:12px;background:var(--ab-dark);box-shadow:none;}
body.ab-visual .absk-close-text {min-width:0;}
/* FAQ / story / final contact. */
body.ab-visual .abfaq-trigger {padding:22px 0;text-transform:none;letter-spacing:0;min-height:54px;}
body.ab-visual .abfaq-q {font-size:17px;color:#f2f7f9;}
body.ab-visual .abfaq-answer-inner {font-size:16px;color:#c8dce4;}
body.ab-visual :is(.abfaq-foot-text,.abfaq-photo-label,.abcta-card-sub,.abcta-note) {color:#bed3dc;font-size:14px;}
body.ab-visual :is(.abnas-p,.abnas-first-text,.abnas-value-desc) {font-size:17px;line-height:1.75;}
body.ab-visual .abnas-p-big {font-size:24px;line-height:1.4;}
body.ab-visual .abcta-card {border-radius:8px;box-shadow:none;background:var(--ab-dark-2);border-color:#42616c;}
body.ab-visual .abcta-card-value {font-size:clamp(19px,2vw,25px);overflow-wrap:anywhere;}
/* Product detail: gallery proportions, thumbnail strip and scannable description. */
body.ab-visual.single-product #primary {margin-top:40px;}
body.ab-visual.single-product .site-content>.ast-container {max-width:1328px;padding-inline:var(--ab-gutter);}
body.ab-visual.woocommerce div.product .product_title {font-size:clamp(27px,2.7vw,38px);line-height:1.2;margin-bottom:22px;}
body.ab-visual.woocommerce .woocommerce-breadcrumb {font-size:13px;color:var(--ab-muted);line-height:1.6;margin-bottom:18px;}
body.ab-visual.woocommerce .woocommerce-breadcrumb a {color:var(--ab-link);}
body.ab-visual.woocommerce div.product .woocommerce-product-gallery {background:var(--ab-paper);border:1px solid var(--ab-line);border-radius:12px;padding:12px;overflow:hidden;}
body.ab-visual.woocommerce div.product .woocommerce-product-gallery__image:not(.zoomImg) {background:var(--ab-paper);}
body.ab-visual.woocommerce div.product .woocommerce-product-gallery__image a img {height:440px;max-height:440px;object-fit:contain;}
body.ab-visual.woocommerce div.product .woocommerce-product-gallery .flex-viewport {height:440px!important;}
body.ab-visual.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs {display:flex;gap:10px;overflow-x:auto;padding:12px 0 8px;scrollbar-width:thin;scrollbar-color:#6e929e #e4edef;}
body.ab-visual.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li {flex:0 0 68px;width:68px!important;float:none;margin:0!important;}
body.ab-visual.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs img {height:68px;width:68px;object-fit:cover;border:2px solid transparent;border-radius:5px;opacity:.7;}
body.ab-visual.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs img.flex-active {border-color:var(--ab-link);opacity:1;}
body.ab-visual.woocommerce div.product :is(p.price,span.price) {color:var(--ab-link)!important;font-size:32px!important;}
body.ab-visual.woocommerce div.product .summary {color:var(--ab-muted);font-size:17px;}
body.ab-visual.woocommerce div.product .summary .woocommerce-product-details__short-description {font-size:16px;line-height:1.7;}
body.ab-visual.woocommerce div.product .product_meta {font-size:13px;color:var(--ab-muted);line-height:1.8;}
body.ab-visual.woocommerce div.product .product_meta a {color:var(--ab-link);}
body.ab-visual.woocommerce div.product form.cart {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:24px;}
body.ab-visual.woocommerce div.product form.cart .quantity {margin:0;}
body.ab-visual.woocommerce .quantity .qty {min-height:50px;width:78px;border-color:#9bb4be!important;}
body.ab-visual.woocommerce :is(a.button,button.button,input.button),
body.ab-visual :is(.wc-block-components-button,.wp-block-button__link) {
  background:var(--ab-link)!important;color:#fff!important;border-radius:6px!important;
  box-shadow:none!important;min-height:48px;font:700 16px/1.4 var(--ab-font);text-transform:none;
  padding:12px 22px!important;text-align:center;
}
body.ab-visual.woocommerce :is(a.button,button.button,input.button):hover {background:#19596c!important;color:#fff!important;transform:none!important;box-shadow:none!important;}
body.ab-visual.woocommerce div.product .woocommerce-tabs {clear:both;padding-top:32px;}
body.ab-visual.woocommerce div.product .woocommerce-tabs ul.tabs {margin-bottom:36px;border-color:var(--ab-line);}
body.ab-visual.woocommerce div.product .woocommerce-tabs ul.tabs li a {font-size:16px;padding:16px 18px;}
body.ab-visual :is(.abz,.abm) {max-width:940px;line-height:1.75;color:var(--ab-muted);}
body.ab-visual :is(.abz .abz-h2,.abm .abm-h2) {font-size:clamp(24px,2.4vw,30px);font-weight:700;}
body.ab-visual :is(.abz .abz-h3,.abm .abm-h3) {font-size:19px;}
body.ab-visual :is(.abz-lead,.abm-lead,.abz-list li,.abm-list li,.abz-fit p,.abm-fit p) {font-size:17px;color:var(--ab-muted);}
body.ab-visual :is(.abz-block,.abm-block) {margin-bottom:48px;}
body.ab-visual :is(.abz-fit,.abm-fit,.abz-block-muted,.abm-block-muted) {padding:28px;border-color:var(--ab-line);border-radius:12px;background:var(--ab-paper);}
body.ab-visual :is(.abz-spec,.abm-spec,.abz-compare) {width:100%;font-size:15px;}
body.ab-visual :is(.abz-spec,.abm-spec) :is(th,td) {font-size:16px;padding:14px 12px;}
body.ab-visual :is(.abz-spec,.abm-spec) th {color:var(--ab-muted);}
body.ab-visual .abz-compare .abz-no {color:#586e77;}
body.ab-visual :is(.abz-final,.abm-final) {background:var(--ab-dark);border-radius:12px;}
body.ab-visual :is(.abz-faq,.abm-faq) {border-radius:8px;}
body.ab-visual :is(.abz-faq,.abm-faq) summary {font-size:16px;padding:20px;}
body.ab-visual :is(.abz-faq,.abm-faq) p {font-size:16px;}
/* Archive and related-product cards. */
body.ab-visual.woocommerce ul.products li.product {background:#fff;border:1px solid var(--ab-line);border-radius:12px;overflow:hidden;padding-bottom:20px;}
body.ab-visual.woocommerce ul.products li.product .astra-shop-thumbnail-wrap {background:var(--ab-paper);}
body.ab-visual.woocommerce ul.products li.product a img {height:240px;object-fit:contain;padding:16px;margin-bottom:0;}
body.ab-visual.woocommerce ul.products li.product .astra-shop-summary-wrap {padding:20px 20px 0;}
body.ab-visual.woocommerce ul.products li.product .woocommerce-loop-product__title {font-size:19px;line-height:1.35;}
body.ab-visual.woocommerce ul.products li.product .price {font-size:20px;color:var(--ab-link);}
body.ab-visual.woocommerce ul.products li.product .ast-woo-product-category {font-size:13px;color:var(--ab-muted);}
/* Modal presentation. Form markup, guard fields, validation and mail stay untouched. */
body.ab-visual :is(.abhero-dialog,.abtcta-dialog,.abrez-dialog) {max-width:540px;padding:32px;border-radius:12px;max-height:calc(100dvh - 32px);color:var(--ab-ink);}
body.ab-visual :is(.abhero-x,.abtcta-x,.abrez-x) {width:44px;height:44px;right:10px;top:10px;color:var(--ab-ink);border-radius:6px;}
body.ab-visual :is(.abhero-modal-title,.abtcta-modal-title,.abrez-title) {padding-right:36px;font-size:25px;}
body.ab-visual :is(.abhero-modal-lead,.abtcta-modal-lead,.abrez-lead) {font-size:15px;color:var(--ab-muted);}
body.ab-visual .wpcf7 :is(input[type=text],input[type=email],input[type=tel],input[type=date],textarea,select) {font-size:16px!important;min-height:48px;border:1px solid #94aeb9!important;border-radius:6px!important;background:#fff;color:var(--ab-ink);}
body.ab-visual .wpcf7 .wpcf7-acceptance label {color:var(--ab-muted);font-size:14px;}
body.ab-visual .wpcf7 :is(.wpcf7-acceptance a,.abrez-switch a) {color:var(--ab-link);text-decoration:underline;}
body.ab-visual .wpcf7 input.wpcf7-submit:disabled {background:#d9e2e6;color:#536b75!important;border-color:#c3d2d8;cursor:not-allowed;}
/* Secondary pages: compact headers and consistent reading measure. */
body.ab-visual .abhdpe-inner {max-width:1328px;padding-inline:var(--ab-gutter);}
body.ab-visual .abhdpe-sec {padding:var(--ab-space) 0;}
body.ab-visual .abhdpe-sec-dark {background:var(--ab-dark);}
body.ab-visual :is(.abcon-hero,.abblog-hero) {min-height:480px;padding-inline:max(var(--ab-gutter),calc((100vw - 1200px)/2));}
body.ab-visual .abhdpe-hero-grid {display:block;}
body.ab-visual .abhdpe-hero-left {padding:56px 0;max-width:760px;}
body.ab-visual .abhdpe-h1 {font-size:clamp(34px,4vw,56px);line-height:1.12;text-shadow:none;}
body.ab-visual .abhdpe-h1-claim {font-style:normal;color:#9ddcec;background:none;-webkit-text-fill-color:currentColor;}
body.ab-visual .abhdpe-lead {color:#d0e0e6;font-size:17px;max-width:62ch;}
body.ab-visual .abhdpe-vid-overlay {background:linear-gradient(90deg,rgba(16,39,48,.97),rgba(16,39,48,.6));}
body.ab-visual .abhdpe-badge {border:0;background:none;border-radius:0;padding:0;color:#a4dfed;font-size:12px;}
body.ab-visual .abhdpe-badge-dot {display:none;}
body.ab-visual .abhdpe-shimmer::after {display:none;}
body.ab-visual :is(.abcon-road,.abcon-buy) {border-radius:12px;box-shadow:none;}
body.ab-visual :is(.abcon-road-desc,.abcon-steps li,.abhdpe-fqdi) {font-size:16px;color:var(--ab-muted);}
body.ab-visual :is(.abcon-cb-desc,.abcon-cb-label,.abcon-dl-lbl,.abhdpe-sl) {color:#bed3dc;}
body.ab-visual .abhdpe-fqb {text-transform:none;min-height:56px;}
body.ab-visual .abhdpe-fqq {font-size:17px;}
body.ab-visual .abcon-legal {background:var(--ab-dark);}
body.ab-visual .abcon-legal a {color:#c6dae3!important;font-size:14px;}
body.ab-visual .abgal-wrapper {max-width:1328px;padding:var(--ab-space) var(--ab-gutter);}
body.ab-visual .abgal-h1 span {color:var(--ab-link);}
body.ab-visual .abgal-filters {justify-content:flex-start;gap:10px;}
body.ab-visual .abgal-filter-btn {border-radius:6px;min-height:46px;font-size:15px;text-transform:none;padding:10px 18px;}
body.ab-visual .abgal-filter-btn.abgal-active {box-shadow:none;background:var(--ab-link);color:#fff;border-color:var(--ab-link);}
body.ab-visual .abgal-item {border-radius:10px;box-shadow:none;}
body.ab-visual .abgal-lb-close {min-width:48px;min-height:48px;}
body.ab-visual .abpp-hero {min-height:240px;background:var(--ab-dark);padding:40px var(--ab-gutter);}
body.ab-visual .abpp-hero .abhdpe-hero-left {padding:0;}
body.ab-visual .abpp-document {font-size:17px;line-height:1.85;color:var(--ab-ink);}
body.ab-visual .abpp-document a {color:var(--ab-link)!important;}
body.ab-visual .abpp-meta {color:var(--ab-muted);}
body.ab-visual .wp-block-latest-posts__list {gap:32px;}
body.ab-visual .wp-block-latest-posts__post-title {color:var(--ab-ink);font-family:var(--ab-heading);font-size:25px;line-height:1.3;}
body.ab-visual.single-post .entry-content {max-width:780px;margin-inline:auto;font-size:18px;line-height:1.8;}
body.ab-visual.single-post .entry-title {font-size:clamp(30px,3.4vw,46px);}
/* Woo blocks: presentation only, no checkout structure or controls changed. */
body.ab-visual :is(.wc-block-cart,.wc-block-checkout) {font-family:var(--ab-font);color:var(--ab-ink);}
body.ab-visual :is(.wc-block-cart,.wc-block-checkout) :is(input,select,textarea) {font-size:16px;}
body.ab-visual .wc-block-grid__product {border:1px solid var(--ab-line);border-radius:10px;padding:16px;}
body.ab-visual .wc-block-grid__product-image img {height:240px;object-fit:contain;}
body.ab-visual .wc-block-grid__product-title {font-size:18px;line-height:1.4;color:var(--ab-ink);}
body.ab-visual .wc-block-grid__product-link {text-decoration:none;color:var(--ab-link);}
body.ab-visual.woocommerce-account .woocommerce {max-width:960px;margin:40px auto 72px;}
body.ab-visual.woocommerce-account :is(input,select) {font-size:16px;min-height:46px;}
/* Footer, with legible legal/contact information and original logo. */
body.ab-visual .abft-footer {--abft-navy:#102730;--abft-text:#c4d7df;--abft-text-dim:#afc5ce;--abft-blue:#a4dfed;--abft-blue-dim:#95c5d2;--abft-accent-dim:#9fd8e6;width:100%;margin:0;box-shadow:none;}
body.ab-visual .site-primary-footer-wrap {padding:0;}
body.ab-visual .site-primary-footer-wrap .ast-builder-grid-row-container-inner {max-width:none;}
body.ab-visual .abft-inner {max-width:1328px;padding-inline:var(--ab-gutter);}
body.ab-visual .abft-main {padding-top:56px;}
body.ab-visual .abft-hero-logo {text-align:left;margin-bottom:36px;}
body.ab-visual .abft-logo {height:58px;filter:brightness(0) invert(1);}
body.ab-visual .abft-hero-line {margin-left:0;animation:none;background:#61c0db;}
body.ab-visual .abft-tagline {color:#a7ddea;letter-spacing:.12em;}
body.ab-visual .abft-cols {gap:60px;padding-bottom:40px;}
body.ab-visual .abft-col-desc {font-size:16px;line-height:1.75;}
body.ab-visual .abft-col-heading {font-size:14px;color:#f0f7fa;}
body.ab-visual .abft-badge {background:none;border:0;padding:0;border-radius:0;font-size:14px;color:#c4d7df;}
body.ab-visual .abft-nav-link {font-size:16px;min-height:44px;}
body.ab-visual .abft-contact-link {font-size:16px;color:#d5e6ec;overflow-wrap:anywhere;}
body.ab-visual .abft-contact-text {font-size:14px;}
body.ab-visual :is(.abft-legal-link,.abft-copyright,.abft-agency) {font-size:13px;line-height:1.6;}
body.ab-visual .abft-copyright-link {color:#c4d7df;}
body.ab-visual .abft-divider {display:none;}
body.ab-visual .abft-bottom {padding:24px 0;border-top:1px solid #39525d;}
/* Remove entrance opacity only on content reveals (never tabs, dialogs or lightboxes). */
body.ab-visual :is(.abtb-card,.abst-header,.abpr-header,.abpr-card,.abpr-note,.abpm-header,.abpm-feature-box,.abpm-showcase,.abfaq-header,.abfaq-visual,.abfaq-item,.abfaq-foot,.abnas-header,.abnas-story,.abnas-values,.abnas-first,.abfn-item,.abcta-content,.abcta-card,.abcta-note,.abft-hero-logo,.abft-col,.abhdpe-rv) {opacity:1;transform:none;transition:none;}
@media (min-width:769px) and (max-width:1100px) {
 body.ab-visual .abtb-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
 body.ab-visual .absk-tiles {grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
 body.ab-visual .absk-grid-2 {grid-template-columns:repeat(2,minmax(0,1fr));}
 body.ab-visual .absk-grid-3 {grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;}
 body.ab-visual :is(.absk-tile-body,.absk-card-body,.absk-mcard-body) {padding:20px;}
 body.ab-visual .absk-card-title {font-size:22px;}
 body.ab-visual .abft-cols {gap:32px;}
}
@media (max-width:921px) {
 body.ab-visual .main-header-bar {padding-block:0;}
 body.ab-visual .custom-logo {width:112px;max-height:48px;}
 body.ab-visual.home .uagb-block-1e5d1737 {padding:48px var(--ab-gutter)!important;min-height:0;}
 body.ab-visual .ab-hero-content {width:65%;}
 body.ab-visual .abst-panel {grid-template-columns:minmax(0,1fr) 250px;gap:24px;}
}
@media (max-width:768px) {
 body.ab-visual {--ab-space:56px;--ab-gutter:22px;}
 body.ab-visual.home .uagb-block-1e5d1737 {padding:36px var(--ab-gutter) 260px!important;}
 body.ab-visual.home .uagb-block-1e5d1737 .uagb-container__video-wrap {top:auto;left:0;bottom:0;width:100%;height:270px;}
 body.ab-visual.home .uagb-block-1e5d1737::before {background:linear-gradient(180deg,#102730 0%,#102730 calc(100% - 270px),rgba(16,39,48,.12) calc(100% - 160px),rgba(16,39,48,0) 100%)!important;}
 body.ab-visual.home .uagb-block-1e5d1737 video {object-position:50% 60%;}
 body.ab-visual .ab-hero-content {width:100%;max-width:620px;}
 body.ab-visual .ab-h1 {font-size:36px;line-height:1.08;}
 body.ab-visual .ab-claim {font-size:23px;margin-bottom:20px;}
 body.ab-visual .ab-sub {font-size:16px;line-height:1.65;margin-bottom:20px;}
 body.ab-visual .ab-pills {gap:8px 14px;margin-bottom:22px;}
 body.ab-visual .ab-pill {font-size:12px;}
 body.ab-visual .ab-cta-group {gap:10px;}
 body.ab-visual .ab-cta-note {text-align:left;}
 body.ab-visual .abtb-grid {grid-template-columns:1fr;gap:22px;}
 body.ab-visual .abtb-card {display:grid;grid-template-columns:44px minmax(0,1fr);gap:18px;padding-top:22px;}
 body.ab-visual .abtb-icon-ring {margin:0;}
 body.ab-visual .abtb-card-title {margin-bottom:8px;}
 body.ab-visual .abtcta {padding:26px 20px;margin-top:32px;}
 body.ab-visual :is(.abst-panel,.abpm-panel-inner,.abpr-grid,.absk-grid-2,.absk-grid-3,.absk-tiles) {grid-template-columns:minmax(0,1fr);}
 body.ab-visual .abst-tabs {grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;}
 body.ab-visual .abst-tab {padding:14px 12px;}
 body.ab-visual .abst-tab-label {font-size:14px;}
 body.ab-visual :is(.abst-panels,.abpm-showcase) {padding:24px 20px;}
 body.ab-visual :is(.abpr-body,.absk-card-body,.absk-tile-body) {padding:24px 20px;}
 body.ab-visual .abpr-spec li {grid-template-columns:86px minmax(0,1fr);gap:12px;}
 body.ab-visual .absk-tile {display:grid;grid-template-columns:110px minmax(0,1fr);}
 body.ab-visual .absk-tile-img {aspect-ratio:auto;padding:8px;border:0;}
 body.ab-visual .absk-tile-body {padding:18px 16px;}
 body.ab-visual .absk-tile-title {font-size:19px;}
 body.ab-visual .absk-tile-desc {font-size:14px;}
 body.ab-visual .absk-tile-link {font-size:14px;color:var(--ab-link);}
 body.ab-visual .absk-mcard-img {aspect-ratio:1/1;}
 body.ab-visual .absk-close-box {padding:28px 22px;}
 body.ab-visual :is(.abpr-cta,.absk-card-cta,.absk-close-cta) a {width:100%;}
 body.ab-visual .abfaq-trigger {padding:20px 0;}
 body.ab-visual .abfaq-q {font-size:16px;}
 body.ab-visual.single-product #primary {margin-top:24px;}
 body.ab-visual.woocommerce div.product .woocommerce-product-gallery__image a img {height:300px;max-height:300px;}
 body.ab-visual.woocommerce div.product .woocommerce-product-gallery .flex-viewport {height:300px!important;}
 body.ab-visual.woocommerce div.product .woocommerce-product-gallery {padding:8px;margin-bottom:28px;}
 body.ab-visual.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs li {flex-basis:58px;width:58px!important;}
 body.ab-visual.woocommerce div.product .woocommerce-product-gallery .flex-control-thumbs img {width:58px;height:58px;}
 body.ab-visual.woocommerce div.product .product_title {font-size:29px;}
 body.ab-visual.woocommerce div.product .woocommerce-tabs {padding-top:12px;}
 body.ab-visual.woocommerce div.product .woocommerce-tabs ul.tabs li a {padding:14px 12px;}
 body.ab-visual :is(.abz-fit,.abm-fit,.abz-block-muted,.abm-block-muted,.abz-final,.abm-final) {padding:24px 18px;}
 body.ab-visual :is(.abz-spec,.abm-spec) :is(th,td) {padding:12px 6px;font-size:14px;overflow-wrap:anywhere;}
 body.ab-visual .abz-compare :is(th,td) {padding:10px 6px;font-size:13px;overflow-wrap:anywhere;}
 body.ab-visual.woocommerce ul.products li.product a img {height:180px;padding:10px;}
 body.ab-visual.woocommerce ul.products li.product .astra-shop-summary-wrap {padding:16px 14px 0;}
 body.ab-visual.woocommerce ul.products li.product .woocommerce-loop-product__title {font-size:18px;}
 body.ab-visual :is(.abhero-modal,.abtcta-modal,.abrez-modal) {padding:12px;}
 body.ab-visual :is(.abhero-dialog,.abtcta-dialog,.abrez-dialog) {padding:26px 20px;max-height:calc(100dvh - 24px);}
 body.ab-visual :is(.abhero-modal-title,.abtcta-modal-title,.abrez-title) {font-size:23px;}
 body.ab-visual :is(.abcon-hero,.abblog-hero) {min-height:0;}
 body.ab-visual .abhdpe-hero-left {padding:40px 0;}
 body.ab-visual .abhdpe-h1 {font-size:34px;}
 body.ab-visual .abhdpe-lead {font-size:16px;line-height:1.65;}
 body.ab-visual .abhdpe-badge {font-size:11px;}
 body.ab-visual .abhdpe-hero-pills {gap:8px;}
 body.ab-visual .abhdpe-hpill {font-size:12px;}
 body.ab-visual .abcon-roads {gap:18px;}
 body.ab-visual .abcon-road {padding:26px 22px;}
 body.ab-visual .abpp-hero {min-height:0;padding:36px var(--ab-gutter);}
 body.ab-visual .abpp-document {font-size:16px;}
 body.ab-visual .abft-cols {grid-template-columns:1fr;gap:32px;}
 body.ab-visual .abft-hero-logo {margin-bottom:32px;}
 body.ab-visual .abft-main {padding-top:40px;}
 body.ab-visual .abft-bottom-inner {align-items:flex-start;text-align:left;flex-direction:column;gap:14px;}
 body.ab-visual .abft-copyright {text-align:left;}
 body.ab-visual .abft-legal-link {padding-block:8px;}
}
@media (prefers-reduced-motion:reduce) {
 body.ab-visual *, body.ab-visual *::before, body.ab-visual *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}
}

/* Final cascade adjustments against Astra and per-block styles. */
body.ab-visual .ast-primary-header-bar .ast-builder-grid-row {min-height:78px;}
body.ab-visual .ast-primary-header-bar {height:auto;}
body.ab-visual.home .uagb-block-1e5d1737 video {opacity:1;}
body.ab-visual.home .uagb-block-1e5d1737::before {content:"";position:absolute;inset:0;pointer-events:none;}
body.ab-visual .abst-panel-text {max-width:64ch;}

/* The old short descriptions have their own inline stylesheet. */
body.ab-visual .abz-short .abz-btn {background:var(--ab-link);box-shadow:none;}
body.ab-visual :is(.abz-price-sub,.abm-short p) {font-size:16px;color:var(--ab-muted);}
body.ab-visual .single-product-category a {color:var(--ab-link);font-size:14px;}
body.ab-visual .abz-short-cta>br {display:none;}
body.ab-visual .abz-short-cta {align-items:stretch;}
body.ab-visual .abz-reassure {font-size:14px;color:var(--ab-muted);}
body.ab-visual .abtb-card-title {overflow-wrap:normal;}
@media(max-width:768px) {
 body.ab-visual .abz-short-cta :is(.abz-btn,.abz-btn-ghost) {width:100%;}
 body.ab-visual.woocommerce div.product .woocommerce-product-gallery__image a img {height:260px;max-height:260px;}
 body.ab-visual.woocommerce div.product .woocommerce-product-gallery .flex-viewport {height:260px!important;}
}
/* Astra gives direct children of Custom HTML sections an unbounded width. */
body.ab-visual .entry-content :is(.abtb-inner,.abst-inner,.abhnd-inner,.abpr-inner,.abpm-inner,.abfaq-inner,.abnas-inner,.abcta-inner,.absk-inner) {max-width:1200px;}
body.ab-visual #ast-desktop-header .ast-builder-grid-row {grid-template-columns:1fr auto;}
body.ab-visual #ast-desktop-header .site-header-primary-section-left {justify-content:space-between;}
body.ab-visual #ast-desktop-header .ast-builder-menu-1 {margin-left:auto;}
body.ab-visual .ast-primary-header-bar {padding-block:0!important;}
body.ab-visual .abpp-hero .abhdpe-vid-overlay {background:var(--ab-dark)!important;}
body.ab-visual .abpp-hero .abhdpe-hero-left {padding:0!important;}
@media(max-width:480px) {
 body.ab-visual.woocommerce ul.products {grid-template-columns:minmax(0,1fr);}
 body.ab-visual.woocommerce ul.products li.product {width:100%;}
 body.ab-visual.woocommerce ul.products li.product a img {height:230px;}
}
body.ab-visual .entry-content :is(.abtb-inner,.abst-inner,.abhnd-inner,.abpr-inner,.abpm-inner,.abfaq-inner,.abnas-inner,.abcta-inner,.absk-inner) {max-width:1200px!important;}
body.ab-visual .absk-tile-img {position:relative;display:block;flex:none;overflow:hidden;aspect-ratio:4/3;}
body.ab-visual .absk-tile-img img {position:absolute;inset:16px;width:calc(100% - 32px);height:calc(100% - 32px);object-fit:contain;}
body.ab-visual .absk-tile-link {color:var(--ab-link);}
@media(max-width:768px){
 body.ab-visual .absk-tile-img {aspect-ratio:auto;min-height:170px;}
 body.ab-visual .absk-tile-img img {inset:8px;width:calc(100% - 16px);height:calc(100% - 16px);}
}
body.ab-visual .ast-primary-header-bar {min-height:78px;}
body.ab-visual.woocommerce.archive .woocommerce-products-header__title {font-size:clamp(32px,3.4vw,46px);}
body.ab-visual #secondary :is(h2,h3,.widget-title) {font-size:21px;margin-bottom:16px;}
body.ab-visual #secondary :is(a,label) {color:var(--ab-muted);font-size:15px;}
body.ab-visual #secondary input[type=number] {min-width:92px;font-size:15px;padding:8px;border:1px solid #94aeb9;border-radius:5px;}
@media(min-width:481px) and (max-width:921px) {
 body.ab-visual.woocommerce ul.products {grid-template-columns:repeat(2,minmax(0,1fr));}
}
/* Basic boats: existing drive chooser and totals, visual treatment only. */
body.ab-visual .abp {max-width:940px;font-size:17px;line-height:1.75;color:var(--ab-muted);}
body.ab-visual .abp .abp-h2 {font-size:clamp(24px,2.4vw,30px);font-weight:700;}
body.ab-visual .abp-block {margin-bottom:48px;}
body.ab-visual :is(.abp-drive,.abp-block-muted,.abx-panel) {background:var(--ab-paper);border:1px solid var(--ab-line);border-radius:12px;box-shadow:none;}
body.ab-visual :is(.abp-drive-lead,.abp-list li,.abp-opt-desc,.abp-drive-hint,.abp-reassure) {font-size:16px;color:var(--ab-muted);}
body.ab-visual .abp-opt {border-radius:8px;}
body.ab-visual .abp-opt>br {display:none;}
body.ab-visual :is(.abp-btn,.abx-btn) {display:inline-flex;align-items:center;justify-content:center;background:var(--ab-link);color:#fff!important;border-radius:6px;box-shadow:none;padding:14px 22px;min-height:50px;font-size:16px;font-weight:700;}
body.ab-visual :is(.abp-btn,.abx-btn):hover {background:#19596c;box-shadow:none;transform:none;}
body.ab-visual .abp-btn-ghost {border-radius:6px;min-height:50px;font-size:16px;color:var(--ab-link)!important;background:#fff;border-color:#a5bec7;}
body.ab-visual .abp-final {background:var(--ab-dark);border-radius:12px;}
body.ab-visual .abp-final .abp-btn-ghost {background:transparent;color:#d9f2f8!important;border-color:#7cabb8;}
body.ab-visual .abp-spec :is(th,td) {font-size:16px;padding:14px 12px;}
body.ab-visual .abp-spec th {color:var(--ab-muted);}
body.ab-visual .abp-faq {border-radius:8px;}
body.ab-visual .abp-faq :is(summary,p) {font-size:16px;}
body.ab-visual .abx-sub {color:var(--ab-muted);font-size:14px;}
body.ab-visual .abx-add {flex-wrap:wrap;gap:4px 6px;}
body.ab-visual .abx-trust>br {display:none;}
body.ab-visual #ast-mobile-header .menu-link {display:flex;align-items:center;min-height:48px;padding:12px 24px;color:var(--ab-ink);font:700 16px/1.4 var(--ab-font);}
body.ab-visual #ast-mobile-header .current-menu-item>.menu-link {color:var(--ab-link);}
body.ab-visual .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg {fill:var(--ab-ink);}
@media(max-width:768px){
 body.ab-visual .abp-drive {padding:24px 16px;}
 body.ab-visual .abp-spec :is(th,td) {padding:12px 6px;font-size:14px;overflow-wrap:anywhere;}
 body.ab-visual .abx-panel {padding:24px 18px;}
}
body.ab-visual:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) .site-content>.ast-container {padding-inline:var(--ab-gutter);max-width:1328px;}
body.ab-visual:is(.woocommerce-cart,.woocommerce-checkout) .entry-content>.alignwide {margin-inline:0;width:100%;max-width:100%;}
body.ab-visual :is(.wc-block-cart,.wc-block-checkout) a {color:var(--ab-link);}
body.ab-visual :is(.wc-block-cart,.wc-block-checkout) .wc-block-components-product-name {font-size:18px;line-height:1.4;}
body.ab-visual .wc-block-checkout .wc-block-components-text-input input {border-color:#94aeb9;border-radius:6px;}
body.ab-visual .wc-block-checkout .wc-block-components-title {font-size:24px;}
body.ab-visual:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) #primary {padding-top:32px;}
@media(max-width:600px) {
 body.ab-visual .abp-opt {display:grid;grid-template-columns:20px minmax(0,1fr) 46px;gap:10px;align-items:start;padding:16px 12px;}
 body.ab-visual .abp-opt input {grid-column:1;grid-row:1;margin-top:3px;}
 body.ab-visual .abp-opt-thumb {grid-column:3;grid-row:1;}
 body.ab-visual .abp-opt-main {grid-column:2;grid-row:1;}
 body.ab-visual .abp-opt-price {grid-column:2 / -1;grid-row:2;text-align:left;}
}
