/* Shared content components. Legacy product marker remains an equal-specificity alias. */
:is(.ssa-content,.ssa-product-detail){--blue:#3690dc;--cyan:#4ec5ee;--ink:#10171e;--muted:#65717b;--line:#dce3e8;--paper:#f3f6f8;--dark:#0c131b}:is(.ssa-content,.ssa-product-detail),:is(.ssa-content,.ssa-product-detail) *{box-sizing:border-box}:is(.ssa-content,.ssa-product-detail){scroll-behavior:smooth}:is(.ssa-content,.ssa-product-detail){margin:0;font-family:'DM Sans',sans-serif;color:var(--ink);background:#fff;font-size:16px;line-height:1.6}:is(.ssa-content,.ssa-product-detail) a{color:inherit;text-decoration:none}:is(.ssa-content,.ssa-product-detail) a{ -webkit-tap-highlight-color:transparent}:is(.ssa-content,.ssa-product-detail) a:focus-visible,:is(.ssa-content,.ssa-product-detail) summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}:is(.ssa-content,.ssa-product-detail) img{max-width:100%;height:auto;display:block}:is(.ssa-content,.ssa-product-detail) h1,:is(.ssa-content,.ssa-product-detail) h2,:is(.ssa-content,.ssa-product-detail) h3{font-family:Manrope,sans-serif;line-height:1.12;letter-spacing:-.045em;margin:0 0 22px}:is(.ssa-content,.ssa-product-detail) h1{font-size:clamp(44px,5.5vw,80px);font-weight:600}:is(.ssa-content,.ssa-product-detail) h2{font-size:clamp(32px,3.3vw,48px);font-weight:600}:is(.ssa-content,.ssa-product-detail) h3{font-size:24px}:is(.ssa-content,.ssa-product-detail) p{margin:0 0 20px}:is(.ssa-content,.ssa-product-detail) .wrap{max-width:1240px;margin:auto;padding:0 40px}:is(.ssa-content,.ssa-product-detail) .eyebrow{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin-bottom:24px}:is(.ssa-content,.ssa-product-detail) .muted{color:var(--muted)}:is(.ssa-content,.ssa-product-detail) .small{font-size:14px}:is(.ssa-content,.ssa-product-detail) .btn{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:12px 23px;background:var(--blue);color:#fff;border:1px solid var(--blue);border-radius:4px;font-size:14px;font-weight:700;cursor:pointer;transition:background .18s,transform .18s}:is(.ssa-content,.ssa-product-detail) .btn:hover{background:#1978be;border-color:#1978be;transform:translateY(-2px)}:is(.ssa-content,.ssa-product-detail) .btn.light{background:var(--cyan);border-color:var(--cyan);color:#08212d}:is(.ssa-content,.ssa-product-detail) .btn.outline{background:transparent;border-color:#b9c5ce;color:var(--ink)}:is(.ssa-content,.ssa-product-detail) .dark .btn.outline{border-color:#54616c;color:white}:is(.ssa-content,.ssa-product-detail) .actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 22px}:is(.ssa-content,.ssa-product-detail) .dark{background:var(--dark);color:#fff}:is(.ssa-content,.ssa-product-detail) .hero{overflow:hidden;position:relative}:is(.ssa-content,.ssa-product-detail) .hero-grid{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:40px;min-height:610px;padding-top:72px;padding-bottom:72px}:is(.ssa-content,.ssa-product-detail) .hero h1 em{font-style:normal;color:var(--cyan)}:is(.ssa-content,.ssa-product-detail) .hero .lead{font-size:18px;max-width:470px;color:#b6c1cb;line-height:1.7}:is(.ssa-content,.ssa-product-detail) .hero .eyebrow{color:var(--cyan)}:is(.ssa-content,.ssa-product-detail) .hero-visual{position:relative;isolation:isolate;padding:35px 0}:is(.ssa-content,.ssa-product-detail) .hero-visual img{width:100%;position:relative;filter:drop-shadow(0 30px 35px #0008)}:is(.ssa-content,.ssa-product-detail) .hero-visual:before{content:'';position:absolute;z-index:-1;pointer-events:none;inset:8% -15%;background:radial-gradient(ellipse,#116ba344,transparent 68%)}:is(.ssa-content,.ssa-product-detail) .caption{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #34414c;margin:24px 0 0;padding:15px 0 0;font-size:12px;color:#8da0ae;letter-spacing:.07em}:is(.ssa-content,.ssa-product-detail) .section{padding:92px 0}:is(.ssa-content,.ssa-product-detail) .section-head{display:flex;align-items:end;justify-content:space-between;gap:30px}:is(.ssa-content,.ssa-product-detail) .section-head h2{max-width:600px;margin-bottom:0}:is(.ssa-content,.ssa-product-detail) .section-head p{max-width:345px;color:var(--muted);margin:0}:is(.ssa-content,.ssa-product-detail) .pale{background:var(--paper)}:is(.ssa-content,.ssa-product-detail) .feature-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:80px}:is(.ssa-content,.ssa-product-detail) .feature-grid>img{width:100%;max-height:470px;object-fit:contain}:is(.ssa-content,.ssa-product-detail) .feature-copy p{color:var(--muted);max-width:490px}:is(.ssa-content,.ssa-product-detail) .feature-copy .eyebrow{color:var(--blue)}:is(.ssa-content,.ssa-product-detail) .cta{padding:65px 0;background:#dff3fc}:is(.ssa-content,.ssa-product-detail) .cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}:is(.ssa-content,.ssa-product-detail) .cta h2{margin-bottom:10px}:is(.ssa-content,.ssa-product-detail) .cta p{margin:0;color:#4a6474}:is(.ssa-content,.ssa-product-detail) .breadcrumbs{font-size:13px;color:#7c909f;padding-top:24px}:is(.ssa-content,.ssa-product-detail) .breadcrumbs a{color:inherit}:is(.ssa-content,.ssa-product-detail) .detail-hero .hero-grid{min-height:540px;padding-top:40px;padding-bottom:65px;grid-template-columns:1fr 1.1fr}:is(.ssa-content,.ssa-product-detail) .detail-hero h1{font-size:62px}:is(.ssa-content,.ssa-product-detail) .subnav{border-bottom:1px solid var(--line);background:white}:is(.ssa-content,.ssa-product-detail) .subnav .wrap{display:flex;gap:34px;padding-top:19px;padding-bottom:19px;font-size:14px;font-weight:600}:is(.ssa-content,.ssa-product-detail) .benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}:is(.ssa-content,.ssa-product-detail) .benefits>div{border-top:2px solid var(--blue);padding-top:24px}:is(.ssa-content,.ssa-product-detail) .benefits h3{font-size:23px}:is(.ssa-content,.ssa-product-detail) .benefits p{color:var(--muted)}:is(.ssa-content,.ssa-product-detail) .spec-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:70px}:is(.ssa-content,.ssa-product-detail) .specs{width:100%;border-collapse:collapse;font-size:15px}:is(.ssa-content,.ssa-product-detail) .specs td,:is(.ssa-content,.ssa-product-detail) .specs th{text-align:left;padding:17px 8px;border-bottom:1px solid var(--line);vertical-align:top}:is(.ssa-content,.ssa-product-detail) .specs th{font-weight:500;color:var(--muted);width:38%}:is(.ssa-content,.ssa-product-detail) .faq{max-width:850px;margin:auto}:is(.ssa-content,.ssa-product-detail) details{border-bottom:1px solid var(--line);padding:22px 0}:is(.ssa-content,.ssa-product-detail) summary{font-size:18px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}:is(.ssa-content,.ssa-product-detail) summary:after{content:'+';color:var(--blue);font-size:24px}:is(.ssa-content,.ssa-product-detail) details p{color:var(--muted);padding-top:15px;margin-bottom:0;max-width:740px}
@media(min-width:1500px){:is(.ssa-content,.ssa-product-detail) .hero-grid{min-height:690px}}@media(max-width:1000px){:is(.ssa-content,.ssa-product-detail) .wrap{padding:0 28px}:is(.ssa-content,.ssa-product-detail) .hero-grid{gap:20px;min-height:550px}:is(.ssa-content,.ssa-product-detail) .hero h1{font-size:56px}:is(.ssa-content,.ssa-product-detail) .feature-grid{gap:35px}}@media(max-width:740px){:is(.ssa-content,.ssa-product-detail) .wrap{padding:0 22px}:is(.ssa-content,.ssa-product-detail) .hero-grid,:is(.ssa-content,.ssa-product-detail) .detail-hero .hero-grid{grid-template-columns:1fr;gap:5px;padding-top:55px;padding-bottom:40px}:is(.ssa-content,.ssa-product-detail) .hero h1,:is(.ssa-content,.ssa-product-detail) .detail-hero h1{font-size:48px}:is(.ssa-content,.ssa-product-detail) .hero .lead{font-size:17px}:is(.ssa-content,.ssa-product-detail) .hero-visual{padding:10px 0 0}:is(.ssa-content,.ssa-product-detail) .hero-visual img{max-height:330px;object-fit:contain}:is(.ssa-content,.ssa-product-detail) .section{padding:62px 0}:is(.ssa-content,.ssa-product-detail) .section-head{align-items:start;flex-direction:column;gap:20px}:is(.ssa-content,.ssa-product-detail) .feature-grid,:is(.ssa-content,.ssa-product-detail) .plans,:is(.ssa-content,.ssa-product-detail) .benefits,:is(.ssa-content,.ssa-product-detail) .spec-grid{grid-template-columns:1fr;gap:30px}:is(.ssa-content,.ssa-product-detail) .feature-grid>img{max-height:320px}:is(.ssa-content,.ssa-product-detail) .cta .wrap{flex-direction:column;align-items:start}:is(.ssa-content,.ssa-product-detail) .subnav .wrap{overflow-x:auto;white-space:nowrap;gap:24px}:is(.ssa-content,.ssa-product-detail) .spec-grid{gap:15px}:is(.ssa-content,.ssa-product-detail) .caption{font-size:11px}}@media(max-width:380px){:is(.ssa-content,.ssa-product-detail) .hero h1{font-size:42px}}@media(prefers-reduced-motion:reduce){:is(.ssa-content,.ssa-product-detail){scroll-behavior:auto}:is(.ssa-content,.ssa-product-detail),:is(.ssa-content,.ssa-product-detail) *{transition:none!important}}:is(.ssa-content,.ssa-product-detail) .detail-rows{display:grid;gap:48px}:is(.ssa-content,.ssa-product-detail) .detail-row{display:grid;grid-template-columns:300px 1fr;gap:65px;align-items:center;padding-bottom:48px;border-bottom:1px solid var(--line)}:is(.ssa-content,.ssa-product-detail) .detail-row:last-child{padding-bottom:0;border-bottom:0}:is(.ssa-content,.ssa-product-detail) .detail-crop{background:var(--paper);border-radius:8px;padding:25px}:is(.ssa-content,.ssa-product-detail) .detail-crop img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:4px}:is(.ssa-content,.ssa-product-detail) .detail-row .eyebrow{display:block;margin-bottom:14px}:is(.ssa-content,.ssa-product-detail) .detail-row h3{font-size:32px}:is(.ssa-content,.ssa-product-detail) .detail-row p{max-width:690px}:is(.ssa-content,.ssa-product-detail) .controls-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 55px;margin:0}:is(.ssa-content,.ssa-product-detail) .controls-grid>div{padding:25px 0;border-top:1px solid var(--line)}:is(.ssa-content,.ssa-product-detail) .controls-grid dt{font-size:18px;font-weight:700;margin-bottom:9px}:is(.ssa-content,.ssa-product-detail) .controls-grid dd{margin:0;color:var(--muted)}:is(.ssa-content,.ssa-product-detail) .routing-note{padding:24px;color:var(--ink);background:#e6f4fc;border-left:3px solid var(--blue);margin:24px 0}:is(.ssa-content,.ssa-product-detail) .routing-note p{margin:10px 0 0}@media(max-width:1000px){:is(.ssa-content,.ssa-product-detail) .detail-row{grid-template-columns:240px 1fr;gap:35px}}@media(max-width:740px){:is(.ssa-content,.ssa-product-detail) .detail-row{grid-template-columns:1fr;gap:24px}:is(.ssa-content,.ssa-product-detail) .detail-crop{max-width:300px}:is(.ssa-content,.ssa-product-detail) .detail-row h3{font-size:28px}:is(.ssa-content,.ssa-product-detail) .controls-grid{grid-template-columns:1fr}}
:is(.ssa-content,.ssa-product-detail) .hero h1{color:white}
:is(.ssa-content,.ssa-product-detail) .hero-visual{min-width:0}
:is(.ssa-content,.ssa-product-detail) .hero-visual img{max-height:440px;object-fit:contain}
:is(.ssa-content,.ssa-product-detail) .hero-visual .caption{clear:both}
:is(.ssa-content,.ssa-product-detail) .feature-grid>img{width:100%;object-fit:contain}
:is(.ssa-content,.ssa-product-detail) :is(.hero-grid,.feature-grid,.spec-grid)>*{min-width:0}
:is(.ssa-content,.ssa-product-detail) [id]{scroll-margin-top:24px}
:is(.ssa-content,.ssa-product-detail) .wp-block-group{margin-block-start:0;margin-block-end:0;max-width:none}
:is(.ssa-content,.ssa-product-detail) .wp-block-group.wrap{max-width:1240px;margin-inline:auto;width:100%}
:is(.ssa-content,.ssa-product-detail) .wp-block-group__inner-container{display:contents}
:is(.ssa-content,.ssa-product-detail) .ssa-source-image{margin:0;min-width:0}
:is(.ssa-content,.ssa-product-detail) .feature-grid>.ssa-source-image img{width:100%;max-height:470px;object-fit:contain}
:is(.ssa-content,.ssa-product-detail) .actions>p,:is(.ssa-content,.ssa-product-detail) .subnav p{margin:0}
:is(.ssa-content,.ssa-product-detail) .controls-grid h3{font-size:18px;letter-spacing:normal;margin:0 0 9px}
:is(.ssa-content,.ssa-product-detail) .wp-block-table table{width:100%;border-collapse:collapse}
@media(max-width:740px){:is(.ssa-content,.ssa-product-detail) .detail-hero h1{font-size:48px}:is(.ssa-content,.ssa-product-detail) .hero-visual img{max-height:330px}}

/* General-purpose content tables and notes, independent of page type. */
:is(.ssa-content,.ssa-product-detail) .table-list{overflow-x:auto;margin:0;width:100%;-webkit-overflow-scrolling:touch}
:is(.ssa-content,.ssa-product-detail) .table-list table{min-width:480px;margin:0}
:is(.ssa-content,.ssa-product-detail) .table-list th{width:auto;font-weight:700}
:is(.ssa-content,.ssa-product-detail) .table-list a{text-decoration:underline;text-underline-offset:3px}
:is(.ssa-content,.ssa-product-detail) .plan-note{font-size:14px;color:var(--muted);margin-top:24px}

/* Light notes keep their own contrast even inside a dark hero. */
:is(.ssa-content,.ssa-product-detail) .routing-note :is(h1,h2,h3,p){color:inherit}
:is(.ssa-content,.ssa-product-detail) .routing-note .eyebrow{color:#146aa9}
:is(.ssa-content,.ssa-product-detail) .routing-note a:not(.btn){color:#146aa9;text-decoration:underline;text-underline-offset:3px}

/* Keep section introductions separated from the following content.
   This follows the Gutenberg Group reset so its logical margin is preserved. */
:is(.ssa-content,.ssa-product-detail) .section-head{margin-block-end:48px}
@media(max-width:740px){:is(.ssa-content,.ssa-product-detail) .section-head{margin-block-end:32px}}

/* Repeated entries need an explicit row gap. Older Gutenberg Groups add
   an inner container (display:contents above), so style its children too. */
:is(.ssa-content,.ssa-product-detail) .controls-grid{row-gap:clamp(24px,3vw,32px)}
:is(.ssa-content,.ssa-product-detail) .controls-grid>div,
:is(.ssa-content,.ssa-product-detail) .controls-grid>.wp-block-group__inner-container>div{min-width:0;padding:0;border:0}
:is(.ssa-content,.ssa-product-detail) .controls-grid h3{margin-block-start:0;margin-block-end:10px}
:is(.ssa-content,.ssa-product-detail) .controls-grid p:last-child{margin-block-end:0}

/* Restore space after blue notes after the Gutenberg Group margin reset. */
:is(.ssa-content,.ssa-product-detail) .routing-note{margin-block-end:32px}
@media(max-width:740px){:is(.ssa-content,.ssa-product-detail) .routing-note{margin-block-end:24px}}

/* Space belongs to the outer table block, including any caption. */
:is(.ssa-content,.ssa-product-detail) :is(.wp-block-table,.table-list){margin-block-end:32px}
@media(max-width:740px){:is(.ssa-content,.ssa-product-detail) :is(.wp-block-table,.table-list){margin-block-end:24px}}

/* Native WooCommerce shortcode buttons must not inherit muted paragraph text. */
:is(.ssa-content,.ssa-product-detail) .add_to_cart_inline a.button,
:is(.ssa-content,.ssa-product-detail) .add_to_cart_inline a.button:visited {
    color: #fff;
    background-color: #146aa9;
    text-decoration: none;
}
:is(.ssa-content,.ssa-product-detail) .add_to_cart_inline a.button:hover,
:is(.ssa-content,.ssa-product-detail) .add_to_cart_inline a.button:focus-visible {
    color: #fff;
    background-color: #105581;
}
