:root { --sky-deep:     #0B1F3A; --sky-mid:      #1A4480; --sky-bright:   #2D7DD2; --sky-electric: #4DA6FF; --horizon:      #E8F1FB; --horizon-dark: #C8D4E3;  --signal:       #FD7D34; --signal-dark:  #E8501A; --signal-pale:  #FFF0EB;  --slate:        #6B7C93; --slate-light:  #C8D4E3; --off-white:    #F4F7FB; --white:        #FFFFFF;  --mid-blue:     #3C6093;  --star-filled:  #F5A623;
--star-empty:   var(--horizon-dark); --gap-xs:   4px;
--gap-sm:   8px;
--gap-sm2:  12px;
--gap-md:   16px;
--gap-lg:   24px;
--gap-xl:   32px;
--gap-2xl:  48px;
--gap-3xl:  60px;
--gap-4xl:  72px;
--gap-5xl:  96px;
--gap-6xl:  128px;
--gap-7xl:  256px; --radius-tag:     4px;
--radius-input:   8px;
--radius-card-sm: 12px;
--radius-card:    16px;
--radius-pill:    999px; --shadow-navbar:    0 3px 4px -2px rgba(0,0,0,0.15);
--shadow-card-hover: 0 12px 32px rgba(11,31,58,0.1);
--shadow-focus:     0 0 0 3px rgba(45,125,210,0.15); --max-width:        1440px;
--page-padding-x:   64px;
--section-padding-t: 48px;
--section-padding-b: 40px;
--navbar-height:    80px;
--card-grid-gap:    16px;
--card-padding:     24px;
--footer-height:    420px; --btn-atc-bg:           var(--signal);
--btn-atc-bg-hover:     var(--signal-dark);
--btn-atc-color:        #fff;
--btn-atc-font:         var(--font-body);
--btn-atc-size:         16px;
--btn-atc-weight:       600;
--btn-atc-gap:          8px;
--btn-atc-radius:       8px;
--btn-atc-transition:   background 0.25s, transform 0.2s, box-shadow 0.25s;
--btn-atc-hover-lift:   translateY(-2px);
--btn-atc-hover-shadow: 0 4px 12px rgba(253,125,52,0.35);
--btn-atc-success:      #27ae60; --font-display: 'DM Sans', sans-serif;
--font-body:    'DM Sans', sans-serif;
--font-mono:    'DM Mono', monospace;     }*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
img, picture, video, canvas, svg { display: block; max-width: 100%; }
input, button, textarea, select { font: inherit; }
a { color: inherit; text-decoration: none; }
ul, ol { list-style: none; }
button { cursor: pointer; border: none; background: none; } body {
font-family: var(--font-body);
font-weight: 400;
font-size: 16px;
letter-spacing: -0.5px;
line-height: 1.2;
color: var(--sky-deep);
background: var(--off-white);
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
} h1 {
font-family: var(--font-display);
font-weight: 600;
font-size: 72px;
letter-spacing: -1px;
line-height: 1.0;
color: var(--sky-deep);
}
h2 {
font-family: var(--font-display);
font-weight: 600;
font-size: 56px;
letter-spacing: -1px;
line-height: 1.0;
color: var(--sky-deep);
}
h2.article-heading {
font-size: 32px;
letter-spacing: -1px;
}
h3 {
font-family: var(--font-display);
font-weight: 600;
font-size: 24px;
letter-spacing: -1px;
line-height: 1.0;
color: var(--sky-deep);
}
h3.article-heading {
letter-spacing: -1px;
}
h4 {
font-family: var(--font-display);
font-weight: 600;
font-size: 20px;
letter-spacing: -1px;
line-height: 1.2;
color: var(--sky-deep);
} .lead {
font-family: var(--font-display);
font-weight: 500;
font-size: 20px;
letter-spacing: -0.5px;
line-height: 1.2;
}
.body-text {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
}
.body-muted {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.2;
}
.caption {
font-family: var(--font-display);
font-weight: 300;
font-size: 12px;
letter-spacing: -0.3px;
line-height: 1.2;
}
.eyebrow {
font-family: var(--font-mono);
font-size: 14px;
font-weight: 500;
text-transform: uppercase;
letter-spacing: 0.88px;
line-height: 1.0;
}
.contact-label {
font-family: var(--font-mono);
font-size: 11px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.7px;
line-height: 1.0;
} .accent { color: var(--sky-bright); } a:hover { color: var(--sky-electric); }
.link-primary {
font-weight: 500;
color: var(--sky-bright);
transition: color 0.2s;
}
.link-primary:hover { color: var(--sky-electric); }
.link-underline {
font-weight: 500;
color: var(--sky-bright);
text-decoration: underline;
text-underline-offset: 2px;
transition: color 0.2s;
}
.link-underline:hover { color: var(--sky-electric); } .skip-link {
position: absolute;
left: -9999px;
top: auto;
width: 1px;
height: 1px;
overflow: hidden;
z-index: 100000;
}
.skip-link:focus {
display: block;
left: 8px;
top: 8px;
width: auto;
height: auto;
padding: 12px 24px;
background: var(--sky-deep);
color: #fff;
font-size: 14px;
font-weight: 600;
border-radius: var(--radius-input);
z-index: 100000;
} .screen-reader-text {
clip: rect(1px, 1px, 1px, 1px);
clip-path: inset(50%);
height: 1px;
width: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
word-wrap: normal !important;
}
.screen-reader-text:focus {
clip: auto !important;
clip-path: none;
display: block;
height: auto;
width: auto;
left: 8px;
top: 8px;
padding: 12px 24px;
background: var(--sky-deep);
color: #fff;
font-size: 14px;
font-weight: 600;
border-radius: var(--radius-input);
z-index: 100000;
} ::selection {
background: var(--sky-bright);
color: #fff;
} :focus-visible {
outline: 2px solid var(--sky-bright);
outline-offset: 2px;
} @media (max-width: 1439px) {
h1 { font-size: 56px; letter-spacing: -1px; }
h2 { font-size: 44px; letter-spacing: -1px; }
}
@media (max-width: 1023px) {
h1 { font-size: 44px; letter-spacing: -1px; }
h2 { font-size: 36px; letter-spacing: -1px; }
h3 { font-size: 22px; }
.lead { font-size: 18px; }
}
@media (max-width: 767px) {
h1 { font-size: 36px; letter-spacing: -1px; }
h2 { font-size: 28px; letter-spacing: -1px; }
h3 { font-size: 20px; }
.lead { font-size: 15px; }
h2.article-heading { font-size: 24px; letter-spacing: -1px; }
}.container {
max-width: var(--max-width);
margin: 0 auto;
padding-left: var(--page-padding-x);
padding-right: var(--page-padding-x);
width: 100%;
} .section {
padding-top: var(--section-padding-t);
padding-bottom: var(--section-padding-b);
}
.section--white { background: var(--white); }
.section--off-white { background: var(--off-white); }
.section--dark { background: var(--sky-mid); }
.section--deep { background: var(--sky-deep); } .section__header {
display: flex;
flex-direction: column;
gap: var(--gap-lg);
margin-bottom: var(--gap-3xl);
}
.section__header--center {
align-items: center;
text-align: center;
} .grid {
display: grid;
gap: var(--card-grid-gap);
}
.grid--2 { grid-template-columns: repeat(2, 1fr); }
.grid--3 { grid-template-columns: repeat(3, 1fr); }
.grid--4 { grid-template-columns: repeat(4, 1fr); } .flex { display: flex; }
.flex-col { flex-direction: column; }
.flex-wrap { flex-wrap: wrap; }
.items-center { align-items: center; }
.items-start { align-items: flex-start; }
.items-end { align-items: flex-end; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.gap-xs  { gap: var(--gap-xs); }
.gap-sm  { gap: var(--gap-sm); }
.gap-sm2 { gap: var(--gap-sm2); }
.gap-md  { gap: var(--gap-md); }
.gap-lg  { gap: var(--gap-lg); }
.gap-xl  { gap: var(--gap-xl); }
.gap-2xl { gap: var(--gap-2xl); }
.gap-3xl { gap: var(--gap-3xl); } .spacer-sm  { height: var(--gap-sm); }
.spacer-md  { height: var(--gap-md); }
.spacer-lg  { height: var(--gap-lg); }
.spacer-xl  { height: var(--gap-xl); }
.spacer-2xl { height: var(--gap-2xl); }
.spacer-3xl { height: var(--gap-3xl); } .full-bleed {
width: 100vw;
margin-left: calc(-50vw + 50%);
} .sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
} @media (max-width: 1023px) {
.container {
padding-left: 32px;
padding-right: 32px;
}
.section {
padding-top: 40px;
padding-bottom: 32px;
}
.grid--3 { grid-template-columns: repeat(2, 1fr); }
.grid--4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
.container {
padding-left: 20px;
padding-right: 20px;
}
.section {
padding-top: 32px;
padding-bottom: 24px;
}
.grid--2,
.grid--3,
.grid--4 { grid-template-columns: 1fr; }
.section__header {
margin-bottom: var(--gap-xl);
}
}.btn-primary {
display: inline-flex;
align-items: center;
justify-content: center;
height: 64px;
padding: 0 24px;
border-radius: 8px;
background: #E9732B;
border: none;
cursor: pointer;
font-family: var(--font-body);
font-size: 16px;
font-weight: 400;
color: #fff;
letter-spacing: -0.14px;
line-height: 1.0;
white-space: nowrap;
text-decoration: none;
transition: background 0.2s;
}
.btn-primary:hover { background: var(--signal-dark); color: #fff; }
.btn-primary:active { background: #D04515; }
.btn-primary.disabled,
.btn-primary:disabled {
background: var(--horizon-dark);
cursor: not-allowed;
color: var(--slate);
} .btn-primary-sm {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 12px 24px;
border-radius: 8px;
background: #E9732B;
border: none;
cursor: pointer;
font-family: var(--font-body);
font-size: 14px;
font-weight: 400;
color: #fff;
letter-spacing: -0.14px;
line-height: 1.0;
white-space: nowrap;
text-decoration: none;
transition: background 0.2s;
}
.btn-primary-sm:hover { background: var(--signal-dark); color: #fff; } .btn-primary-icon {
display: inline-flex;
align-items: center;
justify-content: center;
gap: var(--btn-atc-gap);
padding: 14px 20px;
border-radius: var(--btn-atc-radius);
background: var(--btn-atc-bg);
border: none;
cursor: pointer;
font-family: var(--btn-atc-font);
font-size: var(--btn-atc-size);
font-weight: var(--btn-atc-weight);
color: var(--btn-atc-color);
letter-spacing: -0.14px;
white-space: nowrap;
text-decoration: none;
transition: var(--btn-atc-transition);
}
a.btn-primary-icon,
a.btn-primary-icon:visited { color: var(--btn-atc-color) !important; -webkit-text-fill-color: var(--btn-atc-color) !important; }
a.btn-primary-icon:hover,
.btn-primary-icon:hover { background: var(--btn-atc-bg-hover); color: var(--btn-atc-color) !important; -webkit-text-fill-color: var(--btn-atc-color) !important; transform: var(--btn-atc-hover-lift); box-shadow: var(--btn-atc-hover-shadow); }
.btn-primary-icon svg { width: 20px; height: 20px; fill: var(--btn-atc-color); } @keyframes atc-pulse {
0%   { transform: scale(1); }
40%  { transform: scale(1.08); }
100% { transform: scale(1); }
}
.btn-primary-icon.added,
.btn-add-to-cart.added {
background: var(--btn-atc-success) !important;
color: #fff !important;
-webkit-text-fill-color: #fff !important;
animation: atc-pulse 0.5s ease;
} .btn-secondary {
display: inline-flex;
align-items: center;
justify-content: center;
height: 64px;
padding: 0 24px;
border-radius: 8px;
background: var(--horizon);
border: 1.5px solid var(--sky-bright);
cursor: pointer;
font-family: var(--font-body);
font-size: 16px;
font-weight: 400;
color: var(--sky-deep);
letter-spacing: -0.14px;
white-space: nowrap;
text-decoration: none;
transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.btn-secondary:hover { background: #0B1F3A; border-color: #0B1F3A; color: #fff; }
.btn-secondary:active { background: var(--sky-mid); border-color: var(--sky-mid); color: #fff; } .btn-ghost {
display: inline-flex;
align-items: center;
gap: 6px;
background: none;
border: none;
cursor: pointer;
font-family: var(--font-body);
font-size: 16px;
font-weight: 600;
color: var(--sky-bright);
letter-spacing: -0.14px;
text-decoration: none;
transition: color 0.2s;
}
.btn-ghost:hover { color: var(--sky-electric); }
.btn-ghost .arrow { transition: transform 0.2s; }
.btn-ghost:hover .arrow { transform: translateX(4px); } .btn-banner-cart {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 16px;
border-radius: var(--radius-pill);
gap: 4px;
background: var(--signal);
border: none;
cursor: pointer;
font-family: var(--font-body);
font-size: 14px;
font-weight: 600;
color: #fff;
letter-spacing: -0.14px;
white-space: nowrap;
transition: background 0.2s;
}
.btn-banner-cart:hover { background: var(--signal-dark); }
.btn-banner-cart svg { width: 20px; height: 20px; fill: #fff; } .btn-checkout {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 64px;
padding: 24px 32px;
border-radius: var(--radius-input);
background: var(--sky-deep);
border: none;
cursor: pointer;
font-family: var(--font-body);
font-size: 16px;
font-weight: 600;
color: #fff;
letter-spacing: -0.14px;
text-decoration: none;
transition: background 0.2s;
}
.btn-checkout:hover { background: #1e3a5f; } .btn-add-to-cart {
flex: 1;
background: var(--btn-atc-bg);
border: none;
border-radius: var(--radius-pill);
height: 64px;
display: flex;
align-items: center;
justify-content: center;
gap: var(--btn-atc-gap);
font-family: var(--btn-atc-font);
font-size: var(--btn-atc-size);
font-weight: var(--btn-atc-weight);
color: var(--btn-atc-color);
letter-spacing: -0.14px;
cursor: pointer;
transition: var(--btn-atc-transition);
text-decoration: none;
}
.btn-add-to-cart:hover { background: var(--btn-atc-bg-hover); color: var(--btn-atc-color); transform: var(--btn-atc-hover-lift); box-shadow: var(--btn-atc-hover-shadow); }
.btn-add-to-cart svg { width: 20px; height: 20px; fill: var(--btn-atc-color); }   .eyebrow-tag {
display: inline-flex;
align-self: flex-start;
align-items: center;
justify-content: center;
padding: 8px 12px;
border-radius: var(--radius-tag);
background: var(--signal-pale);
border: 0.8px solid var(--signal);
font-family: var(--font-mono);
font-size: 14px;
font-weight: 500;
color: var(--signal-dark);
letter-spacing: 0.88px;
text-transform: uppercase;
white-space: nowrap;
}
.tag-blue {
display: inline-flex;
align-items: center;
padding: 8px 12px;
border-radius: var(--radius-tag);
background: var(--horizon);
border: 0.8px solid var(--sky-bright);
font-family: var(--font-mono);
font-size: 14px;
font-weight: 500;
color: var(--sky-bright);
letter-spacing: 0.88px;
text-transform: uppercase;
white-space: nowrap;
}
.tag-dark {
display: inline-flex;
align-items: center;
padding: 8px 12px;
border-radius: var(--radius-tag);
background: var(--sky-deep);
border: 0.8px solid var(--sky-mid);
font-family: var(--font-mono);
font-size: 14px;
font-weight: 500;
color: rgba(255,255,255,0.6);
letter-spacing: 0.88px;
text-transform: uppercase;
white-space: nowrap;
}
.blog-tag {
display: inline-flex;
align-items: center;
padding: 6px 12px;
border-radius: var(--radius-tag);
background: var(--signal-pale);
font-family: var(--font-mono);
font-size: 12px;
font-weight: 500;
color: var(--signal-dark);
letter-spacing: 0.66px;
text-transform: uppercase;
white-space: nowrap;
}
.price-badge {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 8px 12px;
border-radius: var(--radius-tag);
background: var(--signal-pale);
border: 0.8px solid var(--signal);
font-family: var(--font-mono);
font-size: 14px;
font-weight: 500;
color: var(--signal-dark);
letter-spacing: 0.88px;
text-transform: uppercase;
white-space: nowrap;
}   .card {
background: var(--white);
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-card);
padding: var(--card-padding);
}
.card-sm {
background: var(--white);
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-card-sm);
padding: var(--card-padding);
} .product-card {
background: #fff;
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card);
padding: 24px;
display: flex;
flex-direction: column;
gap: 16px;
transition: transform 0.2s, box-shadow 0.2s;
cursor: pointer;
text-decoration: none;
color: inherit;
}
.product-card:hover {
transform: translateY(-4px);
box-shadow: var(--shadow-card-hover);
color: inherit;
} .product-card--featured {
background: var(--sky-deep);
border-color: rgba(77, 166, 255, 0.2);
box-shadow: 0 12px 40px rgba(11, 31, 58, 0.25);
}
.product-card--featured .product-card-name {
color: #fff;
}
.product-card--featured .product-card-desc {
color: rgba(255, 255, 255, 0.72);
}
.product-card--featured .product-card-img {
background: rgba(255, 255, 255, 0.06);
}
.product-card--featured .price-main,
.product-card--featured .price-wrapper {
color: #fff;
}
.product-card--featured .price-original {
color: rgba(255, 255, 255, 0.4);
}
.product-card--featured .star-filled { color: #F5A623; }
.product-card--featured .star-empty  { color: rgba(255, 255, 255, 0.25); }
.product-card--featured .rating-count { color: rgba(255, 255, 255, 0.6); }
.product-card-img {
background: #fff;
border-radius: var(--radius-card-sm);
height: 272px;
display: flex;
align-items: center;
justify-content: center;
padding: 10px;
overflow: hidden;
}
.product-card-img img { height: 220px; width: 135px; }
.product-card-name {
font-size: 18px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.2;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
.product-card-desc {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.4;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
} .rating-wrapper { display: flex; gap: 8px; align-items: center; }
.stars-wrapper { display: flex; gap: 0; }
.star { color: var(--star-filled); font-size: 14px; line-height: 14px; }
.star.empty { color: var(--star-empty); }
.star-empty { color: var(--star-empty, var(--horizon-dark)); }
.star-lg { font-size: 22px; color: var(--star-filled); }
.star-lg.empty { color: var(--star-empty); }
.stars-lg-wrapper { display: flex; gap: 4px; align-items: center; }
.rating-count { font-size: 12px; color: rgba(11,31,58,0.6); line-height: 1; } .price-wrapper { display: flex; gap: 8px; align-items: flex-end; }
.price-main {
font-size: 28px;
font-weight: 600;
color: #000;
letter-spacing: -0.5px;
line-height: 1;
}
.price-original {
font-size: 16px;
color: rgba(255,0,0,0.6);
text-decoration: line-through;
line-height: 1;
} .blog-card {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-card);
overflow: hidden;
display: flex;
flex-direction: column;
transition: transform 0.2s, box-shadow 0.2s;
cursor: pointer;
text-decoration: none;
color: inherit;
}
.blog-card:hover {
transform: translateY(-4px);
box-shadow: var(--shadow-card-hover);
color: inherit;
}
.blog-card-img { height: 240px; overflow: hidden; }
.blog-card-img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.3s;
}
.blog-card:hover .blog-card-img img { transform: scale(1.03); }
.blog-card-body { padding: 32px; display: flex; flex-direction: column; gap: 16px; }
.blog-card-title {
font-size: 24px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.blog-card-desc {
font-size: 16px;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.2;
}
.blog-card-meta {
border-top: 0.6px solid var(--horizon-dark);
padding-top: 12.6px;
padding-bottom: 8px;
display: flex;
justify-content: space-between;
}
.blog-card-date {
font-size: 14px;
color: rgba(11,31,58,0.6);
letter-spacing: 0.66px;
}
.blog-card-read {
font-size: 14px;
color: var(--sky-bright);
text-transform: uppercase;
letter-spacing: 0.66px;
transition: color 0.2s;
}
.blog-card:hover .blog-card-read { color: var(--sky-electric); } .contact-details-card {
background: #fff;
border: 0.889px solid var(--horizon-dark);
border-radius: var(--radius-card);
padding: 28px;
display: flex;
flex-direction: column;
gap: 24px;
}
.contact-details-title {
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
}
.contact-item { display: flex; gap: 16px; align-items: flex-start; }
.contact-icon {
width: 36px;
height: 36px;
background: var(--off-white);
border-radius: var(--radius-input);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.contact-icon svg { width: 16px; height: 16px; }
.contact-item-details { display: flex; flex-direction: column; gap: 4px; }
.contact-item-label {
font-family: var(--font-mono);
font-size: 11px;
font-weight: 600;
color: rgba(11,31,58,0.65);
letter-spacing: 0.7px;
text-transform: uppercase;
}
.contact-item-value {
font-size: 15px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -0.3px;
}
.contact-divider { height: 1px; background: var(--horizon-dark); width: 100%; } .sidebar-cta-card {
border-radius: var(--radius-card);
border: 1px solid rgba(77,166,255,0.2);
background: linear-gradient(139.58deg, #1A4480 3.671%, #0B1F3A 96.329%);
padding: 24px;
display: flex;
flex-direction: column;
gap: 24px;
}
.sidebar-cta-eyebrow {
font-family: var(--font-mono);
font-size: 12px;
color: rgba(255,255,255,0.6);
letter-spacing: 0.88px;
text-transform: uppercase;
}
.sidebar-cta-title {
font-size: 24px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1;
}
.sidebar-cta-price-row { display: flex; gap: 12px; align-items: center; }
.sidebar-price-main {
font-size: 32px;
font-weight: 600;
color: #fff;
letter-spacing: -1.5px;
line-height: 1;
}
.sidebar-price-old {
font-size: 16px;
color: rgba(255,255,255,0.4);
text-decoration: line-through;
letter-spacing: -0.5px;
}
.sidebar-cta-desc {
font-size: 16px;
color: rgba(255,255,255,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
}   .form-group {
display: flex;
flex-direction: column;
gap: 12px;
}
.form-label {
font-size: 16px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
}
.form-label .required { color: var(--signal); }
.form-label .optional { font-size: 12px; color: rgba(11,31,58,0.4); }
.form-input,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
input[type="url"] {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 16px;
font-family: var(--font-body);
font-size: 14px;
font-weight: 300;
color: var(--sky-deep);
width: 100%;
transition: border-color 0.2s, box-shadow 0.2s;
}
.form-input::placeholder,
input::placeholder { color: var(--slate); }
.form-input:focus,
input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="password"]:focus,
input[type="number"]:focus,
input[type="url"]:focus {
outline: none;
border-color: var(--sky-bright);
box-shadow: var(--shadow-focus);
}
.form-input.error { border-color: var(--signal-dark); box-shadow: 0 0 0 3px rgba(232,80,26,0.1); }
.form-input.success { border-color: #22C55E; box-shadow: 0 0 0 3px rgba(34,197,94,0.1); }
.form-hint {
font-size: 12px;
font-weight: 400;
color: rgba(11,31,58,0.4);
letter-spacing: -0.3px;
line-height: 1.2;
}
.form-error-msg {
font-size: 12px;
font-weight: 500;
color: var(--signal-dark);
letter-spacing: -0.3px;
line-height: 1.2;
}
.form-textarea,
textarea {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 16px;
font-family: var(--font-body);
font-size: 14px;
font-weight: 300;
color: var(--sky-deep);
width: 100%;
min-height: 120px;
resize: vertical;
transition: border-color 0.2s, box-shadow 0.2s;
}
.form-textarea::placeholder,
textarea::placeholder { color: var(--slate); }
.form-textarea:focus,
textarea:focus {
outline: none;
border-color: var(--sky-bright);
box-shadow: var(--shadow-focus);
}
.form-select,
select {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 16px;
font-family: var(--font-body);
font-size: 14px;
font-weight: 300;
color: var(--sky-deep);
width: 100%;
appearance: none;
cursor: pointer;
background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%236B7C93' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 16px center;
transition: border-color 0.2s, box-shadow 0.2s;
}
.form-select:focus,
select:focus {
outline: none;
border-color: var(--sky-bright);
box-shadow: var(--shadow-focus);
} .form-checkbox {
display: flex;
align-items: center;
gap: 12px;
cursor: pointer;
}
.form-checkbox input[type="checkbox"] {
width: 18px;
height: 18px;
border: 1px solid var(--horizon-dark);
border-radius: 4px;
cursor: pointer;
flex-shrink: 0;
accent-color: var(--sky-bright);
} .form-radio {
display: flex;
align-items: center;
gap: 12px;
cursor: pointer;
}
.form-radio input[type="radio"] {
width: 18px;
height: 18px;
border: 1px solid var(--horizon-dark);
cursor: pointer;
flex-shrink: 0;
accent-color: var(--sky-bright);
}    .qty-selector {
display: inline-flex;
align-items: center;
gap: 24px;
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 12px 16px;
font-size: 18px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -0.6px;
white-space: nowrap;
}
.qty-selector-sm {
gap: 16px;
justify-content: center;
padding: 8px 12px;
font-size: 16px;
}
.qty-btn {
cursor: pointer;
user-select: none;
transition: color 0.2s;
background: none;
border: none;
font-size: 18px;
font-weight: 500;
color: var(--sky-deep);
padding: 0;
line-height: 1.2;
}
.qty-btn:hover { color: var(--signal); } .choice-pill {
display: inline-flex;
align-items: center;
justify-content: center;
border: 1.5px solid var(--sky-bright);
border-radius: var(--radius-pill);
padding: 14px 28px;
font-family: var(--font-body);
font-size: 16px;
font-weight: 400;
color: var(--sky-deep);
letter-spacing: -0.14px;
background: rgba(255,255,255,0.5);
cursor: pointer;
transition: background 0.2s;
}
.choice-pill.active,
.choice-pill:hover { background: var(--horizon); } .step-bubble {
display: inline-flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
border-radius: var(--radius-pill);
background: var(--mid-blue);
font-family: var(--font-body);
font-size: 14px;
font-weight: 500;
color: #fff;
flex-shrink: 0;
} .faq-item {
background: #fff;
padding: 24px;
border-radius: var(--radius-card-sm);
border: 0.8px solid var(--horizon-dark);
}
.faq-q-text {
font-size: 20px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.2;
cursor: pointer;
list-style: none;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
}
.faq-q-text::-webkit-details-marker,
.faq-q-text::marker { display: none; content: ''; }
.faq-q-text::after {
content: '+';
font-size: 24px;
font-weight: 300;
line-height: 1;
color: var(--sky-deep);
flex-shrink: 0;
transition: content 0s;
}
.faq-item[open] > .faq-q-text::after {
content: '−';
}
.faq-answer {
display: block;
margin-top: 16px;
font-size: 16px;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.4;
}    .attention-banner {
background: #fff;
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card);
overflow: hidden;
}
.attention-header {
display: flex;
align-items: center;
gap: 12px;
background: var(--sky-mid);
padding: 12px 24px;
}
.attention-title {
font-size: 14px;
font-weight: 600;
color: var(--signal);
letter-spacing: -0.2px;
}
.attention-body {
padding: 16px 24px;
font-size: 14px;
font-weight: 400;
color: var(--sky-deep);
letter-spacing: -0.2px;
line-height: 1.55;
} .post-tip {
background: var(--horizon);
border-left: 4px solid var(--sky-bright);
border-radius: 0 var(--radius-card-sm) var(--radius-card-sm) 0;
padding: 24px 24px 24px 28px;
display: flex;
flex-direction: column;
gap: 8px;
}
.post-tip-label {
font-family: var(--font-mono);
font-size: 12px;
color: var(--sky-bright);
letter-spacing: -0.3px;
text-transform: uppercase;
}
.post-tip-text {
font-size: 16px;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
}   .breadcrumb {
display: flex;
gap: 8px;
align-items: center;
font-size: 14px;
color: var(--slate);
letter-spacing: -0.2px;
}
.breadcrumb a {
color: var(--sky-bright);
text-decoration: none;
transition: color 0.2s;
}
.breadcrumb a:hover { color: var(--sky-electric); }
.breadcrumb .sep { color: var(--horizon-dark); }
.breadcrumb .current { color: var(--sky-deep); font-weight: 500; }   .trust-badges {
display: flex;
align-items: center;
justify-content: center;
gap: 16px;
padding: 0 32px;
}
.trust-badge {
display: flex;
align-items: center;
gap: 4px;
}
.trust-badge svg { width: 12px; height: 12px; flex-shrink: 0; }
.trust-badge span { font-size: 11px; font-weight: 600; color: var(--ink); letter-spacing: -0.1px; } @media (max-width: 767px) {
.btn-primary,
.btn-secondary,
.btn-checkout {
height: 56px;
padding: 0 24px;
font-size: 14px;
}
.product-card-img { height: 200px; }
.blog-card-img { height: 180px; }
.blog-card-body { padding: 20px; } .qty-selector .qty-btn { min-width: 44px; min-height: 44px; }
}.navbar-outer {
position: sticky;
top: 0;
left: 0;
width: 100%;
z-index: 1000;
}
.navbar-wrapper {
background: var(--sky-deep);
height: var(--navbar-height);
width: 100%;
box-shadow: var(--shadow-navbar);
display: flex;
align-items: center;
}
.navbar-content {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 var(--page-padding-x);
width: 100%;
height: 100%;
max-width: var(--max-width);
margin: 0 auto;
} .navbar-logo {
flex-shrink: 0;
}
.navbar-logo a { display: flex; align-items: center; }
.navbar-logo img {
width: 151px;
height: 45px;
object-fit: contain;
display: block;
}
.navbar-site-title {
font-size: 20px;
font-weight: 600;
color: #fff;
letter-spacing: -0.5px;
text-decoration: none;
} .navbar-menu {
display: flex;
align-items: center;
gap: 48px;
}
.navbar-menu a,
.navbar-menu .menu-item a {
font-size: 16px;
font-weight: 600;
color: #fff;
text-decoration: none;
letter-spacing: -0.14px;
white-space: nowrap;
transition: color 0.2s;
}
.navbar-menu a:hover,
.navbar-menu .menu-item a:hover {
color: var(--sky-electric);
}
.navbar-menu .current-menu-item > a {
color: var(--sky-electric);
} .navbar-menu > li {
position: relative;
list-style: none;
display: flex;
align-items: center;
} .navbar-menu .menu-item-has-children > a {
padding: 8px 16px;
border-radius: 100px;
border: 1px solid transparent;
transition: color 0.2s, background 0.2s, border-color 0.2s;
}
.navbar-menu .menu-item-has-children:hover > a {
background: rgba(255,255,255,0.1);
border-color: rgba(255,255,255,0.2);
color: #fff;
} .navbar-menu .menu-item-has-children,
.navbar-menu > .menu-item-has-children,
#masthead .navbar-menu .menu-item-has-children {
position: relative !important;
} .navbar-menu .ast-menu-toggle,
#masthead .navbar-menu .ast-menu-toggle,
#masthead .navbar-menu .menu-item .ast-menu-toggle,
.navbar-menu .menu-item-has-children > a .dropdown-arrow {
display: none !important;
visibility: hidden !important;
} .navbar-menu .menu-item-has-children > a::after {
content: '' !important;
display: inline-block !important;
width: 10px !important;
height: 6px !important;
margin-left: 5px !important;
background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23ffffff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
background-repeat: no-repeat !important;
background-position: center !important;
vertical-align: middle !important;
transition: transform 0.2s;
border: none !important;
}
.navbar-menu .menu-item-has-children:hover > a::after {
transform: rotate(180deg);
} .navbar-menu .sub-menu,
#masthead .navbar-menu .sub-menu,
#masthead .navbar-menu ul.sub-menu,
.navbar-content .navbar-menu .sub-menu,
.navbar-menu > .menu-item-has-children > .sub-menu {
visibility: hidden !important;
opacity: 0 !important;
pointer-events: none !important;
position: absolute !important;
top: 100% !important;
left: 0 !important;
background: var(--sky-deep) !important;
border: 1px solid rgba(255,255,255,0.1) !important;
border-radius: 8px !important;
padding: 8px 0 !important;
min-width: 160px !important;
box-shadow: 0 8px 24px rgba(0,0,0,0.25) !important;
z-index: 200 !important;
list-style: none !important;
margin: 0 !important;
transition: opacity 0.15s, visibility 0.15s !important;
}
.navbar-menu .menu-item-has-children:hover > .sub-menu,
#masthead .navbar-menu .menu-item-has-children:hover > .sub-menu {
visibility: visible !important;
opacity: 1 !important;
pointer-events: auto !important;
} .navbar-menu .sub-menu::before {
content: '' !important;
display: block !important;
position: absolute !important;
top: -16px !important;
left: -20px !important;
width: calc(100% + 40px) !important;
height: 16px !important;
background: transparent !important;
}
.navbar-menu .sub-menu li {
list-style: none;
}
.navbar-menu .sub-menu a {
display: block;
padding: 10px 20px;
font-size: 14px;
font-weight: 500;
color: rgba(255,255,255,0.8);
white-space: nowrap;
letter-spacing: -0.1px;
transition: color 0.15s, background 0.15s;
}
.navbar-menu .sub-menu a:hover {
color: #fff;
background: rgba(255,255,255,0.08);
} .navbar-cta {
display: flex;
align-items: center;
gap: 16px;
} .cart-icon-link {
position: relative;
display: flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
transition: opacity 0.2s;
}
.cart-icon-link:hover { opacity: 0.8; }
.cart-icon-svg { width: 24px; height: 24px; }
.cart-count {
position: absolute;
top: -4px;
right: -4px;
width: 18px;
height: 18px;
border-radius: 50%;
background: var(--signal);
color: #fff;
font-size: 10px;
font-weight: 600;
display: flex;
align-items: center;
justify-content: center;
line-height: 1;
} .mobile-menu-toggle {
display: none;
flex-direction: column;
justify-content: center;
align-items: center;
gap: 5px;
width: 36px;
height: 36px;
background: none;
border: none;
cursor: pointer;
padding: 6px;
z-index: 1001;
}
.hamburger-line {
width: 24px;
height: 2px;
background: #fff;
border-radius: 2px;
transition: transform 0.3s, opacity 0.3s;
} .mobile-menu-toggle[aria-expanded="true"] .hamburger-line:nth-child(1) {
transform: translateY(7px) rotate(45deg);
}
.mobile-menu-toggle[aria-expanded="true"] .hamburger-line:nth-child(2) {
opacity: 0;
}
.mobile-menu-toggle[aria-expanded="true"] .hamburger-line:nth-child(3) {
transform: translateY(-7px) rotate(-45deg);
} .mobile-menu-overlay {
position: fixed;
top: var(--navbar-height);
left: 0;
width: 100%;
height: calc(100vh - var(--navbar-height));
background: var(--sky-deep);
z-index: 999;
transform: translateX(100%);
transition: transform 0.3s ease;
overflow-y: auto;
}
.mobile-menu-overlay.is-open {
transform: translateX(0);
}
.mobile-menu-inner {
padding: 32px 20px;
display: flex;
flex-direction: column;
gap: 24px;
}
.mobile-nav-list {
display: flex;
flex-direction: column;
gap: 0;
}
.mobile-nav-list li { list-style: none; }
.mobile-nav-list > li > a,
.mobile-nav-list > li > .mobile-menu-row > a {
display: block;
padding: 16px 0;
font-size: 16px;
font-weight: 600;
color: #fff;
text-decoration: none;
border-bottom: 1px solid rgba(255,255,255,0.1);
transition: color 0.2s;
}
.mobile-nav-list a:hover { color: var(--sky-electric); } .mobile-nav-list .menu-item-has-children > a::after,
.mobile-nav-list .menu-item-has-children > .mobile-menu-row > a::after {
display: none !important;
} .mobile-menu-row {
display: flex;
align-items: center;
border-bottom: 1px solid rgba(255,255,255,0.1);
}
.mobile-menu-row > a {
flex: 1;
border-bottom: none !important;
}
.mobile-submenu-toggle {
display: flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
background: none;
border: none;
border-left: 1px solid rgba(255,255,255,0.1);
cursor: pointer;
padding: 0;
transition: transform 0.2s;
}
.mobile-submenu-toggle[aria-expanded="true"] svg {
transform: rotate(180deg);
} .mobile-nav-list .sub-menu {
padding: 0 0 8px 16px;
margin: 0;
list-style: none;
}
.mobile-nav-list .sub-menu a {
display: block;
padding: 12px 0;
font-size: 15px;
font-weight: 500;
color: rgba(255,255,255,0.75);
text-decoration: none;
border-bottom: 1px solid rgba(255,255,255,0.06);
transition: color 0.2s;
}
.mobile-nav-list .sub-menu a:hover {
color: var(--sky-electric);
}
.mobile-nav-list .sub-menu li:last-child a {
border-bottom: none;
} .mobile-nav-list .ast-menu-toggle {
display: none !important;
}
.mobile-menu-cta {
margin-top: 8px;
text-align: center;
}  @media (max-width: 1439px) {
.navbar-content {
padding: 0 32px;
}
} @media (max-width: 1023px) {
.navbar-menu {
display: none;
}
.mobile-menu-toggle {
display: flex;
}
.navbar-content {
padding: 0 20px;
}
.navbar-logo img {
width: 120px;
height: 36px;
}
} @media (max-width: 767px) {
.navbar-cta .btn-primary-sm {
display: none;
}
} .btn-launch-platform--mobile {
display: none;
}
@media (max-width: 767px) {
.btn-launch-platform--mobile {
display: flex;
width: 100%;
margin-top: 24px;
justify-content: center;
}
} .admin-bar .navbar-outer {
top: 32px;
}
@media (max-width: 782px) {
.admin-bar .navbar-outer {
top: 46px;
}
}.footer {
background: var(--sky-deep);
width: 100%;
padding: 40px 0 24px;
}
.footer > .container {
display: flex;
flex-direction: column;
gap: 10px;
}
.footer-main {
display: grid;
grid-template-columns: 1fr 2.5fr;
gap: 48px;
align-items: flex-start;
width: 100%;
} .footer-brand {
display: flex;
flex-direction: column;
gap: 20px;
align-items: flex-start;
}
.footer-logo a { display: inline-block; }
.footer-logo img {
width: 180px;
height: 49px;
object-fit: contain;
display: block;
}
.footer-site-title {
font-size: 24px;
font-weight: 600;
color: #fff;
text-decoration: none;
}
.footer-tagline {
font-size: 16px;
font-weight: 400;
color: #fff;
letter-spacing: -0.5px;
line-height: 1.2;
} .footer-links-grid {
display: grid;
grid-template-columns: auto auto 1fr;
gap: 48px;
}
.footer-col {
display: flex;
flex-direction: column;
gap: 10px;
}
.footer-col-title {
font-size: 16px;
font-weight: 600;
color: #fff;
letter-spacing: -0.5px;
line-height: 1.2;
}
.footer-col a,
.footer-col .menu-item a {
font-size: 14px;
font-weight: 400;
color: rgba(255,255,255,0.8);
letter-spacing: 0.12px;
text-decoration: none;
display: block;
transition: color 0.2s;
line-height: 1;
}
.footer-col a:hover,
.footer-col .menu-item a:hover { color: #fff; }
.footer-col p {
font-size: 14px;
color: rgba(255,255,255,0.8);
letter-spacing: 0.12px;
line-height: 1.45;
} .footer-hours-grid {
display: flex;
flex-direction: column;
gap: 10px;
}
.footer-hours-block {
display: flex;
flex-direction: column;
gap: 4px;
}
.footer-hours-days {
font-size: 13px;
font-weight: 500;
color: rgba(255,255,255,0.9);
line-height: 1;
}
.footer-hours-time {
font-size: 13px;
color: rgba(255,255,255,0.6);
line-height: 1;
} .footer-legal {
display: flex;
justify-content: center;
gap: 24px;
width: 100%;
margin-top: 16px;
padding-top: 16px;
border-top: 1px solid rgba(255,255,255,0.1);
}
.footer-legal a {
font-size: 12px;
color: rgba(255,255,255,0.6);
text-decoration: none;
transition: color 0.2s;
}
.footer-legal a:hover {
color: #fff;
} .footer-copyright {
font-size: 12px;
color: rgba(255,255,255,0.6);
text-align: center;
letter-spacing: 0.11px;
line-height: 1;
width: 100%;
} @media (max-width: 1439px) {
.footer-main {
gap: 40px;
}
}
@media (max-width: 1023px) {
.footer-main {
grid-template-columns: 1fr;
gap: 48px;
}
.footer-links-grid {
grid-template-columns: auto auto 1fr;
gap: 32px;
}
}
@media (max-width: 767px) {
.footer {
padding: 32px 0 20px;
}
.footer > .container {
gap: 24px;
}
.footer-links-grid {
grid-template-columns: 1fr;
gap: 32px;
}
.footer-brand {
gap: 24px;
}
.footer-logo img {
width: 140px;
height: 40px;
}
}.launch-body,
.launch-body #page {
margin: 0;
padding: 0;
}
.launch-page {
min-height: 100vh;
min-height: 100svh;
background: var(--sky-deep);
display: flex;
flex-direction: column;
align-items: center;
position: relative;
padding: 32px var(--page-padding-x);
box-sizing: border-box;
} .launch-back {
position: absolute;
top: 32px;
left: var(--page-padding-x);
display: inline-flex;
align-items: center;
gap: 6px;
color: #fff;
font-family: var(--font-body);
font-size: 14px;
font-weight: 400;
text-decoration: none;
transition: color 0.2s;
}
.launch-back:hover { color: #fff; } .launch-logo {
margin-top: 0;
}
.launch-logo img,
.launch-logo svg {
height: 45px;
width: auto;
}
.launch-site-title {
color: #fff;
font-family: var(--font-body);
font-size: 20px;
font-weight: 600;
text-decoration: none;
} .launch-main {
flex: 1;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.launch-content {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
gap: 24px;
max-width: 600px;
} .launch-eyebrow {
font-family: var(--font-mono);
font-size: 12px;
font-weight: 500;
text-transform: uppercase;
letter-spacing: 0.88px;
color: var(--signal-dark);
background: var(--signal-pale);
border: 0.8px solid var(--signal);
border-radius: var(--radius-tag);
padding: 6px 12px;
display: inline-block;
} .launch-heading {
font-family: var(--font-display);
font-size: 48px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1.05;
margin: 0;
}
.launch-heading-accent {
color: var(--sky-bright);
} .launch-subline {
font-family: var(--font-body);
font-size: 16px;
font-weight: 400;
color: rgba(255, 255, 255, 0.6);
letter-spacing: -0.5px;
margin: 0;
} .launch-actions {
display: flex;
align-items: center;
gap: 16px;
margin-top: 8px;
}
.launch-btn-yes {
display: inline-flex;
align-items: center;
justify-content: center;
height: 64px;
padding: 0 32px;
border-radius: 8px;
background: #E9732B;
color: #fff;
font-family: var(--font-body);
font-size: 16px;
font-weight: 400;
letter-spacing: -0.14px;
text-decoration: none;
white-space: nowrap;
transition: background 0.2s;
}
.launch-btn-yes:hover { background: var(--signal-dark); color: #fff; }
.launch-btn-no {
display: inline-flex;
align-items: center;
justify-content: center;
height: 64px;
padding: 0 32px;
border-radius: 8px;
background: transparent;
border: 1.5px solid rgba(255, 255, 255, 0.4);
color: rgba(255, 255, 255, 0.85);
font-family: var(--font-body);
font-size: 16px;
font-weight: 400;
letter-spacing: -0.14px;
text-decoration: none;
white-space: nowrap;
transition: border-color 0.2s, color 0.2s;
}
.launch-btn-no:hover {
border-color: rgba(255, 255, 255, 0.8);
color: #fff;
} .launch-reassurance {
font-family: var(--font-body);
font-size: 13px;
font-weight: 400;
color: rgba(255, 255, 255, 0.4);
letter-spacing: -0.3px;
margin: 0;
}
.launch-reassurance a {
color: rgba(255, 255, 255, 0.6);
text-decoration: underline;
text-underline-offset: 2px;
}
.launch-reassurance a:hover { color: #fff; } @media (max-width: 767px) {
.launch-page { padding: 24px 24px; }
.launch-back { left: 24px; top: 24px; }
.launch-heading { font-size: 32px; letter-spacing: -1px; }
.launch-actions { flex-direction: column; width: 100%; }
.launch-btn-yes,
.launch-btn-no { width: 100%; }
}   .hero-section {
position: relative;
width: 100%;
overflow: hidden;
background: var(--sky-deep); }    .hero-section.hero-template {
display: flex;
align-items: flex-end;
}
.hero-bg {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
}
.hero-overlay {
position: absolute;
inset: 0;
background: linear-gradient(to top, #0B1F3A 14%, rgba(26,68,128,0.2) 69%);
}
.hero-container {
position: relative;
z-index: 1;
width: 100%;
max-width: var(--max-width);
margin: 0 auto;
padding: 0 var(--page-padding-x) 64px;
}
.hero-container .hero-content {
max-width: 640px;
display: flex;
flex-direction: column;
gap: 16px;
width: auto; }
.hero-container .hero-title {
font-size: 72px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1;
}
.hero-container .hero-subtitle {
color: rgba(255,255,255,0.8);
font-size: 20px;
font-weight: 500;
letter-spacing: -0.5px;
line-height: 1.2;
}
.hero-container .hero-cta {
margin-top: 16px;
}
.hero-container .hero-buttons {
margin-top: 8px;
}
.hero-container .trust-proof {
margin-top: 24px;
}
@media (max-width: 1023px) {
.hero-section.hero-template { height: 400px !important; }
.hero-container { padding: 0 32px 40px; }
.hero-container .hero-content { max-width: 100%; }
.hero-container .hero-title { font-size: 48px; letter-spacing: -1px; }
}
@media (max-width: 767px) {
.hero-section.hero-template { height: 320px !important; }
.hero-container { padding: 0 20px 32px; }
.hero-container .hero-title { font-size: 36px; letter-spacing: -1px; }
.hero-container .hero-subtitle,
.hero-container .hero-subtitle.lead { font-size: 15px; }
}
.hero-image-wrap {
position: absolute;
top: 0;
left: -21px;
width: calc(100% + 42px);
height: 900px;
}
.hero-image-wrap img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 110%;
object-fit: cover;
display: block;
}
.hero-gradient {
position: absolute;
inset: 0;
background: linear-gradient(to right, rgba(11,31,58,0.88) 0%, rgba(26,68,128,0.55) 30%, rgba(26,68,128,0) 65%);
}
.hero-wrapper {
position: relative;
height: 900px;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-end;
padding-bottom: 64px;
}
.hero-content {
display: flex;
flex-direction: column;
gap: 32px;
width: 760px;
position: relative;
z-index: 1;
}
.hero-h1 {
font-size: 72px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1;
}
.hero-accent {
color: var(--signal);
}
.hero-subtitle {
font-size: 24px;
font-weight: 500;
color: rgba(255,255,255,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
}
.hero-buttons {
display: flex;
gap: 16px;
align-items: stretch;
} .trust-proof {
display: flex;
align-items: center;
gap: 24px;
}
.trust-proof-inner {
display: flex;
align-items: center;
gap: 12px;
}
.headshots-wrap {
position: relative;
width: 104px;
height: 32px;
flex-shrink: 0;
}
.headshot {
position: absolute;
width: 32px;
height: 32px;
border-radius: 50%;
border: 1px solid var(--horizon);
overflow: hidden;
}
.headshot img {
width: 100%;
height: 100%;
object-fit: cover;
}
.headshot:nth-child(1) { left: 0; }
.headshot:nth-child(2) { left: 24px; }
.headshot:nth-child(3) { left: 48px; }
.headshot:nth-child(4) { left: 72px; }
.people-trained {
display: flex;
flex-direction: column;
gap: 4px;
font-size: 14px;
color: #fff;
line-height: 1;
white-space: nowrap;
}
.people-trained span {
font-size: 12px;
color: rgba(255,255,255,0.6);
}
.trust-proof .trust-divider {
width: 1px;
height: 24px;
background: rgba(255,255,255,0.6);
}
.hero-rating .rating-num { color: #fff; }
.proof-divider {
width: 1px;
height: 24px;
background: rgba(11,31,58,0.6);
}     .trust-logos-section {
padding: 14px 0 16px;
background: var(--white);
overflow: hidden;
}
.trust-logos-heading {
text-align: center;
font-size: 11px;
font-weight: 600;
text-transform: uppercase;
color: #8a94a6;
letter-spacing: 1.5px;
line-height: 1;
margin: 0 0 12px;
}
.trust-logos-track-wrap {
overflow: hidden;
-webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent);
}
.trust-logos-track {
display: flex;
align-items: center;
width: max-content;
animation: marquee 40s linear infinite;
}
.trust-logos-track:hover {
animation-play-state: paused;
}
.trust-logo-item {
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
height: 22px;
margin-right: 56px;
}
.trust-logo-item img {
height: 100%;
width: auto;
max-width: 110px;
object-fit: contain;
filter: grayscale(100%);
opacity: 0.7;
transition: filter 0.25s, opacity 0.25s;
}
.trust-logo-item img:hover {
filter: grayscale(0%);
opacity: 1;
}
@keyframes marquee {
0%   { transform: translateX(0); }
100% { transform: translateX(-50%); }
}
@media (max-width: 768px) {
.trust-logo-item {
height: 24px;
}
.trust-logo-item img {
max-width: 100px;
}
}
@media (max-width: 480px) {
.trust-logos-section {
padding: 12px 0;
}
.trust-logos-heading {
font-size: 10px;
margin-bottom: 10px;
}
.trust-logo-item {
height: 18px;
margin-right: 40px;
}
.trust-logo-item img {
max-width: 80px;
}
.trust-logos-track {
animation-duration: 60s;
}
}
@media (max-width: 390px) {
.trust-logos-section {
padding-bottom: 16px;
}
.hero-wrapper { padding-top: 40px; padding-bottom: 40px; }
.hero-h1 { font-size: 32px; letter-spacing: -1px; }
}
@media (prefers-reduced-motion: reduce) {
.trust-logos-track {
animation: none;
}
}   .finder-section {
width: 100%;
position: relative;
background-color: #1A4480;
background-image:
linear-gradient(180deg, rgba(26,68,128,0) 14.02%, rgba(0,0,0,0.5) 100%),
var(--finder-bg-image, none);
background-size: cover;
background-position: center;
padding: 96px 0;
}
.finder-inner {
display: flex;
flex-direction: column;
gap: 60px;
align-items: flex-start;
width: 100%;
}
.finder-heading-block {
text-align: center;
width: 100%;
padding: 0 192px;
display: flex;
flex-direction: column;
gap: 32px;
align-items: center;
}
.finder-title {
font-size: 56px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1;
}
.finder-subtitle {
font-size: 20px;
font-weight: 400;
color: rgba(255,255,255,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
}
.finder-columns {
display: flex;
gap: 48px;
align-items: flex-start;
justify-content: center;
width: 100%;
}
.finder-cards {
flex: 1;
display: flex;
flex-direction: column;
gap: 12px;
}
.finder-card {
background: #fff;
border-radius: var(--radius-card-sm);
padding: 24px;
display: flex;
flex-direction: column;
gap: 24px;
}
.finder-question {
display: flex;
gap: 12px;
align-items: center;
}
.finder-q-text {
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
}
.finder-options-wrapper {
display: flex;
flex-direction: column;
gap: 12px;
}
.finder-options {
display: flex;
gap: 12px;
align-items: center;
flex-wrap: wrap;
}
.finder-hint {
font-size: 14px;
font-weight: 300;
color: var(--slate);
letter-spacing: -0.5px;
line-height: 1.2;
}
.finder-steps-group {
display: flex;
flex-direction: column;
gap: 12px;
}
.finder-select {
appearance: none;
background: #fff url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%236B7C93' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 16px center;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 16px 48px 16px 24px;
width: 100%;
font-size: 14px;
font-weight: 300;
color: var(--sky-deep);
cursor: pointer;
}
.finder-select option {
color: var(--sky-deep);
}
.finder-select:focus {
border-color: var(--sky-bright);
outline: none;
}
.finder-result-wrapper {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}
.finder-result {
background: #fff;
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card);
padding: 24px;
display: flex;
flex-direction: column;
gap: 16px;
}
.finder-result-heading {
font-size: 32px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.finder-cta {
width: 100%;
justify-content: center;
}   .products-section {
background: var(--off-white);
width: 100%;
}
.products-header {
display: flex;
align-items: flex-end;
justify-content: space-between;
width: 100%;
margin-bottom: 60px;
}
.products-copy {
display: flex;
flex-direction: column;
gap: 24px;
width: 600px;
align-items: flex-start;
}
.section-h2 {
font-size: 56px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.section-h2 .accent { color: var(--sky-bright); }
.product-cards {
display: flex;
gap: 16px;
align-items: flex-start;
width: 100%;
}
.product-cards .product-card {
flex: 1;
text-decoration: none;
}
.product-image-wrap {
background: var(--off-white);
border-radius: var(--radius-card-sm);
height: 272px;
display: flex;
align-items: center;
justify-content: center;
padding: 10px;
}
.product-image-wrap img {
height: 220px;
width: 135px;
object-fit: cover;
}
.product-title {
font-size: 24px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.2;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
.product-desc {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.2;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
} .stars {
display: flex;
gap: 0;
}
.rating-wrap {
display: flex;
align-items: center;
gap: 8px;
}
.rating-num {
font-size: 12px;
color: rgba(11,31,58,0.6);
white-space: nowrap;
}
.price-wrap {
display: flex;
align-items: flex-end;
gap: 8px;
letter-spacing: -0.5px;
} .product-card-atc {
margin-top: auto;
align-self: flex-start;
}
.product-card-link-area {
display: flex;
flex-direction: column;
gap: 16px;
text-decoration: none;
color: inherit;
}
.product-card-link-area:hover { color: inherit; }   .platform-section {
background: #fff;
width: 100%;
}
.platform-section > .container {
display: flex;
gap: 48px;
align-items: center;
min-height: 640px;
padding-top: 96px;
padding-bottom: 96px;
}
.platform-content {
display: flex;
flex-direction: column;
gap: 0;
align-items: flex-start;
width: 490px;
flex-shrink: 0;
justify-content: center;
}
.platform-content .eyebrow-tag {
margin-bottom: 20px;
}
.platform-h2 {
font-size: 56px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
margin-bottom: 24px;
}
.platform-body {
font-size: 20px;
font-weight: 400;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
margin-bottom: 24px;
}
.platform-link {
font-size: 17px;
font-weight: 500;
color: var(--sky-bright);
letter-spacing: -0.14px;
text-decoration: none;
}
.platform-link:hover { text-decoration: underline; }
.platform-image {
flex: 1;
border-radius: var(--radius-card);
overflow: hidden;
box-shadow: 0 2px 25px -2px rgba(91,155,213,0.2);
}
.platform-image img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}   .why-section {
background: var(--off-white);
width: 100%;
}
.why-wrapper {
width: 100%;
min-height: auto;
overflow: visible;
position: relative;
background-color: #1A4480;
background-image: linear-gradient(180deg, #1A4480 30.51%, #0B1F3A 102.86%);
background-size: cover;
background-position: center;
display: flex;
flex-direction: column;
align-items: center;
padding: 96px 0 64px;
}
.why-content {
display: flex;
flex-direction: column;
gap: 32px;
align-items: center;
text-align: center;
max-width: 900px;
width: 100%;
margin: 0 auto;
padding: 0 64px;
position: relative;
z-index: 3;
}
.why-h2 {
font-size: 56px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1;
width: 100%;
}
.why-h2 .accent-orange { color: var(--signal); }
.why-body {
font-size: 20px;
font-weight: 400;
color: rgba(255,255,255,0.8);
letter-spacing: -0.5px;
line-height: 1.4;
width: 100%;
overflow-wrap: break-word;
} .why-team-images {
display: flex;
justify-content: center;
gap: 32px;
margin-top: 48px;
padding: 0 64px;
}
.why-team-photo {
display: flex;
flex-direction: column;
align-items: center;
gap: 12px;
}
.why-section .why-team-images .why-team-photo img {
width: 200px;
height: 240px;
display: block;
object-fit: cover;
object-position: top;
}
.why-team-name {
font-size: 16px;
font-weight: 600;
color: #fff;
letter-spacing: -0.3px;
margin: 0;
}
.why-wrapper .team-grid {
width: 100%;
max-width: 1200px;
padding: 0 64px;
margin-top: 48px;
box-sizing: border-box;
}
.why-wrapper > .btn-secondary {
margin-top: 48px;
} .why-fade { display: none; }   .testimonials-section {
background: #fff;
width: 100%;
padding: 96px 0;
}
.testimonials-content {
display: flex;
flex-direction: column;
gap: 24px;
align-items: center;
width: 100%;
margin-bottom: 60px; }
.testimonials-h2 {
font-size: 56px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
text-align: center;
}
.testimonials-h2 .accent { color: var(--sky-bright); }
.testimonials-proof {
display: flex;
align-items: center;
gap: 24px;
}
.testimonial-carousel {
width: 100%;
position: relative;
}
.testimonial-cards {
display: flex;
flex-direction: row;
overflow-x: auto;
scroll-snap-type: x mandatory;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
gap: 24px;
width: 100%;
padding-bottom: 4px;
}
.testimonial-cards::-webkit-scrollbar { display: none; }
.testimonial-dots {
display: flex;
justify-content: center;
gap: 8px;
margin-top: 24px;
}
.testimonial-dot {
width: 10px;
height: 10px;
border-radius: 50%;
border: none;
background: var(--horizon-dark, #c8d1dc);
cursor: pointer;
padding: 0;
transition: background 0.25s, transform 0.25s;
}
.testimonial-dot.active {
background: var(--sky-bright, #0071e3);
transform: scale(1.2);
}
.testimonial-card {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-card);
padding: 32px;
display: flex;
flex-direction: column;
gap: 24px;
align-items: flex-start;
flex: 0 0 380px;
max-width: 380px;
scroll-snap-align: center;
}
@media (min-width: 1320px) {
.testimonial-cards { justify-content: center; }
}
.testimonial-quote {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.8);
line-height: 1.4;
}
.testimonial-author {
display: flex;
align-items: center;
gap: 24px;
}
.author-headshot {
width: 44px;
height: 44px;
border-radius: 50%;
border: 1px solid var(--horizon);
overflow: hidden;
flex-shrink: 0;
}
.author-headshot img {
width: 100%;
height: 100%;
object-fit: cover;
}
.author-info {
display: flex;
flex-direction: column;
gap: 4px;
}
.author-name {
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
}
.author-title {
font-size: 14px;
font-weight: 300;
color: rgba(11,31,58,0.6);
}   .blog-section {
background: #fff;
width: 100%;
padding-bottom: 64px;
}
.blog-header {
display: flex;
align-items: flex-end;
justify-content: space-between;
width: 100%;
margin-bottom: 60px;
}
.blog-copy {
display: flex;
flex-direction: column;
gap: 24px;
width: 600px;
align-items: flex-start;
}
.blog-h2 {
font-size: 56px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.blog-h2-centered {
text-align: center;
width: 100%;
margin-bottom: 48px;
}
.blog-h2 .accent { color: var(--sky-bright); }
.blog-cards {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
width: 100%;
}
.blog-cards-centered {
margin-bottom: 40px;
}
.blog-cta-wrap {
display: flex;
justify-content: center;
width: 100%;
}
.blog-card-placeholder {
opacity: 0.5;
pointer-events: none;
cursor: default;
}
.blog-placeholder-thumb {
background: var(--horizon);
display: flex;
align-items: center;
justify-content: center;
}
.blog-coming-soon-label {
font-family: var(--font-body);
font-size: 13px;
font-weight: 500;
color: var(--slate);
letter-spacing: 1px;
text-transform: uppercase;
}
.blog-placeholder-title {
color: var(--slate) !important;
}
.blog-card {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-card);
overflow: hidden;
display: flex;
flex-direction: column;
text-decoration: none;
color: inherit;
transition: box-shadow 0.2s;
}
.blog-card:hover {
box-shadow: var(--shadow-card-hover);
}
.blog-image {
height: 240px;
overflow: hidden;
flex-shrink: 0;
}
.blog-image img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.blog-copy-inner {
display: flex;
flex-direction: column;
gap: 16px;
padding: 32px;
}
.blog-title {
font-size: 24px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.blog-excerpt {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.2;
}
.blog-meta {
border-top: 0.6px solid var(--horizon-dark);
padding-top: 12px;
display: flex;
align-items: center;
justify-content: space-between;
font-size: 14px;
font-weight: 400;
letter-spacing: 0.66px;
}
.blog-date { color: rgba(11,31,58,0.6); }
.blog-read-more {
color: var(--sky-bright);
text-transform: uppercase;
}   .faq-section {
background: var(--off-white);
width: 100%;
}
.faq-title {
font-size: 56px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
text-align: center;
margin-bottom: 60px;
}
.faq-title .accent { color: var(--sky-bright); }
.faq-accordion {
display: flex;
justify-content: center;
}
.faq-list {
width: 915px;
max-width: 100%;
display: flex;
flex-direction: column;
gap: 16px;
} .no-posts {
text-align: center;
padding: 64px 0;
color: var(--slate);
font-size: 18px;
}    .our-story {
background: #fff;
}
.our-story .container {
display: flex;
gap: 60px;
align-items: flex-start;
}
.our-story-left {
max-width: 800px;
flex: 1 1 800px;
display: flex;
flex-direction: column;
gap: 30px;
}
.story-copy {
display: flex;
flex-direction: column;
gap: 32px;
}
.story-title {
font-size: 56px;
font-weight: 600;
letter-spacing: -1px;
line-height: 1;
}
.story-title .dark { color: var(--sky-deep); }
.story-title .blue { color: var(--sky-bright); }
.story-body {
font-size: 18px;
color: rgba(11,31,58,0.85);
letter-spacing: -0.3px;
line-height: 1.6;
}
.story-quote {
border-left: 2.667px solid var(--signal);
padding-left: 24px;
}
.story-quote p {
font-size: 16px;
font-weight: 600;
font-style: italic;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
} .stats-bar {
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card);
overflow: hidden;
display: flex;
}
.stat {
flex: 1;
background: var(--off-white);
padding: 24px;
display: flex;
flex-direction: column;
gap: 8px;
align-items: center;
text-align: center;
border-right: 1px solid var(--horizon-dark);
}
.stat:last-child { border-right: none; }
.stat-num {
font-size: 32px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.stat-num .orange { color: var(--signal); }
.stat-label {
font-size: 16px;
font-weight: 300;
color: var(--slate);
letter-spacing: -0.5px;
line-height: 1.2;
}
.our-story-right {
flex: 1;
align-self: stretch;
display: flex;
}
.story-img {
background: var(--horizon);
border-radius: var(--radius-card-sm);
overflow: hidden;
flex: 1;
}
.story-img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
} .promise-section {
background:
linear-gradient(180deg, rgba(0,0,0,0) 20.027%, rgba(0,0,0,0.35) 100%),
linear-gradient(90deg, #1A4480 0%, #1A4480 100%);
}
.promise-section .container {
display: flex;
gap: 60px;
align-items: center;
}
.promise-img { flex: 1; height: 590px; }
.promise-img-inner {
background: var(--horizon);
border-radius: var(--radius-card-sm);
overflow: hidden;
height: 100%;
}
.promise-img-inner img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.promise-copy {
max-width: 800px;
flex: 1 1 800px;
display: flex;
flex-direction: column;
gap: 32px;
}
.promise-title {
font-size: 56px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1;
}
.promise-title .orange { color: var(--signal); }
.promise-body {
font-size: 18px;
color: rgba(255,255,255,0.85);
letter-spacing: -0.3px;
line-height: 1.6;
}
.promise-body .orange { color: var(--signal); font-weight: 600; } .promise-pillars {
display: flex;
flex-direction: column;
gap: 20px;
}
.promise-pillar {
display: flex;
gap: 20px;
align-items: flex-start;
background: rgba(255,255,255,0.08);
border-left: 3px solid var(--signal);
border-radius: 0 var(--radius-card-sm) var(--radius-card-sm) 0;
padding: 20px 24px;
}
.pillar-icon {
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
border-radius: 12px;
background: rgba(255,255,255,0.1);
color: var(--signal);
}
.pillar-label {
display: block;
font-size: 18px;
font-weight: 600;
color: #fff;
margin-bottom: 6px;
}
.promise-pillar p {
font-size: 16px;
color: rgba(255,255,255,0.8);
line-height: 1.55;
margin: 0;
}
.promise-pillar .orange { color: var(--signal); font-weight: 600; } .team-section {
background: #fff;
}
.team-section .container {
display: flex;
flex-direction: column;
gap: 60px;
}
.team-header {
display: flex;
align-items: flex-end;
justify-content: space-between;
}
.team-header-left {
display: flex;
flex-direction: column;
gap: 32px;
}
.team-title {
font-size: 56px;
font-weight: 600;
letter-spacing: -1px;
line-height: 1;
}
.team-title .dark { color: var(--sky-deep); }
.team-title .blue { color: var(--sky-bright); }
.team-header-right {
width: 450px;
font-size: 20px;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
}
.team-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 16px;
}
.team-card {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-card);
overflow: hidden;
display: flex;
flex-direction: column;
}
.team-card-img {
height: 325px;
overflow: hidden;
}
.team-card-img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
border-radius: 0 !important;
}
.team-card-body {
padding: 16px;
display: flex;
flex-direction: column;
gap: 8px;
text-align: center;
}
.team-name {
font-size: 20px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.team-role {
font-family: var(--font-mono);
font-size: 13px;
color: var(--sky-bright);
letter-spacing: 0.66px;
text-transform: uppercase;
line-height: 1.2;
}
.team-desc {
font-size: 16px;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.2;
}   .form-section {
background: var(--off-white);
padding: 96px 0;
width: 100%;
}
.form-section > .container {
display: block;
}
.form-content-row {
display: flex;
gap: 48px;
align-items: flex-start;
}
.form-wrapper {
flex: 1;
min-width: 0;
}
.form-title {
font-size: 56px;
font-weight: 600;
letter-spacing: -1px;
line-height: 1;
margin-bottom: 48px;
}
.form-title .dark { color: var(--sky-deep); }
.form-title .blue { color: var(--sky-bright); }
.form-card {
background: #fff;
border: 0.889px solid var(--horizon-dark);
border-radius: var(--radius-card);
padding: 32px;
display: flex;
flex-direction: column;
gap: 32px;
width: 100%;
}
.form-row {
display: flex;
gap: 16px;
}
.form-field {
display: flex;
flex-direction: column;
gap: 12px;
flex: 1;
}
.form-label {
font-size: 16px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
}
.form-label .req { color: var(--signal); }
.form-label .opt { font-size: 12px; color: rgba(11,31,58,0.4); }
.form-input {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 16px;
font-family: var(--font-body);
font-size: 14px;
font-weight: 300;
color: var(--sky-deep);
width: 100%;
}
.form-input::placeholder { color: var(--slate); }
.form-input:focus {
border-color: var(--sky-bright);
outline: none;
}
.form-textarea {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 16px;
font-family: var(--font-body);
font-size: 14px;
font-weight: 300;
color: var(--sky-deep);
width: 100%;
min-height: 120px;
resize: vertical;
}
.form-textarea::placeholder { color: var(--slate); }
.form-textarea:focus {
border-color: var(--sky-bright);
outline: none;
}
.form-privacy {
font-size: 12px;
color: rgba(11,31,58,0.4);
line-height: 1.2;
}
.form-privacy a {
color: var(--sky-bright);
text-decoration: none;
}
.form-info {
width: 400px;
flex-shrink: 0;
}
.contact-details-card {
background: #fff;
border: 0.889px solid var(--horizon-dark);
border-radius: var(--radius-card);
padding: 28px;
display: flex;
flex-direction: column;
gap: 24px;
}
.contact-details-title {
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
}
.contact-item {
display: flex;
gap: 16px;
align-items: flex-start;
}
.contact-icon {
width: 36px;
height: 36px;
background: var(--off-white);
border-radius: var(--radius-input);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.contact-item-details {
display: flex;
flex-direction: column;
gap: 4px;
}
.contact-item-label {
font-family: var(--font-mono);
font-size: 11px;
font-weight: 600;
color: rgba(11,31,58,0.65);
letter-spacing: 0.7px;
text-transform: uppercase;
}
.contact-item-value {
font-size: 15px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -0.3px;
}
.contact-divider {
height: 1px;
background: var(--horizon-dark);
width: 100%;
}   .hero-404 {
position: relative;
width: 100%;
height: 900px;
overflow: hidden;
}
.hero-404-bg {
position: absolute;
inset: 0;
}
.hero-404-bg img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.hero-404-overlay {
position: absolute;
inset: 0;
background: rgba(11, 31, 58, 0.73);
}
.hero-404-content {
position: relative;
z-index: 1;
height: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 32px;
text-align: center;
padding: 0 64px;
}
.error-code {
font-size: 160px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1;
}
.error-code .orange { color: var(--signal); }
.error-heading {
font-size: 40px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1.1;
}
.error-subtitle {
font-size: 18px;
font-weight: 400;
color: rgba(255,255,255,0.7);
letter-spacing: -0.3px;
line-height: 1.5;
max-width: 480px;
}   .policy-section {
padding-top: 128px;
padding-bottom: 64px;
}
.policy-title {
font-size: 56px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
margin-bottom: 32px;
}
.policy-content {
display: flex;
flex-direction: column;
gap: 16px;
}
.policy-content h2 {
font-size: 24px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
margin-top: 16px;
}
.policy-content p {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
}
.policy-content ul {
list-style: disc;
padding-left: 24px;
}
.policy-content ul li {
font-size: 16px;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
margin-bottom: 4px;
}   .entry-title {
font-size: 56px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
margin-bottom: 32px;
}
.entry-content {
font-size: 16px;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.4;
}
.entry-content h2 {
font-size: 32px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
margin-top: 32px;
margin-bottom: 16px;
}
.entry-content h3 {
font-size: 24px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
margin-top: 24px;
margin-bottom: 12px;
}
.entry-content p {
margin-bottom: 16px;
}
.entry-content ul,
.entry-content ol {
margin-bottom: 16px;
padding-left: 24px;
}   .blog-list-section {
background: #fff;
padding: 96px 0 72px;
}
.blog-list-title {
text-align: center;
margin-bottom: 60px;
font-size: 56px;
font-weight: 600;
letter-spacing: -1px;
line-height: 1;
}
.blog-list-title .dark { color: var(--sky-deep); }
.blog-list-title .blue { color: var(--sky-bright); }
.blog-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
margin-bottom: 60px;
}
.blog-card-img {
height: 240px;
overflow: hidden;
}
.blog-card-img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.blog-card-body {
padding: 32px;
display: flex;
flex-direction: column;
gap: 16px;
}
.blog-card-title {
font-size: 24px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.2;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
.blog-card-desc {
font-size: 16px;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.2;
}
.blog-card-meta {
border-top: 0.6px solid var(--horizon-dark);
padding-top: 12px;
padding-bottom: 8px;
display: flex;
justify-content: space-between;
align-items: center;
}
.blog-card-date {
font-size: 14px;
color: rgba(11,31,58,0.6);
letter-spacing: 0.66px;
}
.blog-card-read {
font-size: 14px;
color: var(--sky-bright);
text-transform: uppercase;
letter-spacing: 0.66px;
} .nav-links {
display: flex;
justify-content: center;
gap: 8px;
}
.nav-links .page-numbers {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 44px;
height: 44px;
padding: 8px 16px;
border-radius: var(--radius-input);
border: 1.5px solid var(--horizon-dark);
font-size: 14px;
font-weight: 500;
color: var(--sky-deep);
text-decoration: none;
transition: all 0.2s;
}
.nav-links .page-numbers:hover {
border-color: var(--sky-bright);
color: var(--sky-bright);
}
.nav-links .page-numbers.current {
background: var(--sky-bright);
border-color: var(--sky-bright);
color: #fff;
}   .post-hero {
position: relative;
height: 640px;
overflow: hidden;
display: flex;
flex-direction: column;
}
.post-hero-bg {
position: absolute;
inset: 0;
pointer-events: none;
}
.post-hero-bg img {
position: absolute;
width: 100%;
height: 186%;
top: -43%;
left: 0;
object-fit: cover;
}
.post-hero-overlay {
position: absolute;
inset: 0;
background: linear-gradient(to top, #0b1f3a 13.926%, rgba(26,68,128,0.2) 69.149%);
}
.post-hero-content {
position: absolute;
bottom: 64px;
left: 0;
right: 0;
display: flex;
flex-direction: column;
gap: 32px;
}
.post-hero-title {
font-size: 72px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1;
}
.post-hero-meta {
display: flex;
align-items: center;
gap: 10px;
}
.post-hero-avatar {
width: 32px !important;
height: 32px !important;
border-radius: 50%;
object-fit: cover;
display: block;
flex-shrink: 0;
border: 1.5px solid rgba(255,255,255,0.4);
}
.post-hero-author {
font-size: 15px;
font-weight: 600;
color: #fff;
letter-spacing: -0.2px;
}
.post-hero-meta-dot {
font-size: 15px;
color: rgba(255,255,255,0.5);
}
.post-hero-date {
font-size: 15px;
font-weight: 400;
color: rgba(255,255,255,0.7);
letter-spacing: -0.2px;
} .post-content-section {
background: #fff;
padding: 72px 0 96px;
}
.post-content-inner {
display: flex;
gap: 60px;
align-items: flex-start;
}
.post-body {
flex: 1;
min-width: 0;
}  .post-body * { margin-top: 0; margin-bottom: 0; } .post-body p,
.post-body ul,
.post-body ol,
.post-body figure,
.post-body blockquote,
.post-body table,
.post-body .wp-block-group,
.post-body .wp-block-image,
.post-body .wp-block-quote,
.post-body .wp-block-list,
.post-body .wp-block-table {
margin-bottom: 20px;
} .post-body h2 { margin-top: 48px; margin-bottom: 16px; }
.post-body h3 { margin-top: 36px; margin-bottom: 12px; }
.post-body h4 { margin-top: 28px; margin-bottom: 10px; } .post-body > *:first-child,
.post-body > *:first-child > *:first-child { margin-top: 0; }
.post-body p {
font-size: 16px;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.6;
}
.post-body h2 {
font-size: 32px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.1;
}
.post-body h3 {
font-size: 24px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.1;
}
.post-body h4 {
font-size: 20px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.1;
}
.post-body ul,
.post-body ol {
padding-left: 28px;
}
.post-body ul { list-style: disc; }
.post-body ol { list-style: decimal; }
.post-body ul li,
.post-body ol li {
display: list-item;
font-size: 16px;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.6;
margin-bottom: 8px;
}
.post-body a {
color: var(--sky-bright);
text-decoration: underline;
text-underline-offset: 3px;
}
.post-body a:hover { color: var(--sky-deep); }
.post-body img {
border-radius: var(--radius-card-sm);
max-width: 100%;
height: auto;
display: block;
}
.post-body figure {
display: flex;
flex-direction: column;
gap: 12px;
}
.post-body figcaption,
.post-body .wp-element-caption {
font-size: 12px;
font-weight: 300;
color: rgba(11,31,58,0.6);
letter-spacing: -0.3px;
text-align: center;
margin-bottom: 0;
} .post-body .wp-block-group.is-style-tip,
.post-body .tip-block {
background: #e8f1fb;
border-left: 4px solid var(--sky-bright);
border-radius: 0 12px 12px 0;
padding: 24px 24px 24px 28px;
}
.post-body blockquote,
.post-body .wp-block-quote {
border-left: 4px solid var(--sky-bright);
padding: 16px 24px;
background: #e8f1fb;
border-radius: 0 12px 12px 0;
}
.post-body blockquote p,
.post-body .wp-block-quote p {
font-size: 18px;
color: var(--sky-deep);
font-style: italic;
margin-bottom: 0;
} .post-body table {
width: 100%;
border-collapse: collapse;
font-size: 15px;
}
.post-body th,
.post-body td {
padding: 12px 16px;
border: 1px solid var(--horizon-dark);
color: rgba(11,31,58,0.8);
text-align: left;
}
.post-body th {
background: var(--off-white);
font-weight: 600;
color: var(--sky-deep);
} .post-author {
margin-top: 24px;
}
.post-author-divider {
height: 1px;
background: var(--horizon-dark);
width: 100%;
}
.post-author-row {
display: flex;
align-items: center;
gap: 20px;
padding: 16px 0;
}
.post-author-avatar {
flex-shrink: 0;
}
.post-author-img {
width: 56px !important;
height: 56px !important;
border-radius: 50%;
object-fit: cover;
display: block;
}
.post-author-info {
display: flex;
flex-direction: column;
gap: 3px;
min-width: 0;
}
.post-author-label {
font-size: 12px;
font-weight: 500;
color: rgba(11,31,58,0.6);
letter-spacing: 0.6px;
text-transform: uppercase;
}
.post-author-name {
font-size: 20px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.3px;
}
.post-author-bio {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.6);
line-height: 1.5;
letter-spacing: -0.1px;
} .post-sidebar {
width: 360px;
flex-shrink: 0;
position: sticky;
top: 100px;
}
.sidebar-cta {
border-radius: var(--radius-card);
border: 1px solid rgba(77,166,255,0.2);
background: linear-gradient(139.58deg, #1A4480 3.671%, #0B1F3A 96.329%);
padding: 24px;
display: flex;
flex-direction: column;
gap: 24px;
}
.sidebar-cta-eyebrow {
font-family: var(--font-mono);
font-size: 12px;
color: rgba(255,255,255,0.6);
letter-spacing: 0.88px;
text-transform: uppercase;
line-height: 1.2;
}
.sidebar-cta-title {
font-size: 24px;
font-weight: 600;
color: #fff;
letter-spacing: -1px;
line-height: 1;
}
.sidebar-cta-price {
display: flex;
gap: 12px;
align-items: center;
}
.sidebar-price-main {
font-size: 32px;
font-weight: 600;
color: #fff;
letter-spacing: -1.5px;
line-height: 1;
}
.sidebar-price-old {
font-size: 16px;
color: rgba(255,255,255,0.4);
text-decoration: line-through;
letter-spacing: -0.5px;
}
.sidebar-cta-desc {
font-size: 16px;
color: rgba(255,255,255,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
}
.sidebar-btn {
background: var(--signal);
height: 64px;
border-radius: var(--radius-pill);
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
font-size: 16px;
font-weight: 600;
color: #fff;
cursor: pointer;
text-decoration: none;
transition: background 0.2s;
}
.sidebar-btn:hover { background: var(--signal-dark); color: #fff; } .more-articles {
background: var(--off-white);
padding: 96px 0;
}
.more-articles-header {
display: flex;
align-items: flex-end;
justify-content: space-between;
margin-bottom: 60px;
}
.more-articles-left {
display: flex;
flex-direction: column;
gap: 24px;
}
.more-articles-title {
font-size: 56px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.more-articles-title .blue { color: var(--sky-bright); } @media (max-width: 1023px) {
:root { --page-padding-x: 32px; } .hero-wrapper { height: 600px; padding-top: 80px; }
.hero-content { width: 100%; }
.hero-image-wrap img { object-position: 65% center; }
.hero-h1 { font-size: 48px; letter-spacing: -1px; }
.hero-subtitle { font-size: 18px; }
.hero-buttons { flex-wrap: wrap; } .finder-heading-block { padding: 0 32px; }
.finder-title { font-size: 40px; }
.finder-columns { flex-direction: column; }
.finder-result-wrapper { width: 100%; } .products-header { flex-direction: column; gap: 24px; align-items: flex-start; }
.products-copy { width: 100%; }
.product-cards { flex-wrap: wrap; }
.product-cards .product-card { flex: 0 0 calc(50% - 8px); }
.section-h2 { font-size: 40px; } .platform-section > .container { flex-direction: column; }
.platform-content { width: 100%; }
.platform-h2 { font-size: 40px; } .why-wrapper { min-height: 600px; padding: 64px 0 200px; }
.why-content { max-width: 100%; padding: 0 48px; }
.why-h2 { font-size: 40px; letter-spacing: -1px; }
.why-team-images { gap: 24px; padding: 0 48px; }
.why-team-photo img { width: 160px; height: 200px; } .platform-section > .container { min-height: auto; padding-top: 64px; padding-bottom: 64px; } .testimonial-cards { gap: 16px; }
.testimonial-card { flex: 0 0 340px; max-width: 340px; }
.testimonials-h2 { font-size: 40px; } .blog-header { flex-direction: column; gap: 24px; align-items: flex-start; }
.blog-copy { width: 100%; }
.blog-cards { grid-template-columns: repeat(2, 1fr); }
.blog-h2 { font-size: 40px; } .faq-title { font-size: 40px; } .our-story .container { flex-direction: column; align-items: stretch; }
.our-story-left { flex: none; width: 100%; }
.our-story-right { flex: none; height: 350px; }
.story-title { font-size: 40px; }
.promise-section .container { flex-direction: column; align-items: stretch; }
.promise-copy { flex: none; width: 100%; }
.promise-title { font-size: 40px; }
.promise-img { flex: none; height: 400px; }
.team-grid { grid-template-columns: repeat(2, 1fr); }
.team-title { font-size: 40px; }
.team-header { flex-direction: column; align-items: flex-start; gap: 24px; }
.team-header-right { width: 100%; } .form-section { padding: 64px 0; }
.form-content-row { flex-direction: column; }
.form-info { width: 100%; }
.form-title { font-size: 40px; } .hero-404 { height: 600px; }
.error-code { font-size: 100px; letter-spacing: -1px; }
.error-heading { font-size: 32px; } .policy-section { padding-top: 96px; }
.policy-title { font-size: 40px; } .blog-list-title { font-size: 40px; }
.blog-grid { grid-template-columns: repeat(2, 1fr); } .post-body p { font-size: 15px; }
.post-body h2 { font-size: 22px; margin-top: 32px; }
.post-body h3 { font-size: 19px; margin-top: 24px; }
.post-body h4 { font-size: 17px; margin-top: 20px; }
.post-body ul li, .post-body ol li { font-size: 15px; }
.post-hero { height: 450px; }
.post-hero-title { font-size: 32px; letter-spacing: -1px; }
.post-hero-author { font-size: 13px; }
.post-hero-date { font-size: 13px; }
.post-hero-meta-dot { font-size: 13px; }
.post-hero-avatar { width: 28px !important; height: 28px !important; }
.post-content-inner { flex-direction: column; }
.post-sidebar { width: 100%; position: static; }
.post-author { margin-top: 32px; }
.post-author-img { width: 52px !important; height: 52px !important; }
.more-articles-header { flex-direction: column; gap: 24px; align-items: flex-start; }
.more-articles-title { font-size: 40px; } .form-info { width: 100%; }
.team-grid { grid-template-columns: repeat(2, 1fr); }
.team-card-img { height: 180px; }
}
@media (max-width: 767px) {
:root { --page-padding-x: 20px; } .hero-wrapper { height: auto; min-height: 480px; justify-content: flex-start; padding-top: 48px; padding-bottom: 48px; }
.hero-content { width: 100%; }
.hero-h1 { font-size: 36px; letter-spacing: -1px; }
.hero-subtitle { font-size: 16px; }
.hero-buttons { flex-direction: column; width: 100%; gap: 12px; }
.hero-buttons .btn-primary,
.hero-buttons .btn-secondary { width: 100%; justify-content: center; } .platform-section > .container { min-height: auto; padding-top: 48px; padding-bottom: 48px; }
.platform-content { width: 100%; }
.trust-proof { flex-wrap: wrap; gap: 16px; } .finder-section { padding: 48px 0; }
.finder-heading-block { padding: 0 20px; }
.finder-title { font-size: 32px; }
.finder-subtitle { font-size: 16px; } .product-cards .product-card { flex: 0 0 100%; }
.section-h2 { font-size: 32px; } .platform-h2 { font-size: 32px; }
.platform-body { font-size: 16px; } .why-body { font-size: 16px; }
.why-wrapper { min-height: 500px; padding: 56px 0 100px; }
.testimonials-section { padding: 48px 0; }
.blog-title { font-size: 18px; letter-spacing: -0.5px; }
.blog-card-placeholder { display: none; }
.blog-card-title { font-size: 18px; letter-spacing: -0.5px; }
.why-content { padding: 0 24px; }
.why-h2 { font-size: 32px; letter-spacing: -1px; }
.why-team-images { gap: 16px; padding: 0 24px; }
.why-team-photo img { width: 120px; height: 150px; }
.why-team-name { font-size: 14px; } .testimonial-card { flex: 0 0 85%; max-width: none; }
.testimonials-h2 { font-size: 32px; } .blog-cards,
.blog-grid { grid-template-columns: 1fr; }
.blog-h2 { font-size: 32px; } .faq-title { font-size: 32px; } .story-title { font-size: 32px; }
.our-story-right { height: 260px; }
.stats-bar { flex-direction: column; }
.stat { border-right: none; border-bottom: 1px solid var(--horizon-dark); }
.stat:last-child { border-bottom: none; }
.promise-title { font-size: 32px; }
.promise-body { font-size: 15px; }
.promise-img { height: 260px; }
.promise-pillar { padding: 16px 18px; gap: 14px; }
.pillar-icon { width: 40px; height: 40px; }
.pillar-label { font-size: 16px; }
.promise-pillar p { font-size: 14px; }
.story-body { font-size: 15px; }
.team-header-right { font-size: 16px; width: 100%; }
.team-grid { grid-template-columns: 1fr; margin: 0 64px; }
.team-title { font-size: 32px; } .form-section { padding: 48px 0; }
.form-row { flex-direction: column; }
.form-title { font-size: 32px; }
.form-card .btn-primary { width: 100%; justify-content: center; } .hero-404 { height: 100vh; min-height: 500px; }
.hero-404-content { padding: 0 20px; }
.error-code { font-size: 72px; letter-spacing: -1px; }
.error-heading { font-size: 24px; }
.error-subtitle { font-size: 16px; } .policy-section { padding-top: 80px; }
.policy-title { font-size: 32px; }
.entry-title { font-size: 32px; } .faq-item { padding: 16px; }
} @media (max-width: 450px) { .hero-subtitle { font-size: 15px; }
.section-h2 { font-size: 26px; }
.why-h2 { font-size: 26px; letter-spacing: -1px; }
.blog-h2 { font-size: 26px; }
.testimonials-h2 { font-size: 26px; letter-spacing: -1px; } .plat-hero-h1 { font-size: 28px; letter-spacing: -1px; }
.plat-section-h2 { font-size: 24px; letter-spacing: -0.5px; }
.plat-section-sub { font-size: 15px; } .post-hero-title { font-size: 26px; }
.post-body p { font-size: 14px; }
.post-body h2 { font-size: 20px; }
.post-body h3 { font-size: 17px; }
.post-body h4 { font-size: 15px; }
.post-body ul li, .post-body ol li { font-size: 14px; } .story-title { font-size: 26px; }
.promise-title { font-size: 26px; }
.team-title { font-size: 26px; } .form-title { font-size: 26px; } .faq-title { font-size: 26px; } .testimonials-h2 { font-size: 26px; }
}  .plat-section-h2 {
font-size: 48px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.05;
margin: 12px 0 8px;
}
.plat-section-sub {
font-size: 18px;
font-weight: 400;
color: var(--slate);
letter-spacing: -0.3px;
line-height: 1.4;
margin: 0 0 48px;
} .plat-hero {
background: var(--sky-deep);
padding: 80px 0 0;
overflow: hidden;
}
.plat-hero-inner {
display: grid;
grid-template-columns: 1fr 1fr;
align-items: flex-end;
gap: 48px;
}
.plat-hero-content {
padding-bottom: 80px;
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 24px;
}
.plat-hero-h1 {
font-size: 64px;
font-weight: 700;
color: #fff;
letter-spacing: -1px;
line-height: 1.0;
margin: 0;
}
.plat-hero-sub {
font-size: 20px;
font-weight: 400;
color: rgba(255,255,255,0.75);
letter-spacing: -0.3px;
line-height: 1.4;
margin: 0;
}
.plat-hero-visual {
display: flex;
align-items: flex-end;
justify-content: center;
margin-bottom: -60px;
position: relative;
z-index: 2;
}
.plat-hero-img {
width: 100%;
max-width: 580px;
height: auto;
display: block;
border-radius: 12px;
object-fit: cover;
box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35), 0 8px 20px rgba(0, 0, 0, 0.2);
} .plat-video {
padding: 80px 0;
background: #fff;
}
.plat-video .plat-section-h2,
.plat-video .plat-section-sub {
text-align: center;
}
.plat-video-wrap {
max-width: 800px;
margin: 32px auto 0;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 4px 24px rgba(0,0,0,.1);
aspect-ratio: 16 / 9;
background: #0b1f3a;
}
.plat-video-player {
display: block;
width: 100%;
height: 100%;
object-fit: contain;
} .plat-features {
background: var(--off-white);
padding: 80px 0;
}
.plat-features .plat-section-h2,
.plat-features .plat-section-sub {
text-align: center;
}
.plat-features-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
}
.plat-feature-card {
background: #fff;
border-radius: var(--radius-card);
padding: 40px;
display: flex;
flex-direction: column;
gap: 16px;
}
.plat-feature-icon {
width: 52px;
height: 52px;
background: rgba(45,125,210,0.08);
border-radius: 12px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.plat-feature-title {
font-size: 20px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
margin: 0;
}
.plat-feature-desc {
font-size: 16px;
font-weight: 400;
color: var(--slate);
line-height: 1.55;
letter-spacing: -0.1px;
margin: 0;
} .plat-comparison {
background-color: #1A4480;
background-image: linear-gradient(180deg, #1A4480 30.51%, #0B1F3A 102.86%);
padding: 80px 0;
}
.plat-comparison .eyebrow-tag {
display: block;
width: fit-content;
margin: 0 auto;
}
.plat-comparison .plat-section-h2 {
color: #fff;
text-align: center;
}
.plat-comparison .plat-section-sub {
color: rgba(255,255,255,0.75);
text-align: center;
}
.plat-compare-table {
border: 1px solid rgba(11,31,58,0.1);
border-radius: var(--radius-card);
overflow: hidden;
max-width: 700px;
margin: 0 auto;
}
.plat-compare-header,
.plat-compare-row {
display: grid;
grid-template-columns: 1fr 120px 160px;
}
.plat-compare-header {
background: var(--sky-deep);
}
.plat-compare-row {
border-top: 1px solid rgba(11,31,58,0.08);
background: #fff;
}
.plat-compare-col {
padding: 16px 24px;
font-size: 15px;
font-weight: 400;
color: var(--sky-deep);
display: flex;
align-items: center;
}
.plat-compare-header .plat-compare-col {
color: #fff;
font-weight: 600;
font-size: 14px;
letter-spacing: 0.2px;
}
.plat-col-pdf,
.plat-col-bundle {
justify-content: center;
text-align: center;
}
.plat-col-bundle {
background: rgba(45,125,210,0.06);
}
.plat-compare-header .plat-col-bundle {
background: var(--sky-deep);
}
.plat-bundle-pill {
background: var(--signal);
color: #fff;
font-size: 13px;
font-weight: 600;
padding: 4px 12px;
border-radius: 20px;
letter-spacing: -0.1px;
}
.plat-check {
color: #22C55E;
font-size: 18px;
font-weight: 700;
}
.plat-cross {
color: rgba(11,31,58,0.15);
font-size: 18px;
}
.plat-coming-soon-note {
text-align: center;
font-size: 15px;
font-style: italic;
color: var(--slate);
margin-top: 20px;
}
.plat-soon-badge {
display: inline-block;
font-size: 11px;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.4px;
color: var(--sky-bright);
background: rgba(0,122,255,0.08);
padding: 2px 8px;
border-radius: 4px;
margin-left: 8px;
vertical-align: middle;
} .plat-categories {
background: #fff;
padding: 80px 0;
}
.plat-categories .plat-section-h2 .accent {
color: var(--sky-bright);
}
.plat-cat-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
max-width: 1100px;
margin: 0 auto;
}
.plat-cat-card {
position: relative;
background: var(--off-white);
border: 1.5px solid var(--horizon-dark);
border-radius: var(--radius-card);
padding: 32px;
display: flex;
flex-direction: column;
gap: 12px;
text-decoration: none;
transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}
.plat-cat-card:hover {
border-color: var(--sky-bright);
box-shadow: 0 8px 28px rgba(45, 125, 210, 0.12);
transform: translateY(-2px);
}
.plat-cat-pill {
position: absolute;
top: -12px;
right: 20px;
background: var(--signal);
color: #fff;
font-size: 11px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.5px;
padding: 4px 14px;
border-radius: var(--radius-pill);
white-space: nowrap;
}
.plat-cat-image {
width: 100%;
aspect-ratio: 16 / 10;
border-radius: 8px;
overflow: hidden;
}
.plat-cat-image img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.3s ease;
}
.plat-cat-card:hover .plat-cat-image img {
transform: scale(1.05);
}
.plat-cat-title {
font-size: 20px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.5px;
margin: 4px 0 0;
}
.plat-cat-desc {
font-size: 15px;
color: var(--slate);
line-height: 1.5;
margin: 0;
flex: 1;
}
.plat-cat-link {
font-size: 15px;
font-weight: 600;
color: var(--sky-bright);
margin-top: 4px;
transition: color 0.2s;
}
.plat-cat-card:hover .plat-cat-link {
color: var(--signal);
}
@media (max-width: 768px) {
.plat-cat-grid {
grid-template-columns: 1fr;
max-width: 480px;
}
.plat-categories {
padding: 48px 0;
}
} .plat-products {
background: #fff;
}
.plat-products-header {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 24px;
margin-bottom: 40px;
}
.plat-products-copy {
display: flex;
flex-direction: column;
gap: 8px;
}
.plat-products-h2 {
margin: 0;
}
.plat-products-h2 .accent {
color: var(--sky-bright);
}
.plat-section-h2 .accent {
color: var(--sky-bright);
} @media (max-width: 1023px) {
.plat-section-h2 { font-size: 36px; letter-spacing: -1px; }
.plat-hero { padding: 64px 0 0; }
.plat-hero-inner { gap: 32px; }
.plat-hero-h1 { font-size: 48px; letter-spacing: -1px; }
.plat-hero-sub { font-size: 17px; }
.plat-hero-content { padding-bottom: 64px; }
.plat-hero-visual { margin-bottom: -48px; }
.plat-video { padding: 64px 0; }
.plat-features { padding: 64px 0; }
.plat-feature-card { padding: 28px; }
.plat-comparison { padding: 64px 0; }
} @media (max-width: 767px) { .plat-section-h2 { font-size: 28px; letter-spacing: -1px; margin-bottom: 4px; }
.plat-section-sub { font-size: 15px; margin-bottom: 32px; } .plat-hero { padding: 48px 0 0; }
.plat-hero-inner {
grid-template-columns: 1fr;
gap: 40px;
}
.plat-hero-content { padding-bottom: 0; gap: 20px; }
.plat-hero-h1 { font-size: 36px; letter-spacing: -1px; }
.plat-hero-sub { font-size: 16px; }
.plat-hero-visual { justify-content: flex-start; margin-bottom: -40px; }
.plat-hero-img { border-radius: 8px; max-width: 100%; }
.plat-hero-content .btn-primary { width: 100%; justify-content: center; } .plat-video { padding: 48px 0; }
.plat-video-wrap { margin-top: 24px; border-radius: 8px; } .plat-features { padding: 48px 0; }
.plat-features-grid { grid-template-columns: 1fr; gap: 16px; }
.plat-feature-card { padding: 24px; }
.plat-feature-title { font-size: 18px; } .plat-comparison { padding: 48px 0; }
.plat-compare-table { margin-left: -20px; margin-right: -20px; border-radius: 0; border-left: 0; border-right: 0; }
.plat-compare-header,
.plat-compare-row { grid-template-columns: 1fr 60px 60px; }
.plat-compare-col { padding: 10px 8px; font-size: 13px; line-height: 1.3; }
.plat-compare-header .plat-compare-col { font-size: 10px; line-height: 1.2; }
.plat-bundle-pill { font-size: 9px; padding: 2px 6px; } .plat-products-header {
flex-direction: column;
align-items: flex-start;
gap: 16px;
}
.plat-products-header .btn-secondary { width: 100%; text-align: center; justify-content: center; }
} .hiw-section {
background: var(--white);
}
.hiw-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: start;
}
.hiw-left {
display: flex;
flex-direction: column;
gap: 20px;
}
.hiw-h2 {
font-size: 40px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.1;
}
.hiw-body {
font-size: 17px;
color: rgba(11,31,58,0.7);
letter-spacing: -0.3px;
line-height: 1.65;
}
.hiw-drone-img img {
width: 100%;
border-radius: var(--radius-card);
}
.hiw-card {
background: var(--sky-deep);
border-radius: var(--radius-card);
padding: 40px;
display: flex;
flex-direction: column;
}
.hiw-benefit {
display: flex;
gap: 16px;
align-items: flex-start;
}
.hiw-icon-wrap {
flex-shrink: 0;
width: 40px;
height: 40px;
border-radius: var(--radius-card-sm);
background: rgba(253,125,52,0.15);
color: var(--signal);
display: flex;
align-items: center;
justify-content: center;
}
.hiw-benefit-title {
font-size: 16px;
font-weight: 600;
color: #fff;
letter-spacing: -0.3px;
line-height: 1.3;
margin: 0 0 4px;
}
.hiw-benefit-desc {
font-size: 14px;
color: rgba(255,255,255,0.62);
letter-spacing: -0.2px;
line-height: 1.55;
margin: 0;
}
.hiw-divider {
border: none;
border-top: 1px solid rgba(255,255,255,0.1);
margin: 20px 0;
}  .page-location section {
scroll-margin-top: calc(var(--navbar-height) + 16px);
} .loc-section-header {
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 24px;
margin-bottom: 48px;
}
.loc-section-h2 {
font-size: 40px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.05;
margin: 0;
} .loc-guide-section {
padding: 80px 0;
background: var(--white);
}
.loc-guide-inner {
display: grid;
grid-template-columns: 1fr 260px;
gap: 24px;
align-items: start;
}
.loc-guide-spots {
position: sticky;
top: calc(var(--navbar-height) + 24px);
}
.loc-spots-label {
font-size: 13px;
font-weight: 600;
color: rgba(11,31,58,0.5);
text-transform: uppercase;
letter-spacing: 0.88px;
margin-bottom: 16px;
}
.loc-spots-list {
display: flex;
flex-direction: column;
gap: 12px;
}
.loc-spot-item {
display: flex;
align-items: center;
gap: 10px;
font-size: 14px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -0.3px;
padding: 9px 14px;
background: var(--off-white);
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card-sm);
}
.loc-spot-item svg {
flex-shrink: 0;
color: var(--sky-bright);
} .loc-licences-section {
padding: 80px 0;
background: var(--off-white);
}
.loc-licence-cards {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
}
.loc-licence-card {
display: flex;
flex-direction: column;
gap: 16px;
padding: 0 0 32px;
background: var(--white);
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card);
overflow: hidden;
text-decoration: none;
transition: border-color 0.2s, box-shadow 0.2s;
}
.loc-licence-card:hover {
border-color: var(--sky-bright);
box-shadow: 0 4px 24px rgba(11,31,58,0.08);
}
.loc-licence-img-wrap {
width: 100%;
aspect-ratio: 16/9;
overflow: hidden;
background: var(--off-white);
}
.loc-licence-img {
width: 100%;
height: 100%;
object-fit: cover;
}
.loc-licence-card .loc-licence-name,
.loc-licence-card .loc-licence-desc,
.loc-licence-card .loc-licence-link {
padding: 0 24px;
}
.loc-licence-name {
font-size: 22px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.loc-licence-desc {
font-size: 15px;
color: rgba(11,31,58,0.7);
letter-spacing: -0.3px;
line-height: 1.5;
flex: 1;
}
.loc-licence-link {
font-size: 15px;
font-weight: 600;
color: var(--sky-bright);
letter-spacing: -0.3px;
margin-top: auto;
}
.loc-guide-main {
max-width: 900px;
width: 100%;
}
.loc-guide-h2 {
font-size: 40px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.05;
margin: 0 0 48px;
}
.loc-guide-content {
width: 100%;
}
.loc-guide-content h3 {
font-size: 20px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
margin: 40px 0 12px;
}
.loc-guide-content h3:first-child {
margin-top: 0;
}
.loc-guide-content p {
font-size: 16px;
color: rgba(11,31,58,0.72);
letter-spacing: -0.3px;
line-height: 1.7;
margin: 0 0 16px;
}
.loc-guide-content ul {
margin: 0 0 16px;
padding: 0;
list-style: none;
display: flex;
flex-direction: column;
gap: 10px;
}
.loc-guide-content ul li {
font-size: 16px;
color: rgba(11,31,58,0.72);
letter-spacing: -0.3px;
line-height: 1.6;
padding-left: 20px;
position: relative;
}
.loc-guide-content ul li::before {
content: '–';
position: absolute;
left: 0;
color: var(--sky-bright);
font-weight: 600;
}
.loc-guide-content strong {
color: var(--sky-deep);
font-weight: 600;
} .page-location .hiw-drone-img { display: none; } .loc-nearby-section {
padding: 80px 0;
background: var(--off-white);
}
.loc-nearby-section .loc-section-h2 {
margin-bottom: 40px;
}
.loc-nearby-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}
.loc-nearby-card {
display: flex;
align-items: center;
justify-content: space-between;
padding: 20px 24px;
background: var(--white);
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card-sm);
text-decoration: none;
transition: border-color 0.2s, box-shadow 0.2s;
}
.loc-nearby-card:hover {
border-color: var(--sky-bright);
box-shadow: 0 2px 12px rgba(11,31,58,0.06);
}
.loc-nearby-city {
font-size: 18px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
}
.loc-nearby-label {
font-size: 14px;
font-weight: 500;
color: var(--sky-bright);
letter-spacing: -0.3px;
}
@media (max-width: 767px) {
.loc-guide-section          { padding: 32px 0; }
.loc-licences-section       { padding: 32px 0; }
.loc-nearby-section         { padding: 32px 0; }
.loc-guide-inner            { display: flex; flex-direction: column; gap: 32px; }
.loc-guide-spots            { position: static; width: 100%; }
.loc-section-header         { flex-direction: column; align-items: flex-start; gap: 16px; }
.loc-licence-cards          { grid-template-columns: 1fr; }
.page-location .hiw-layout  { display: flex; flex-direction: column; gap: 32px; }
.page-location .hiw-h2      { font-size: 28px; }
.loc-nearby-grid            { grid-template-columns: repeat(2, 1fr); }
.loc-guide-h2               { font-size: 26px; }
.loc-section-h2             { font-size: 24px; }
.loc-context-h2             { font-size: 24px; }
.loc-guide-content h3       { font-size: 17px; }
}.listing-section {
padding: var(--gap-2xl) 0 var(--gap-xl);
}
.listing-title {
text-align: center;
margin-bottom: var(--gap-2xl);
}
.listing-title .dark { color: var(--sky-deep); }
.listing-title .blue { color: var(--sky-bright); } .category-group {
margin-bottom: var(--gap-3xl);
}
.category-group:last-child {
margin-bottom: 0;
}
.category-group-title {
font-size: 28px;
font-weight: 700;
color: var(--sky-deep);
letter-spacing: -1px;
padding-bottom: var(--gap-sm);
border-bottom: 2px solid var(--sky-bright);
margin-bottom: var(--gap-xl);
}
.woocommerce-main .container {
padding-top: 0;
}
.woocommerce ul.products {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--card-grid-gap);
list-style: none;
padding: 0;
margin: 0;
}
.woocommerce ul.products li.product {
margin: 0;
padding: 0;
width: auto;
float: none;
}
.woocommerce ul.products li.product:only-child {
grid-column-start: 2;
} .woocommerce ul.products li.product .product-card {
height: 100%;
}
.product-card-link {
display: flex;
flex-direction: column;
gap: 12px;
text-decoration: none;
color: inherit;
flex: 1;
}
.product-card-link:hover { color: inherit; }  .cat-pricing-section {
padding: var(--gap-3xl) 0 var(--gap-2xl);
background: var(--off-white);
}
.cat-pricing-heading {
text-align: center;
margin-bottom: var(--gap-sm);
font-size: 36px;
font-weight: 700;
letter-spacing: -1px;
color: var(--sky-deep);
}
.cat-pricing-heading .dark  { color: var(--sky-deep); }
.cat-pricing-heading .accent { color: var(--signal); }
.cat-pricing-subtitle {
text-align: center;
font-size: 18px;
color: var(--slate);
margin-bottom: var(--gap-2xl);
} .cat-pricing-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
max-width: 1100px;
margin: 16px auto 0;
align-items: stretch;
} .cat-pricing-card {
background: var(--white);
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card);
padding: 32px;
display: flex;
flex-direction: column;
gap: 16px;
position: relative;
} .cat-pricing-featured {
background: var(--sky-deep);
border: 1.5px solid rgba(77, 166, 255, 0.2);
box-shadow: 0 12px 40px rgba(11, 31, 58, 0.25);
}
.cat-pricing-featured .cat-pricing-name {
color: #fff;
}
.cat-pricing-featured .cat-pricing-desc {
color: rgba(255, 255, 255, 0.72);
}
.cat-pricing-featured .cat-pricing-current {
color: #fff;
}
.cat-pricing-featured .cat-pricing-original {
color: rgba(255, 255, 255, 0.4);
}
.cat-pricing-featured .cat-pricing-save {
background: rgba(253, 125, 52, 0.15);
color: var(--signal);
}
.cat-pricing-featured .cat-pricing-features-heading {
color: rgba(255, 255, 255, 0.6);
}
.cat-pricing-featured .cat-pricing-features {
border-top-color: rgba(255, 255, 255, 0.12);
}
.cat-pricing-featured .cat-pricing-features li {
color: rgba(255, 255, 255, 0.85);
}
.cat-pricing-featured .cat-pricing-features li + li {
border-top-color: rgba(255, 255, 255, 0.08);
}
.cat-pricing-featured .cat-pricing-rating .rating-count {
color: rgba(255, 255, 255, 0.6);
}
.cat-pricing-featured .star-empty {
color: rgba(255, 255, 255, 0.25);
} .cat-pricing-badge {
position: absolute;
top: -14px;
right: 20px;
background: var(--signal);
color: #fff;
font-size: 12px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.5px;
padding: 5px 16px;
border-radius: var(--radius-pill);
white-space: nowrap;
} .cat-pricing-tags {
display: flex;
gap: 8px;
flex-wrap: wrap;
} .cat-pricing-name {
font-size: 22px;
font-weight: 700;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.2;
margin: 0;
} .cat-pricing-desc {
font-size: 15px;
color: var(--slate);
line-height: 1.5;
margin: 0;
} .cat-pricing-rating {
display: flex;
align-items: center;
gap: 8px;
}
.cat-pricing-rating .stars-wrapper {
display: flex;
gap: 0;
}
.cat-pricing-rating .rating-count {
font-size: 13px;
color: var(--slate);
} .cat-pricing-price {
display: flex;
align-items: baseline;
gap: 8px;
flex-wrap: wrap;
}
.cat-pricing-current {
font-size: 36px;
font-weight: 700;
color: var(--sky-deep);
letter-spacing: -1px;
}
.cat-pricing-current .woocommerce-Price-amount { font-size: inherit; font-weight: inherit; }
.cat-pricing-original {
font-size: 18px;
color: var(--slate);
text-decoration: line-through;
}
.cat-pricing-save {
font-size: 13px;
font-weight: 600;
color: var(--signal-dark);
background: var(--signal-pale);
padding: 3px 10px;
border-radius: var(--radius-tag);
} .cat-pricing-cta {
width: 100%;
text-align: center;
justify-content: center;
} .cat-pricing-demo-link {
font-size: 14px;
color: var(--slate);
text-decoration: none;
font-weight: 500;
text-align: center;
}
.cat-pricing-demo-link:hover {
color: var(--sky-bright);
text-decoration: underline;
} .cat-pricing-features {
border-top: 1px solid var(--horizon);
padding-top: 20px;
}
.cat-pricing-cta {
margin-top: auto;
}
.cat-pricing-features-heading {
font-size: 11px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.8px;
color: var(--slate);
margin: 0 0 4px;
}
.cat-pricing-features-sub {
font-size: 14px;
font-weight: 600;
color: var(--sky-deep);
margin: 0 0 12px;
}
.cat-pricing-features ul {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 0;
}
.cat-pricing-features li {
padding: 10px 0;
font-size: 15px;
color: var(--sky-deep);
display: flex;
align-items: center;
gap: 10px;
line-height: 1.3;
}
.cat-pricing-features li + li {
border-top: 1px solid var(--horizon);
}
.cat-feat-yes::before {
content: '✓';
color: #22C55E;
font-size: 16px;
font-weight: 700;
flex-shrink: 0;
width: 20px;
text-align: center;
}
.cat-feat-no::before {
content: '✗';
color: rgba(11, 31, 58, 0.25);
font-size: 16px;
font-weight: 700;
flex-shrink: 0;
width: 20px;
text-align: center;
}
.cat-feat-no {
color: var(--slate);
} .cat-feat-platform {
color: rgba(255, 255, 255, 0.85);
}
.cat-feat-platform::before {
content: '✓';
width: 20px;
height: 20px;
border-radius: 50%;
background: var(--signal);
color: #fff;
font-size: 12px;
font-weight: 700;
line-height: 20px;
text-align: center;
flex-shrink: 0;
}
.cat-feat-platform-pill {
display: inline-flex;
align-items: center;
padding: 2px 8px;
border-radius: var(--radius-pill);
background: rgba(253, 125, 52, 0.15);
font-family: var(--font-mono);
font-size: 10px;
font-weight: 600;
color: var(--signal);
letter-spacing: 0.6px;
text-transform: uppercase;
white-space: nowrap;
margin-left: auto;
} .cat-pricing-eyebrow {
display: inline-flex;
align-items: center;
gap: 6px;
font-family: var(--font-mono);
font-size: 12px;
font-weight: 500;
letter-spacing: 0.88px;
text-transform: uppercase;
color: var(--slate);
}
.cat-pricing-eyebrow--dark {
color: rgba(255, 255, 255, 0.6);
} .cat-pricing-image {
background: var(--off-white);
border-radius: 12px;
padding: 16px;
display: flex;
align-items: center;
justify-content: center;
min-height: 160px;
}
.cat-pricing-image img {
max-height: 250px;
width: auto;
object-fit: contain;
}
.cat-pricing-image--dark {
background: rgba(255, 255, 255, 0.06);
} .cat-pricing-featured .cat-pricing-cta.btn-primary {
box-shadow: 0 4px 16px rgba(253, 125, 52, 0.3);
}
.cat-pricing-featured .cat-pricing-cta.btn-primary:hover {
box-shadow: 0 6px 20px rgba(253, 125, 52, 0.45);
} .cat-products-section {
padding: var(--gap-2xl) 0;
background: #fff;
}
.cat-products-section + .cat-products-section {
padding-top: var(--gap-lg);
}
.cat-products-heading {
font-size: 28px;
font-weight: 700;
color: var(--sky-deep);
letter-spacing: -1px;
margin-bottom: var(--gap-sm);
text-align: center;
}
.cat-products-heading .accent {
color: var(--signal);
}
.cat-products-subtitle {
font-size: 16px;
color: var(--slate);
margin-bottom: var(--gap-xl);
text-align: center;
}
.cat-products-section .woocommerce ul.products,
.cat-products-section .woocommerce ul.products.columns-1 {
grid-template-columns: repeat(auto-fit, minmax(260px, 300px));
justify-content: center;
max-width: 920px;
margin: 0 auto;
} .cat-products-section--combo .product-card {
border-color: var(--sky-deep);
border-width: 2px;
} @media (max-width: 768px) {
.cat-pricing-grid {
grid-template-columns: 1fr;
max-width: 480px;
}
.cat-pricing-featured {
order: -1;
}
.cat-pricing-heading {
font-size: 28px;
}
.cat-pricing-card {
padding: 24px;
}
.cat-pricing-current {
font-size: 28px;
}
.cat-pricing-name {
font-size: 20px;
}
.cat-pricing-badge {
right: 16px;
}
.cat-pricing-image {
min-height: 120px;
padding: 12px;
}
.cat-pricing-image img {
max-height: 180px;
}
.cat-feat-platform-pill {
font-size: 9px;
padding: 2px 6px;
}
}
@media (max-width: 480px) {
.cat-pricing-section {
padding: var(--gap-2xl) 0 var(--gap-xl);
}
.cat-pricing-card {
padding: 20px;
}
.cat-pricing-heading {
font-size: 24px;
}
} .woocommerce-product-section {
width: 100%;
background: #fff;
padding: 32px 0 64px;
}
.product-layout {
display: flex;
gap: 64px;
align-items: flex-start;
max-width: var(--max-width);
margin: 0 auto;
padding: 0 var(--page-padding-x);
}
.product-left {
flex: 1;
max-width: 420px;
display: flex;
flex-direction: column;
gap: 32px;
position: sticky;
top: calc(var(--navbar-height, 80px) + 32px);
align-self: flex-start;
}
.product-right {
width: 688px;
flex-shrink: 0;
display: flex;
flex-direction: column;
gap: 24px;
position: sticky;
top: calc(var(--navbar-height, 80px) + 32px);
align-self: flex-start;
} .product-image-wrapper { display: flex; flex-direction: column; gap: 16px; width: 100%; }
.main-image {
width: 100%;
aspect-ratio: 1 / 1;
max-height: 620px;
background: var(--off-white);
border-radius: var(--radius-card-sm);
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
}
.main-image img { max-height: 540px; max-width: 250px; width: auto; height: auto; object-fit: contain; cursor: zoom-in; } .de-lightbox {
display: none;
position: fixed;
inset: 0;
z-index: 9999;
background: rgba(0,0,0,0.85);
align-items: center;
justify-content: center;
cursor: zoom-out;
}
.de-lightbox.is-open { display: flex; }
.de-lightbox-img {
max-width: 90vw;
max-height: 90vh;
width: auto;
height: auto;
object-fit: contain;
border-radius: var(--radius-card-sm);
transform: scale(1);
transition: transform 0.25s ease;
cursor: zoom-in;
}
.de-lightbox-img.is-zoomed {
transform: scale(2);
cursor: zoom-out;
}
.de-lightbox-close {
position: absolute;
top: 20px;
right: 24px;
z-index: 1;
background: none;
border: none;
color: #fff;
font-size: 32px;
line-height: 1;
cursor: pointer;
padding: 4px 8px;
opacity: 0.8;
}
.de-lightbox-close:hover { opacity: 1; }
.gallery { display: flex; gap: 10px; flex-wrap: wrap; }
.gallery-thumb {
width: 120px;
height: 120px;
background: var(--off-white);
border-radius: var(--radius-card-sm);
overflow: hidden;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
padding: 8px;
flex-shrink: 0;
transition: box-shadow 0.2s;
}
.gallery-thumb:hover,
.gallery-thumb.active { box-shadow: 0 0 0 2px var(--sky-bright); }
.gallery-thumb img { width: 100%; height: 100%; object-fit: contain; } .product-name {
font-size: 32px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.product-short-desc {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.8);
letter-spacing: -0.3px;
line-height: 1.6;
display: flex;
flex-direction: column;
gap: 20px;
}
.product-short-desc p { margin: 0; }
.product-short-desc ul { list-style: disc; padding-left: 24px; margin: 0; }
.product-short-desc ul li { font-size: 16px; color: rgba(11,31,58,0.8); letter-spacing: -0.3px; line-height: 1.6; margin-bottom: 4px; }
.product-short-desc h2,
.product-short-desc h3,
.product-short-desc h4,
.product-short-desc h5 { margin-top: 8px; }
.product-short-desc a { color: var(--sky-bright); text-decoration: underline; }
.product-short-desc a:hover { color: var(--sky-electric); } .info-strip {
display: flex;
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card-sm);
overflow: hidden;
}
.info-item {
flex: 1;
background: var(--off-white);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 8px;
padding: 16px 12px;
border-right: 1px solid var(--horizon-dark);
text-align: center;
}
.info-item:last-child { border-right: none; }
.info-icon {
width: 32px;
height: 32px;
flex-shrink: 0;
}
.info-icon svg {
width: 100%;
height: 100%;
}
.info-label {
font-family: var(--font-mono);
font-weight: 600;
font-size: 12px;
color: var(--ink);
letter-spacing: 0.88px;
text-transform: uppercase;
line-height: 1.2;
}
.info-value {
font-size: 14px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
} .price-block { display: flex; align-items: center; justify-content: flex-start; gap: 16px; margin-top: 16px; }
.price-current {
font-size: 48px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -2px;
line-height: 1;
}
.price-old {
font-size: 24px;
font-weight: 400;
color: rgba(255,0,0,0.55);
text-decoration: line-through;
letter-spacing: -0.5px;
line-height: 1;
} .cta-block {
display: flex;
flex-direction: column;
gap: 24px;
} form.cart {
display: flex;
flex-direction: column;
gap: 16px;
margin: 0;
padding: 0;
} .cta-row {
display: flex;
gap: 12px;
align-items: stretch;
} .cuw-product-addons:hover {
border-color: var(--sky-bright) !important;
}
.cuw-product-addons .cuw-product-row {
gap: 16px !important;
align-items: center !important;
}
.cuw-product-addons .cuw-product-row > div {
gap: 16px !important;
align-items: center !important;
}
.cuw-product-addons .cuw-product-image {
width: 80px !important;
height: 80px !important;
border-radius: 4px !important;
overflow: hidden !important;
flex-shrink: 0 !important;
}
.cuw-product-addons .cuw-product-image img {
width: 100% !important;
height: 100% !important;
object-fit: contain !important;
}
.cuw-product-addons .cuw-product-checkbox {
width: 22px !important;
height: 22px !important;
border: 1px solid var(--horizon-dark) !important;
border-radius: 4px !important;
background: #fff !important;
margin: 0 !important;
cursor: pointer;
}
.cuw-product-addons .cuw-product-title a {
font-size: 18px !important;
font-weight: 700 !important;
color: var(--sky-deep) !important;
letter-spacing: -0.5px !important;
line-height: 1.2 !important;
}
.cuw-product-addons .cuw-product-price {
font-size: 16px !important;
font-weight: 600 !important;
color: var(--sky-deep) !important;
letter-spacing: -0.5px !important;
white-space: nowrap !important;
flex-shrink: 0 !important;
}
.cuw-product-addons .cuw-product-addons-pricing-section {
display: none !important;
} .qty-input {
width: 32px;
text-align: center;
border: none;
outline: none;
box-shadow: none;
background: transparent;
font-size: 18px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -0.6px;
font-family: var(--font-body);
-moz-appearance: textfield;
appearance: textfield;
}
.qty-selector .qty-input,
.qty-selector .qty-input:focus,
.qty-selector .qty-input:active {
border: none;
outline: none;
box-shadow: none;
}
.qty-input::-webkit-outer-spin-button,
.qty-input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; } .trust-microcopy {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
}
.trust-info {
display: flex;
align-items: center;
gap: 5px;
}
.trust-info svg { width: 14px; height: 14px; flex-shrink: 0; }
.trust-info span { font-size: 12px; font-weight: 500; color: rgba(11,31,58,0.75); letter-spacing: -0.3px; }
.trust-dot { font-size: 13px; color: rgba(11,31,58,0.75); } .ast-single-product-payments { margin-top: 6px; border-color: #dddddd; padding: 30px !important; border-radius: 4px !important; }
.ast-single-product-payments legend { text-align: center !important; font-size: 1.1em !important; font-weight: 600 !important; }
.ast-single-product-payments ul { display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; list-style: none; padding: 0; margin: 0; }
.ast-single-product-payments li.ast-custom-payment { display: inline-flex; align-items: center; }
.ast-single-product-payments .ahfb-svg-iconset { display: inline-flex; }
.ast-single-product-payments .ahfb-svg-iconset svg { width: 52px !important; height: 34px !important; } body.woocommerce-cart { background: #fff !important; }
.cart-section {
width: 100%;
background: #fff;
padding: 40px 0 40px;
} .cart-section .woocommerce-cart-form { margin-bottom: 40px; } .cart-section .woocommerce-notices-wrapper { margin-bottom: 24px; }
.cart-section .woocommerce-notices-wrapper:empty { margin-bottom: 0; }
.cart-table {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
overflow: hidden;
}
.cart-header {
display: grid;
grid-template-columns: 4fr 1fr 1.6fr 1fr 0.4fr;
background: var(--off-white);
border-bottom: 0.8px solid var(--horizon);
padding: 12px 28px;
font-family: var(--font-mono);
font-size: 14px;
font-weight: 600;
color: rgba(11,31,58,0.75);
letter-spacing: 0.88px;
text-transform: uppercase;
text-align: center;
line-height: 1.2;
}
.cart-header span:first-child { text-align: left; }
.cart-item {
display: grid;
grid-template-columns: 4fr 1fr 1.6fr 1fr 0.4fr;
align-items: center;
padding: 24px 28px;
border-bottom: 0.8px solid var(--off-white);
transition: background 0.2s;
}
.cart-item:hover { background: rgba(244,247,251,0.5); }
.cart-item-info { display: flex; align-items: center; gap: 18px; }
.cart-item-thumb {
width: 100px;
height: 100px;
background: #fff;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
overflow: hidden;
padding: 10px;
}
.cart-item-thumb img { height: 80px; width: 49px; }
.cart-item-details { display: flex; flex-direction: column; gap: 8px; }
.cart-item-name {
font-size: 18px !important;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.cart-item-desc {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.2;
}
.cart-item-price {
font-size: 18px;
font-weight: 400;
color: rgba(0,0,0,0.8);
letter-spacing: -0.5px;
text-align: center;
line-height: 1.2;
}
.cart-item-subtotal {
font-size: 22px;
font-weight: 500;
color: #000;
letter-spacing: -0.5px;
text-align: center;
line-height: 1;
}
.cart-item-qty {
display: flex;
align-items: center;
justify-content: center;
align-self: center;
min-width: 0;
overflow: hidden;
}
.cart-item-delete {
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: opacity 0.2s;
}
.cart-item-delete:hover { opacity: 0.6; }
.cart-item-delete svg { width: 20px; height: 20px; color: var(--slate); }
.cart-item-delete:hover svg { color: var(--signal); } .qty-selector.cart-qty {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 10px 12px;
gap: 10px;
width: 120px;
justify-content: center;
} .cart-item .qty-selector.cart-qty input.qty-input,
.cart-item .qty-selector.cart-qty input.qty-input:focus,
.cart-item .qty-selector.cart-qty input.qty-input:active,
.cart-item .qty-selector.cart-qty input[type="number"],
.woocommerce .cart-item .qty-selector.cart-qty input.qty-input,
.woocommerce-page .cart-item .qty-selector.cart-qty input.qty-input {
width: 36px !important;
min-width: 36px !important;
max-width: 36px !important;
border: none !important;
border-left: none !important;
border-right: none !important;
outline: none !important;
box-shadow: none !important;
background: transparent !important;
padding: 0 !important;
text-align: center !important;
color: var(--sky-deep) !important;
font-size: 15px !important;
font-weight: 500 !important;
-webkit-text-fill-color: var(--sky-deep) !important;
opacity: 1 !important;
} .coupon-row {
display: flex;
align-items: center;
gap: 12px;
background: var(--off-white);
border-top: 0.8px solid var(--horizon);
padding: 16px 28px;
flex-wrap: wrap;
}
.coupon-apply-btn {
height: 46px !important;
padding: 0 20px;
font-size: 14px;
flex-shrink: 0;
width: auto;
} #coupon_code.input-text,
.coupon-input,
.coupon-row input.input-text,
.woocommerce .coupon-row input.input-text,
.woocommerce-page .coupon-row input.input-text {
width: 249px !important;
min-width: 249px !important;
max-width: 249px !important;
flex: 0 0 249px !important;
height: 46px;
border: 0.8px solid var(--horizon-dark) !important;
border-radius: var(--radius-input);
padding: 0 14px;
font-family: var(--font-body);
font-size: 14px;
color: var(--sky-deep);
background: #fff;
outline: none;
transition: border-color 0.2s;
flex-shrink: 0 !important;
flex-grow: 0 !important;
}
.coupon-input:focus,
.coupon-row input.input-text:focus { border-color: var(--sky-bright) !important; outline: none; }
.coupon-input::placeholder,
.coupon-row input.input-text::placeholder { color: var(--slate); } .cart-totals {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
overflow: hidden;
align-self: flex-start;
}
.totals-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 24px 24px 24.8px;
border-bottom: 0.8px solid var(--horizon);
}
.totals-header-title {
font-size: 18px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
}
.totals-item-badge {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 4px 12px;
border-radius: 8px;
background: var(--off-white);
border: 0.8px solid var(--horizon);
font-family: var(--font-mono);
font-size: 11px;
font-weight: 600;
color: var(--ink);
letter-spacing: 0.88px;
text-transform: uppercase;
}
.totals-rows {
padding: 12px 24px;
display: flex;
flex-direction: column;
gap: 4px;
}
.totals-row {
display: flex;
align-items: center;
justify-content: space-between;
padding: 12px 0;
}
.totals-row-bordered {
border-bottom: 0.5px solid var(--horizon-dark);
padding-bottom: 12.5px;
}
.totals-label { font-size: 14px; font-weight: 500; color: var(--ink); letter-spacing: -0.2px; }
.totals-value { font-size: 15px; font-weight: 500; color: var(--sky-deep); letter-spacing: -0.3px; }
.totals-value-highlight { font-size: 15px; font-weight: 600; color: var(--sky-bright); letter-spacing: -0.3px; }
.totals-divider {
height: 2px;
background: var(--horizon-dark);
margin-top: -1px; margin-bottom: 4px;
}
.totals-total-label { font-size: 16px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.4px; }
.totals-total-value { font-size: 24px; font-weight: 600; color: var(--sky-deep); letter-spacing: -1.2px; }
.totals-cta {
padding: 12px 24px 20px;
display: flex;
flex-direction: column;
gap: 12px;
}
.totals-cta .btn-primary,
.totals-cta .btn-secondary {
width: 100%;
}
.totals-cta .btn-primary { color: #fff; }
.totals-trust {
display: flex !important;
flex-direction: row !important;
align-items: center !important;
justify-content: center !important;
gap: 12px !important;
flex-wrap: wrap !important;
padding-top: 8px;
border-top: 0.8px solid var(--horizon-dark);
}
.totals-trust .trust-badge { display: flex !important; flex-shrink: 0; }
.totals-trust .trust-badge span { font-size: 11px; font-weight: 600; color: var(--ink); letter-spacing: -0.1px; }
.totals-trust .trust-badge svg { width: 12px; height: 12px; flex-shrink: 0; } .section-heading {
font-size: 32px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.details-container { display: flex; flex-direction: column; }
.details-item {
display: flex;
gap: 12px;
align-items: flex-start;
padding: 17px 0 16px;
border-top: 1px solid var(--horizon-dark);
transition: background 0.2s;
}
.details-item:hover { background: rgba(232,241,251,0.3); }
.details-icon {
width: 40px;
height: 40px;
background: #EAF1FA;
border-radius: 4px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.details-icon svg { width: 24px; height: 24px; }
.details-text { flex: 1; display: flex; flex-direction: column; gap: 4px; }
.details-title {
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
}
.details-desc {
font-size: 14px;
font-weight: 300;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.2;
} .desc-block { display: flex; flex-direction: column; gap: 16px; }
.desc-block ul { list-style: disc; padding-left: 24px; }
.desc-block ul li {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
}
.desc-block p {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.2;
}
.desc-block a { color: var(--sky-bright); text-decoration: underline; }
.desc-block a:hover { color: var(--sky-electric); } .product-long-description {
display: flex;
flex-direction: column;
gap: 16px;
}
.product-long-description h2 {
font-size: 32px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
margin-top: 8px;
}
.product-long-description h3 {
font-size: 24px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.2;
margin-top: 4px;
}
.product-long-description h4 {
font-size: 20px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.2;
}
.product-long-description h5 {
font-size: 18px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.3;
}
.product-long-description h6 {
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.3px;
line-height: 1.3;
}
.product-long-description p {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.5;
margin: 0;
}
.product-long-description p:empty {
display: none;
}
.product-long-description ul,
.product-long-description ol {
list-style: disc;
padding-left: 24px;
margin: 0;
}
.product-long-description ol {
list-style: decimal;
}
.product-long-description ul li,
.product-long-description ol li {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.8);
letter-spacing: -0.5px;
line-height: 1.4;
margin-bottom: 4px;
}
.product-long-description a {
color: var(--sky-bright);
text-decoration: underline;
}
.product-long-description a:hover {
color: var(--sky-electric);
}
.product-long-description strong {
font-weight: 600;
}
.product-long-description img {
max-width: 100%;
height: auto;
border-radius: var(--radius-input);
}
.product-long-description blockquote {
border-left: 4px solid var(--sky-bright);
padding-left: 24px;
font-style: italic;
color: var(--slate);
}
.product-long-description hr {
border: none;
border-top: 1px solid var(--horizon-dark);
margin: 8px 0;
} .guarantee-strip {
background: var(--off-white);
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card-sm);
overflow: hidden;
}
.guarantee-inner {
display: flex;
gap: 8px;
align-items: flex-start;
padding: 16px 13px 16px 12px;
width: 100%;
}
.guarantee-icon {
width: 40px;
height: 40px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.guarantee-icon svg { width: 32px; height: 32px; }
.guarantee-text { flex: 1; display: flex; flex-direction: column; gap: 4px; }
.guarantee-title {
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
}
.guarantee-desc {
font-size: 14px;
font-weight: 300;
color: var(--slate);
letter-spacing: -0.5px;
line-height: 1.2;
} .drone-coverage-strip {
background: var(--off-white);
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card-sm);
margin-top: 10px;
overflow: hidden;
}
.drone-coverage-heading {
display: flex;
align-items: center;
gap: 8px;
padding: 14px 14px 0;
margin-bottom: 12px;
}
.drone-coverage-heading svg {
width: 24px;
height: 24px;
flex-shrink: 0;
}
.drone-coverage-heading span {
font-size: 15px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.3px;
}
.drone-coverage-table {
width: 100%;
border-collapse: collapse;
font-size: 12.5px;
line-height: 1.4;
margin: 0 0 0;
}
.drone-coverage-table thead th {
background: #e9eef5;
font-size: 10px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.6px;
color: var(--sky-deep);
padding: 6px 12px;
text-align: left;
border-bottom: 1px solid var(--horizon-dark);
}
.drone-coverage-table tbody td {
padding: 8px 12px;
color: #3a3f47;
border-bottom: 1px solid #e9eef5;
}
.drone-coverage-table tbody tr:last-child td {
border-bottom: none;
}
.category-badge {
display: inline-block;
background: var(--sky-bright);
color: #fff;
font-size: 11px;
font-weight: 700;
padding: 2px 8px;
border-radius: 10px;
letter-spacing: 0.3px;
}
.drone-coverage-cta {
display: flex;
align-items: center;
gap: 8px;
padding: 10px 14px;
background: #e8f0fc;
border-top: 1px solid var(--horizon-dark);
color: var(--sky-bright);
font-size: 12.5px;
font-weight: 500;
text-decoration: none;
transition: background 0.2s ease;
}
.drone-coverage-cta:hover {
background: #d8e6f8;
color: var(--sky-bright);
}
.drone-coverage-cta svg {
width: 16px;
height: 16px;
flex-shrink: 0;
}
.drone-coverage-cta svg:last-child {
margin-left: auto;
}
.drone-coverage-cta strong {
font-weight: 700;
} .rating-row { display: flex; align-items: center; gap: 8px; }
.stars-sm { display: flex; gap: 4px; }
.star { color: #F5A623; font-size: 14px; line-height: 14px; }
.star-lg { font-size: 22px; color: #F5A623; }
.star-lg.empty { color: var(--horizon-dark); }
.rating-score { font-size: 14px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.3px; }
.rating-link {
font-size: 14px;
font-weight: 400;
color: var(--sky-bright);
letter-spacing: -0.14px;
text-decoration: none;
}
.rating-link:hover { color: var(--sky-electric); text-decoration: underline; } .price-badge {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 8px 12px;
border-radius: 4px;
background: var(--signal-pale);
border: 0.8px solid var(--signal);
font-family: var(--font-mono);
font-size: 14px;
font-weight: 500;
color: var(--signal-dark);
letter-spacing: 0.88px;
text-transform: uppercase;
} .qty-selector {
display: flex;
align-items: center;
gap: 24px;
height: 64px;
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 0 24px;
font-size: 18px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -0.6px;
flex-shrink: 0;
}
.qty-btn {
cursor: pointer;
user-select: none;
background: none;
border: none;
font-size: 18px;
font-weight: 500;
color: var(--sky-deep);
padding: 0;
transition: color 0.2s;
}
.qty-btn:hover { color: var(--signal); }  .toggle-checkbox {
width: 22px;
height: 22px;
border: 1px solid var(--horizon-dark);
border-radius: 4px;
background: #fff;
flex-shrink: 0;
}  .cuw-product-addons.addon-selected {
border-color: var(--sky-bright) !important;
background: rgba(45, 125, 210, 0.06) !important;
}
.cuw-product-addons .cuw-product-row.addon-expanded {
align-items: flex-start !important;
}
.cuw-product-addons .cuw-product-row.addon-expanded > div {
align-items: flex-start !important;
} .addon-more-info-toggle {
display: inline-flex !important;
align-items: center;
gap: 4px;
font-size: 13px !important;
font-weight: 500;
color: var(--sky-bright) !important;
text-decoration: none !important;
cursor: pointer;
margin-top: 4px;
}
.addon-more-info-toggle:hover { color: var(--sky-electric) !important; }
.addon-chevron {
font-size: 11px;
transition: transform 0.2s;
} .addon-expand-section {
overflow: hidden;
animation: addonSlideDown 0.25s ease-out;
}
@keyframes addonSlideDown {
from { opacity: 0; transform: translateY(-6px); }
to   { opacity: 1; transform: translateY(0); }
} .cuw-product-addons .addon-features {
list-style: none !important;
margin: 12px 0 !important;
padding: 0 !important;
display: flex !important;
flex-direction: column;
gap: 6px;
}
.cuw-product-addons .addon-features li {
font-size: 14px;
font-weight: 400;
color: var(--sky-deep);
letter-spacing: -0.3px;
display: flex !important;
align-items: center;
gap: 8px;
}
.cuw-product-addons .addon-features li::before {
content: '\2713' !important;
display: inline-flex !important;
align-items: center;
justify-content: center;
width: 18px;
height: 18px;
border-radius: 50%;
background: #E6F4EA;
color: #1B873E;
font-size: 11px;
font-weight: 700;
flex-shrink: 0;
} .cuw-product-addons .addon-view-details-btn {
display: inline-flex !important;
align-items: center;
gap: 6px;
font-size: 14px;
font-weight: 600;
color: var(--sky-bright) !important;
text-decoration: none !important;
padding: 8px 16px;
border: 1px solid var(--sky-bright) !important;
border-radius: 6px;
transition: background 0.2s, color 0.2s;
}
.cuw-product-addons .addon-view-details-btn:hover {
background: var(--sky-bright);
color: #fff !important;
} .reviews-section {
width: 100%;
background: #fff;
padding: 64px 0;
}
.reviews-section .container { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--page-padding-x); }
.reviews-title-bar {
display: inline-flex;
align-items: center;
padding: 12px 0 14px;
border-bottom: 2px solid var(--sky-bright);
margin-bottom: 32px;
}
.reviews-title-bar h2 { font-size: 24px; font-weight: 600; color: var(--sky-deep); letter-spacing: -1px; line-height: 1; }
.reviews-summary {
background: var(--off-white);
border-radius: var(--radius-card-sm);
padding: 32px;
display: flex;
gap: 48px;
align-items: center;
margin-bottom: 32px;
}
.reviews-left { width: 180px; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.reviews-big-score { font-size: 64px; font-weight: 600; color: var(--sky-deep); letter-spacing: -4px; line-height: 1; }
.reviews-big-stars { display: flex; gap: 4px; }
.reviews-label { font-size: 14px; font-weight: 400; color: rgba(11,31,58,0.6); letter-spacing: -0.3px; }
.reviews-bars { flex: 1; display: flex; flex-direction: column; gap: 8px; }
.bar-row { display: flex; align-items: center; gap: 12px; }
.bar-label { font-size: 14px; font-weight: 500; color: rgba(11,31,58,0.6); letter-spacing: -0.3px; min-width: 40px; text-align: right; }
.bar-track { flex: 1; height: 12px; background: var(--horizon); border-radius: var(--radius-pill); overflow: hidden; }
.bar-fill { height: 100%; background: #F5A623; border-radius: var(--radius-pill); }
.bar-pct { font-size: 14px; font-weight: 500; color: rgba(11,31,58,0.6); letter-spacing: -0.3px; min-width: 30px; text-align: right; }
.review-item {
padding: 16px 0;
border-top: 1px solid var(--horizon-dark);
display: flex;
flex-direction: column;
gap: 6px;
}
.review-item:last-child { border-bottom: 1px solid var(--horizon-dark); }
.review-header { display: flex; align-items: flex-start; justify-content: space-between; }
.reviewer-name { font-size: 14px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.5px; }
.reviewer-role { font-size: 14px; font-weight: 300; color: rgba(11,31,58,0.6); letter-spacing: -0.5px; }
.review-date { font-size: 14px; font-weight: 300; color: rgba(11,31,58,0.6); }
.review-stars { display: flex; gap: 4px; }
.review-text { font-size: 14px; font-weight: 400; color: rgba(11,31,58,0.8); letter-spacing: -0.5px; line-height: 1.2; }
.review-product-tag { margin-top: 8px; }
.review-product-tag a { font-size: 13px; font-weight: 500; color: var(--sky-bright); text-decoration: none; background: #e8f1fb; border-radius: 4px; padding: 2px 8px; display: inline-block; }
.review-product-tag a:hover { background: #d1e5f8; } .btn-add-review {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 13.5px 17.5px;
border-radius: 8px;
background: #e8f1fb;
border: 1.5px solid var(--sky-bright);
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.14px;
text-decoration: none;
text-align: center;
white-space: nowrap;
transition: background 0.2s;
}
.btn-add-review:hover { background: var(--sky-bright); color: #fff; } .reviews-search-row {
display: flex;
gap: 16px;
align-items: center;
margin-bottom: 16px;
}
.reviews-search-bar {
flex: 1;
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
display: flex;
align-items: center;
gap: 10px;
padding: 10px 16px;
}
.reviews-search-bar svg { width: 16px; height: 16px; flex-shrink: 0; color: var(--slate); }
.reviews-search-bar input {
flex: 1;
border: none;
outline: none;
font-size: 13px;
font-weight: 300;
color: var(--sky-deep);
letter-spacing: -0.3px;
background: transparent;
font-family: var(--font-body);
}
.reviews-search-bar input::placeholder { color: var(--slate); }
.reviews-sort {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
padding: 10px 16px;
display: flex;
align-items: center;
gap: 8px;
}
.reviews-sort select {
border: none;
outline: none;
font-size: 13px;
color: var(--sky-deep);
background: transparent;
font-family: var(--font-body);
cursor: pointer;
-webkit-appearance: none;
appearance: none;
}
.reviews-sort-icon { width: 16px; height: 16px; flex-shrink: 0; } .reviews-counter {
font-size: 14px;
font-weight: 400;
color: var(--slate);
letter-spacing: -0.3px;
line-height: 1.2;
margin-bottom: 0;
} .reviews-show-more {
display: flex;
align-items: center;
justify-content: center;
margin-top: 32px;
}
.btn-show-more-reviews {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 0 33.5px;
height: 64px;
border-radius: 8px;
background: #e8f1fb;
border: 1.5px solid var(--sky-bright);
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.14px;
cursor: pointer;
font-family: var(--font-body);
transition: background 0.2s;
}
.btn-show-more-reviews:hover { background: var(--sky-bright); color: #fff; } .related-section {
width: 100%;
background: #f4f7fb;
padding: 96px 0;
}
.related-header {
display: flex;
align-items: flex-end;
justify-content: space-between;
margin-bottom: 60px;
}
.related-header-copy {
display: flex;
flex-direction: column;
gap: 24px;
}
.related-badge {
display: inline-flex;
align-items: center;
justify-content: center;
align-self: flex-start;
width: fit-content;
padding: 8px 12px;
border-radius: 4px;
background: #fff0eb;
border: 0.8px solid #fd7d34;
font-family: var(--font-mono);
font-size: 14px;
color: #e8501a;
letter-spacing: 0.88px;
text-transform: uppercase;
white-space: nowrap;
}
.related-header h2 { font-size: 56px; font-weight: 600; color: var(--sky-deep); letter-spacing: -1px; line-height: 1; }
.related-header h2 span { color: var(--sky-bright); }
.related-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--card-grid-gap);
} .related-section .product-card { text-decoration: none; } .woocommerce ul.products li.product a.btn-primary-icon,
.woocommerce ul.products li.product a.btn-primary-icon:visited,
.related-section a.btn-primary-icon,
.related-section a.btn-primary-icon:visited { color: #fff !important; -webkit-text-fill-color: #fff !important; } .woocommerce ul.products li.product a.btn-primary-icon:hover,
.related-section a.btn-primary-icon:hover {
background: var(--signal-dark) !important;
color: #fff !important;
-webkit-text-fill-color: #fff !important;
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(253,125,52,0.35);
}
.btn-view-all {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 24px 32px;
border-radius: 999px;
background: var(--signal);
color: #fff;
font-size: 16px;
font-weight: 600;
letter-spacing: -0.14px;
text-decoration: none;
white-space: nowrap;
transition: background 0.2s;
}
.btn-view-all:hover { background: var(--signal-dark); color: #fff; } .review-empty {
font-size: 16px;
color: var(--slate);
padding: 32px 0;
}
.review-form-wrap {
margin-top: 48px;
padding-top: 40px;
border-top: 1px solid var(--horizon-dark);
display: flex;
flex-direction: column;
gap: 24px;
}
.review-form-title {
font-size: 28px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1;
}
.review-form-wrap .form-field {
display: flex;
flex-direction: column;
gap: 8px;
margin: 0 0 16px;
}
.review-form-wrap label { font-size: 14px; font-weight: 500; color: var(--sky-deep); }
.review-form-wrap .req { color: var(--signal); }
.review-form-wrap .form-input,
.review-form-wrap .form-textarea {
background: #fff;
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 12px 16px;
font-family: var(--font-body);
font-size: 16px;
color: var(--sky-deep);
outline: none;
transition: border-color 0.2s;
}
.review-form-wrap .form-input:focus,
.review-form-wrap .form-textarea:focus { border-color: var(--sky-bright); }
.review-form-wrap .form-textarea { resize: vertical; min-height: 120px; }
.review-form-wrap .btn-primary { align-self: flex-start; margin-top: 8px; }
.cross-sells-col {
min-width: 0;
display: flex;
flex-direction: column;
}
.cross-sells-col .upsell-wrapper {
flex: 1;
}
.cross-sells-col .woocommerce ul.products,
.cross-sells-col ul.products {
grid-template-columns: repeat(2, 1fr);
width: 100%;
}
.cross-sells-col ul.products li.product,
.cross-sells-col ul.products li.product .product-card {
width: 100%;
}
.cross-sells-col .product-card-name {
font-size: 15px;
-webkit-line-clamp: 4;
} .bottom-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
margin-top: 0; }
.upsell-wrapper {
background: var(--horizon); border-radius: 8px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 24px;
overflow: hidden;
}
.upsell-title { font-size: 32px; font-weight: 600; color: var(--sky-deep); letter-spacing: -1px; line-height: 1; }
.upsell-title span { color: var(--sky-bright); }
.upsell-cards {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 16px;
width: 100%;
flex: 1;
align-content: stretch;
} .upsell-wrapper .product-card {
height: 100%;
display: flex;
flex-direction: column;
}
.upsell-wrapper .product-card-link {
height: 100%;
display: flex;
flex-direction: column;
flex: 1;
} .upsell-wrapper .product-card-name {
min-height: 3em;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.upsell-wrapper .product-card-desc {
flex: 1; display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
.upsell-card {
flex: 1;
background: #fff;
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-card);
padding: 24px;
display: flex;
flex-direction: column;
gap: 16px;
transition: transform 0.2s, box-shadow 0.2s;
}
.upsell-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(0,0,0,0.1); }
.upsell-card-image {
background: var(--off-white);
border-radius: var(--radius-card-sm);
height: 272px;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
padding: 10px;
}
.upsell-card-image img { max-height: 220px; max-width: 135px; object-fit: contain; }
.upsell-card-image a { display: contents; }
.upsell-card-title {
font-size: 18px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -1px;
line-height: 1.2;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4;
overflow: hidden;
}
.upsell-card-title a { color: inherit; text-decoration: none; }
.upsell-card-title a:hover { color: var(--sky-bright); }
.upsell-card-rating {
display: flex;
align-items: center;
gap: 6px;
}
.upsell-card-rating .star-rating { font-size: 16px; }
.upsell-card-review-count { font-size: 12px; color: rgba(11,31,58,0.6); letter-spacing: -0.1px; }
.upsell-card-desc {
font-size: 16px;
font-weight: 400;
color: rgba(11,31,58,0.6);
letter-spacing: -0.5px;
line-height: 1.2;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
overflow: hidden;
}
.upsell-card-price { font-size: 28px; font-weight: 600; color: #000; letter-spacing: -0.5px; line-height: 1; }
.upsell-card-price del { font-size: 16px; font-weight: 400; color: rgba(255,0,0,0.6); text-decoration: line-through; margin-left: 6px; }
.upsell-card-price ins { text-decoration: none; } .cuw-offer .cuw-container { margin: 0; padding: 0; border: 0; background: none; }
.cuw-offer-text, .cuw-discount-text { background: var(--sky-bright, #2D7DD2) !important; }
.platform-banner {
width: 100%;
border-radius: 16px;
background: var(--off-white);
border: 2px solid var(--horizon-dark);
padding: 32px 28px;
display: flex;
align-items: center;
gap: 28px;
margin-bottom: 40px;
transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
.platform-banner:hover {
border-color: var(--sky-bright) !important;
box-shadow: 0 0 0 3px rgba(45,125,210,0.15);
}
.platform-banner .btn-primary:hover,
.platform-banner .btn-banner-cart:hover {
background: #e06a1f !important;
}
.platform-banner-img {
width: 130px;
height: 130px;
border-radius: 12px;
overflow: hidden;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}
.platform-banner-img img { width: 100%; height: 100%; object-fit: contain; }
.platform-banner-text { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 4px; }
.platform-banner-badge {
display: inline-block;
width: fit-content;
font-size: 11px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 1.2px;
color: var(--sky-bright);
background: rgba(45,125,210,0.08);
border: 1px solid rgba(45,125,210,0.15);
border-radius: var(--radius-pill);
padding: 4px 10px;
line-height: 1.4;
margin-bottom: 6px;
}
.platform-banner-title { font-size: 20px; font-weight: 700; color: var(--sky-deep); letter-spacing: -1px; line-height: 1.2; margin: 0; }
.platform-banner-desc { font-size: 15px; font-weight: 400; color: var(--slate); line-height: 1.4; margin: 0; }
.platform-banner .cuw-read-more-link { font-size: 14px; font-weight: 600; color: var(--sky-bright); text-decoration: none; margin-top: 8px; }
.platform-banner .cuw-read-more-link:hover { color: var(--sky-electric); text-decoration: underline; }
.platform-banner .cuw-product-variants { margin-top: 2px; }
.platform-banner .cuw-product-variants select { font-size: 14px; padding: 4px 8px; border: 1px solid var(--horizon-dark); border-radius: var(--radius-input); }
.platform-banner-price { font-size: 26px; font-weight: 700; color: var(--sky-deep); letter-spacing: -0.6px; white-space: nowrap; text-align: center; flex-shrink: 0; }
.platform-banner .cuw-product-price del { display: none; }
.platform-banner .cuw-product-price ins { text-decoration: none; }
.platform-banner-qty { flex-shrink: 0; }
.platform-banner .btn-primary { height: 46px; padding: 0 20px; font-size: 14px; font-weight: 600; color: #fff !important; -webkit-text-fill-color: #fff !important; white-space: nowrap; flex-shrink: 0; border-radius: 10px; }
.platform-banner .cuw-button:disabled { opacity: 0.5; cursor: not-allowed; } .trust-badges {
display: flex;
align-items: center;
justify-content: center;
gap: 16px;
padding: 0 32px;
}
.trust-badge { display: flex; align-items: center; gap: 4px; }
.trust-badge svg { width: 12px; height: 12px; flex-shrink: 0; }
.trust-badge span { font-size: 11px; font-weight: 600; color: var(--ink); letter-spacing: -0.1px; } .checkout-section {
width: 100%;
background: #fff;
padding: 48px 0 64px;
}
.checkout-section .container {
max-width: var(--max-width);
margin: 0 auto;
padding: 0 var(--page-padding-x);
display: flex;
flex-direction: column;
gap: 32px;
align-items: center;
} .attention-banner {
width: 100%;
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
overflow: hidden;
margin-bottom: 20px;
}
.attention-header {
display: flex;
align-items: center;
gap: 12px;
background: var(--sky-mid);
padding: 12px 24px;
}
.attention-title {
font-size: 14px;
font-weight: 600;
color: var(--signal);
letter-spacing: -0.2px;
}
.attention-body { padding: 16px 24px; }
.attention-body p { font-size: 14px; font-weight: 400; color: var(--sky-deep); letter-spacing: -0.2px; line-height: 1.55; }
.attention-body strong { font-weight: 600; } .coupon-bar {
width: 100%;
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
overflow: hidden;
margin-bottom: 20px;
}
.coupon-toggle { padding: 16px 24px; }
.coupon-toggle p { font-size: 14px; font-weight: 400; color: var(--sky-deep); letter-spacing: -0.2px; }
.coupon-toggle a { color: var(--sky-bright); font-weight: 500; text-decoration: none; }
.coupon-toggle a:hover { text-decoration: underline; }
.coupon-input-row {
display: flex;
align-items: center;
gap: 12px;
padding: 16px 28px;
background: var(--off-white);
border-top: 0.8px solid var(--horizon);
}
.coupon-input-field {
flex: 1 1 0;
min-width: 0;
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
padding: 0 16px;
font-size: 14px;
font-weight: 300;
color: var(--sky-deep);
font-family: var(--font-body);
height: 50px;
}
.coupon-input-field::placeholder { color: var(--slate); }
.coupon-input-field:focus { border-color: var(--sky-bright); outline: none; }
.coupon-bar .btn-apply-coupon,
.btn-apply-coupon {
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
height: 50px !important;
padding: 0 24px !important;
white-space: nowrap !important;
flex-shrink: 0 !important;
border-radius: 8px;
background: var(--horizon);
border: 1.5px solid var(--sky-bright);
cursor: pointer;
font-family: var(--font-body);
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.14px;
transition: background 0.2s, color 0.2s;
}
.coupon-bar .btn-apply-coupon:hover,
.btn-apply-coupon:hover { background: var(--sky-bright); color: #fff; } .checkout-main {
width: 100%;
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 24px;
} .billing-details {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
overflow: hidden;
flex: 1;
}
.billing-header {
padding: 20px 28px;
border-bottom: 0.8px solid var(--horizon-dark);
}
.billing-title { font-size: 24px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.8px; }
.billing-form { padding: 24px 28px; display: flex; flex-direction: column; gap: 18px; }
.form-group { display: flex; flex-direction: column; gap: 12px; }
.form-row { display: flex; gap: 16px; }
.form-row .form-group { flex: 1; }
.form-label {
font-size: 16px;
font-weight: 500;
color: var(--sky-deep);
letter-spacing: -0.5px;
line-height: 1.2;
}
.form-label .required { color: var(--signal); }
.form-input {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
padding: 16px;
font-size: 14px;
font-weight: 300;
color: var(--sky-deep);
font-family: var(--font-body);
width: 100%;
transition: border-color 0.2s;
}
.form-input::placeholder { color: var(--slate); }
.form-input:focus { border-color: var(--sky-bright); outline: none; }
.form-hint { font-size: 12px; font-weight: 400; color: rgba(11,31,58,0.4); letter-spacing: -0.3px; line-height: 1.2; }
.form-checkbox { display: flex; align-items: center; gap: 12px; }
.form-checkbox input[type="checkbox"] {
width: 18px;
height: 18px;
border: 0.8px solid var(--horizon-dark);
border-radius: 4px;
cursor: pointer;
flex-shrink: 0;
}
.form-checkbox label {
font-size: 14px;
font-weight: 300;
color: var(--sky-deep);
letter-spacing: -0.2px;
cursor: pointer;
} .order-summary {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
overflow: hidden;
width: 400px;
flex-shrink: 0;
}
.order-header {
padding: 16px 24px;
border-bottom: 0.8px solid var(--horizon-dark);
}
.order-title { font-size: 17px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.5px; }
.order-col-heads {
display: flex;
align-items: center;
justify-content: space-between;
padding: 16px 24px;
border-bottom: 0.8px solid var(--horizon-dark);
font-family: var(--font-mono);
font-size: 12px;
font-weight: 600;
color: var(--ink);
letter-spacing: 0.5px;
text-transform: uppercase;
}
.order-item {
display: flex;
align-items: center;
justify-content: space-between;
padding: 16px 24px;
}
.order-item-wrap { display: flex; align-items: center; gap: 12px; }
.order-item-img {
width: 60px;
height: 60px;
background: var(--off-white);
border-radius: 8px;
padding: 10px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.order-item-img img { max-width: 29px; max-height: 48px; object-fit: contain; }
.order-item-name { font-size: 12px; font-weight: 500; color: var(--sky-deep); letter-spacing: -0.2px; line-height: 1.2; }
.order-item-qty { font-size: 12px; font-weight: 500; color: rgba(11,31,58,0.7); letter-spacing: -0.1px; }
.order-item-price { font-size: 14px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.3px; } .order-totals {
padding: 16px 24px;
border-top: 0.8px solid var(--horizon-dark);
display: flex;
flex-direction: column;
gap: 8px;
}
.order-totals-row { display: flex; align-items: center; justify-content: space-between; }
.order-totals-label { font-size: 12px; font-weight: 500; color: var(--ink); letter-spacing: -0.2px; }
.order-totals-value { font-size: 14px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.3px; }
.order-totals-divider { height: 1px; background: var(--horizon-dark); margin: 4px 0; }
.order-total-final-row { display: flex; align-items: center; justify-content: space-between; }
.order-total-final-label { font-size: 16px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.4px; }
.order-total-final-value { font-size: 20px; font-weight: 700; color: var(--sky-deep); letter-spacing: -1px; } .upgrade-cta {
padding: 24px;
border-top: 0.8px solid var(--horizon-dark);
display: flex;
align-items: center;
justify-content: center;
}
.upgrade-box {
border: 0.8px solid var(--horizon-dark);
border-radius: 8px;
overflow: hidden;
width: 100%;
background: var(--horizon);
}
.upgrade-header { background: var(--horizon); padding: 16px 16px 0; }
.upgrade-header-text { font-size: 18px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.4px; }
.upgrade-body { background: var(--horizon); padding: 12px 16px 16px; display: flex; flex-direction: column; gap: 12px; }
.upgrade-product-row { display: flex; align-items: flex-start; justify-content: flex-start; gap: 14px; }
.upgrade-img {
width: 64px;
height: 64px;
background: var(--off-white);
border-radius: 4px;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.upgrade-img img { width: 100%; height: 100%; object-fit: contain; }
.upgrade-info { display: flex; flex-direction: column; gap: 8px; }
.upgrade-name { font-size: 15px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.3px; line-height: 1.3; }
.upgrade-desc {
background: var(--horizon);
border-radius: 6px;
padding: 8px 12px;
font-size: 12px;
font-weight: 400;
color: var(--sky-mid);
letter-spacing: -0.1px;
line-height: 1.2;
}
.upgrade-read-more {
font-size: 14px;
color: var(--sky-bright);
text-decoration: underline;
text-underline-offset: 2px;
}
.upgrade-price {
font-size: 18px;
font-weight: 600;
color: var(--sky-deep);
}
.upgrade-price-row {
display: flex;
align-items: center;
justify-content: space-between;
padding: 12px 0;
}
.upgrade-qty {
display: flex;
align-items: center;
gap: 12px;
font-size: 16px;
color: var(--sky-deep);
}
.upgrade-qty span {
cursor: pointer;
user-select: none;
width: 32px;
height: 32px;
display: flex;
align-items: center;
justify-content: center;
border: 1px solid var(--horizon-dark);
border-radius: var(--radius-input);
}
.upgrade-checkbox {
display: flex;
align-items: center;
gap: 12px;
padding-top: 12px;
border-top: 1px solid var(--horizon-dark);
}
.upgrade-checkbox label {
font-size: 16px;
font-weight: 500;
color: var(--sky-deep);
cursor: pointer;
}
.upgrade-checkbox input[type="checkbox"] {
width: 20px;
height: 20px;
accent-color: var(--sky-bright);
cursor: pointer;
} .payment-section { border-top: 0.8px solid var(--horizon-dark); }
.payment-header { padding: 16px 24px; border-bottom: 0.8px solid var(--horizon-dark); }
.payment-title { font-size: 17px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.5px; } #payment {
background: transparent !important;
padding: 16px 24px !important;
border-radius: 0 !important;
border: none !important;
}
#payment ul.payment_methods {
list-style: none !important;
padding: 0 !important;
margin: 0 !important;
display: flex !important;
flex-direction: column !important;
gap: 10px !important;
background: transparent !important;
border: none !important;
border-bottom: none !important;
}
#payment ul.payment_methods::after { display: none !important; }
#payment ul.payment_methods li.wc_payment_method:last-child { border-bottom: none !important; }
#payment ul.payment_methods li.wc_payment_method {
margin: 0 !important;
padding: 14px 16px !important;
background: #fff !important;
border: 0.8px solid var(--horizon-dark) !important;
border-radius: 10px !important;
display: flex !important;
flex-wrap: wrap !important;
align-items: center !important;
gap: 12px !important;
transition: border-color 0.15s !important;
}
#payment ul.payment_methods li.wc_payment_method label {
display: flex !important;
align-items: center !important;
gap: 10px !important;
flex: 1 !important;
cursor: pointer !important;
font-size: 14px !important;
font-weight: 500 !important;
color: var(--sky-deep) !important;
background: transparent !important;
border: none !important;
padding: 0 !important;
}
#payment ul.payment_methods li.wc_payment_method input[type="radio"] {
width: 18px !important;
height: 18px !important;
accent-color: var(--sky-bright) !important;
flex-shrink: 0 !important;
margin: 0 !important;
}
#payment ul.payment_methods li.wc_payment_method.payment-method-active,
#payment ul.payment_methods li.wc_payment_method:has(input[type="radio"]:checked) {
border-color: var(--sky-bright) !important;
}
#payment .payment_box {
flex-basis: 100% !important;
background: #f9fafb !important;
border: 0.8px solid var(--horizon-dark) !important;
border-radius: 8px !important;
padding: 16px !important;
margin: 4px 0 0 0 !important;
display: flex !important;
flex-direction: column !important;
gap: 12px !important;
}
#payment .payment_box p {
font-size: 13px !important;
color: var(--slate) !important;
margin: 0 !important;
}
#payment .payment_box input[type="text"],
#payment .payment_box input[type="tel"],
#payment .payment_box input[type="email"],
#payment .payment_box select {
background: #fff !important;
border: 0.8px solid var(--horizon-dark) !important;
border-radius: var(--radius-input) !important;
padding: 16px !important;
font-size: 14px !important;
font-weight: 300 !important;
color: var(--sky-deep) !important;
font-family: var(--font-body) !important;
width: 100% !important;
box-shadow: none !important;
outline: none !important;
}
#payment .payment_box input[type="text"]:focus,
#payment .payment_box input[type="tel"]:focus,
#payment .payment_box input[type="email"]:focus,
#payment .payment_box select:focus {
border-color: var(--sky-bright) !important;
} #payment .place-order,
#payment .form-row.place-order {
display: flex !important;
flex-direction: column !important;
gap: 10px !important;
padding: 16px 0 0 !important;
border-top: 1px solid var(--horizon-dark) !important;
background: transparent !important;
margin: 0 !important;
width: 100% !important;
float: none !important;
}
#place_order,
#payment #place_order,
.woocommerce-checkout #place_order {
display: flex !important;
align-items: center !important;
justify-content: center !important;
float: none !important;
width: 100% !important;
box-sizing: border-box !important;
height: 64px !important;
padding: 0 24px !important;
background: #0B1F3A !important;
border-radius: 8px !important;
border: none !important;
cursor: pointer !important;
font-family: var(--font-body) !important;
font-size: 16px !important;
font-weight: 600 !important;
color: #fff !important;
-webkit-text-fill-color: #fff !important;
letter-spacing: -0.14px !important;
transition: background 0.2s !important;
}
#place_order:hover,
#payment #place_order:hover,
.woocommerce-checkout #place_order:hover {
background: #1e3a5f !important;
color: #fff !important;
-webkit-text-fill-color: #fff !important;
} #payment .woocommerce-terms-and-conditions-wrapper {
display: flex;
flex-direction: column;
gap: 10px;
margin: 0;
width: 100%;
} #payment .woocommerce-privacy-policy-text {
display: block;
font-size: 12px;
color: var(--slate);
text-align: left;
margin: 0;
line-height: 1.5;
}
#payment .woocommerce-privacy-policy-text a {
color: var(--sky-bright);
text-decoration: underline;
} #payment .woocommerce-terms-and-conditions-wrapper .form-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
margin: 0;
padding: 0;
width: 100%;
}
#payment .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
flex-shrink: 0;
margin: 3px 0 0;
width: 16px;
height: 16px;
accent-color: var(--sky-bright);
}
#payment .woocommerce-terms-and-conditions-wrapper label {
font-size: 12px;
color: var(--slate);
line-height: 1.5;
cursor: pointer;
border: none;
background: transparent;
padding: 0;
flex: 1;
} .woocommerce-checkout #payment {
border-radius: 0 !important;
border: none !important;
background: transparent !important;
}
.payment-body { padding: 16px 24px; }
.payment-card-selector {
border: 0.8px solid var(--sky-bright);
border-radius: 10px;
overflow: hidden;
}
.payment-card-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 16px;
}
.payment-option { display: flex; align-items: center; gap: 12px; }
.payment-radio {
width: 18px;
height: 18px;
border-radius: var(--radius-pill);
background: var(--sky-bright);
border: 0.8px solid var(--sky-bright);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.payment-radio-inner { width: 10px; height: 10px; background: #fff; border-radius: var(--radius-pill); }
.payment-fields {
background: #F9FAFB;
padding: 16px;
display: flex;
flex-direction: column;
gap: 12px;
}
.payment-field { display: flex; flex-direction: column; gap: 8px; }
.payment-field-row { display: flex; gap: 12px; }
.payment-field-row .payment-field { flex: 1; }
.payment-field-label { font-size: 12px; font-weight: 500; color: var(--sky-deep); letter-spacing: -0.1px; }
.payment-input {
background: #fff;
border: 0.8px solid var(--horizon-dark);
border-radius: var(--radius-input);
padding: 16px;
font-size: 14px;
font-weight: 300;
color: var(--slate);
font-family: var(--font-body);
width: 100%;
} .place-order-section { padding: 16px 24px; border-top: 1px solid var(--horizon-dark); }
.btn-place-order {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
padding: 17px;
background: var(--sky-deep);
border-radius: var(--radius-input);
border: none;
cursor: pointer;
font-family: var(--font-body);
font-size: 16px;
font-weight: 600;
color: #fff;
letter-spacing: -0.14px;
transition: background 0.2s;
}
.btn-place-order:hover { background: #1e3a5f; } .btn-checkout,
.btn-checkout:visited,
.btn-checkout:link {
width: 100%;
height: 64px;
border-radius: var(--radius-input);
background: var(--sky-deep);
border: none;
cursor: pointer;
font-family: var(--font-body);
font-size: 16px;
font-weight: 600;
color: #fff !important;
-webkit-text-fill-color: #fff !important;
letter-spacing: -0.14px;
display: flex;
align-items: center;
justify-content: center;
transition: background 0.2s;
text-decoration: none;
}
.btn-checkout:hover { background: #1e3a5f; color: #fff !important; -webkit-text-fill-color: #fff !important; } body .woocommerce .wc-proceed-to-checkout a.checkout-button,
body .woocommerce .wc-proceed-to-checkout a.checkout-button:link,
body .woocommerce .wc-proceed-to-checkout a.checkout-button:visited,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:link,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:visited {
background: var(--sky-deep) !important;
border-radius: var(--radius-input) !important;
color: #fff !important;
-webkit-text-fill-color: #fff !important;
text-decoration: none !important;
height: 64px;
font-size: 16px;
font-weight: 600;
}
body .woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
background: #1e3a5f !important;
color: #fff !important;
-webkit-text-fill-color: #fff !important;
}
.btn-continue-shopping {
width: 100%;
height: 64px;
border-radius: var(--radius-input);
background: var(--horizon);
border: 1.5px solid var(--sky-bright);
cursor: pointer;
font-family: var(--font-body);
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
letter-spacing: -0.14px;
display: flex;
align-items: center;
justify-content: center;
transition: background 0.2s, color 0.2s;
}
.btn-continue-shopping:hover { background: var(--sky-bright); color: #fff; } .mini-cart-inner {
display: flex;
flex-direction: column;
gap: 16px;
}
.mini-cart-item {
display: flex;
align-items: center;
gap: 12px;
padding: 12px 0;
border-bottom: 1px solid var(--horizon);
}
.mini-cart-item-img {
width: 60px;
height: 60px;
background: var(--off-white);
border-radius: var(--radius-card-sm);
padding: 8px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.mini-cart-item-img img { max-height: 44px; object-fit: contain; }
.mini-cart-item-thumb {
width: 64px;
height: 64px;
flex-shrink: 0;
border-radius: var(--radius-input);
overflow: hidden;
}
.mini-cart-item-thumb img {
width: 100%;
height: 100%;
object-fit: contain;
}
.mini-cart-item-info { flex: 1; display: flex; flex-direction: column; gap: 4px; }
.mini-cart-item-name { font-size: 14px; font-weight: 600; color: var(--sky-deep); letter-spacing: -0.3px; }
.mini-cart-item-meta { font-size: 12px; color: rgba(11,31,58,0.7); }
.mini-cart-footer {
display: flex;
flex-direction: column;
gap: 12px;
padding-top: 16px;
border-top: 1px solid var(--horizon-dark);
}
.mini-cart-subtotal {
display: flex;
align-items: center;
justify-content: space-between;
font-size: 16px;
font-weight: 600;
color: var(--sky-deep);
}
.mini-cart-buttons {
display: flex;
gap: 12px;
}
.mini-cart-buttons a {
flex: 1;
text-align: center;
}
.mini-cart-item-qty {
font-size: 13px;
color: var(--slate);
}
.mini-cart-empty {
padding: 32px 16px;
text-align: center;
color: var(--slate);
font-size: 14px;
}
.woocommerce-checkout .checkout-layout {
display: grid;
grid-template-columns: 1fr 400px;
gap: 32px;
max-width: var(--max-width);
margin: 0 auto;
padding: 0 var(--page-padding-x);
} .woocommerce-message,
.woocommerce-info {
background: var(--horizon);
border-left: 4px solid var(--sky-bright);
border-radius: 0 var(--radius-input) var(--radius-input) 0;
padding: 16px 24px;
font-size: 14px;
color: var(--sky-deep);
margin-bottom: 24px;
}
.woocommerce-error {
background: var(--signal-pale);
border-left: 4px solid var(--signal-dark);
border-radius: 0 var(--radius-input) var(--radius-input) 0;
padding: 16px 24px;
font-size: 14px;
color: var(--signal-dark);
margin-bottom: 24px;
list-style: none;
}  @media (max-width: 1023px) {
.product-short-desc,
.product-short-desc ul li { font-size: 15px; } .product-layout {
gap: 40px;
padding: 0 var(--gap-xl);
}
.product-right {
width: 380px;
top: calc(var(--navbar-height, 80px) + 24px);
} .woocommerce-checkout .checkout-layout {
grid-template-columns: 1fr;
padding: 0 var(--gap-xl);
}
.cart-header,
.cart-item { grid-template-columns: 3fr 1fr 1fr; }
.cart-item-price,
.cart-item-delete { display: none; }
.checkout-main { flex-direction: column; }
.billing-details { width: 100%; }
.order-summary { width: 100%; }
.bottom-row {
grid-template-columns: 1fr;
}
.upsell-cards { flex-direction: column; }
.platform-banner { flex-wrap: wrap; gap: 16px; padding: 12px 16px; border-radius: 12px; }
.platform-banner-text { flex-basis: 100%; order: -1; }
.platform-banner-img { order: -2; } .woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
.woocommerce ul.products li.product:only-child { grid-column-start: auto; }
.listing-section { padding: var(--gap-4xl) 0 var(--gap-3xl); } .related-grid { grid-template-columns: repeat(2, 1fr); }
.related-header h2 { font-size: 40px; letter-spacing: -2px; }
.related-section { padding: 64px 0; } .reviews-summary { gap: 32px; }
} @media (max-width: 768px) {
.product-short-desc,
.product-short-desc ul li { font-size: 14px; } .woocommerce-product-section { padding: 24px 0 48px; }
.product-layout {
flex-direction: column;
gap: 0;
padding: 0 var(--gap-xl);
} .product-left { display: contents; }
.product-image-wrapper {
order: 1;
width: 100%;
max-width: 100%;
margin-bottom: 24px;
}
.main-image { max-height: 55vw; aspect-ratio: auto; }
.main-image img { max-width: 80%; max-height: 55vw; }
.gallery-thumb { width: 88px; height: 88px; }
.product-right {
order: 2;
width: 100%;
position: static; margin-bottom: 32px;
}
.desc-block,
.product-long-description {
order: 3;
margin-bottom: 32px;
}
.guarantee-strip { order: 4; }
.drone-coverage-strip { order: 5; } .product-name { font-size: 28px; letter-spacing: -0.8px; }
.price-current { font-size: 36px; letter-spacing: -1.5px; }
.section-heading { font-size: 26px; }
.product-long-description h2 { font-size: 24px; }
.product-long-description h3 { font-size: 20px; }
.product-long-description h5 { font-size: 16px; } .info-strip { flex-wrap: wrap; }
.info-item {
flex: 1 0 30%;
border-bottom: 1px solid var(--horizon-dark);
}
.info-item:nth-last-child(-n+2) { border-bottom: none; } .cta-row { gap: 8px; } .coupon-row {
flex-direction: column;
align-items: stretch;
}
#coupon_code.input-text,
.coupon-input,
.coupon-row input.input-text,
.woocommerce .coupon-row input.input-text,
.woocommerce-page .coupon-row input.input-text {
width: 100% !important;
min-width: 0 !important;
max-width: 100% !important;
flex: 1 1 100% !important;
}
.coupon-apply-btn {
width: 100% !important;
} .woocommerce-checkout .checkout-layout { padding: 0 var(--gap-xl); }
.checkout-main { padding: 0; }
.billing-form { padding: 16px; }
.form-row { flex-direction: column; gap: 18px; } .woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
.listing-section { padding: var(--gap-3xl) 0 var(--gap-2xl); } .related-section { padding: 56px 0; }
.related-header { flex-direction: column; gap: 20px; align-items: flex-start; }
.related-header h2 { font-size: 36px; letter-spacing: -1.5px; } .reviews-section { padding: 48px 0; }
.reviews-summary { flex-direction: column; gap: 24px; align-items: stretch; }
.reviews-left { width: 100%; flex-direction: row; flex-wrap: wrap; gap: 16px; align-items: center; }
.reviews-search-row { flex-wrap: wrap; }
.reviews-search-bar { min-width: 0; }
.reviews-sort { flex-shrink: 0; }
} @media (max-width: 450px) { .woocommerce-product-section { padding: 16px 0 40px; }
.product-layout { padding: 0 16px; }
.product-image-wrapper { margin-bottom: 20px; }
.main-image { max-height: 45vw; }
.main-image img { max-width: 90%; max-height: 45vw; }
.gallery-thumb { width: 72px; height: 72px; }
.product-right { margin-bottom: 24px; gap: 20px; }
.product-name { font-size: 20px; letter-spacing: -0.5px; }
.price-current { font-size: 26px; letter-spacing: -1px; }
.price-old { font-size: 15px; } .info-item { flex: 1 0 45%; } .info-item:nth-last-child(2) { border-bottom: 1px solid var(--horizon-dark); }
.info-item:nth-last-child(-n+1) { border-bottom: none; } .cta-row { flex-direction: column; }
.qty-selector { justify-content: center; }
.btn-add-to-cart { width: 100%; flex: none; height: 64px; } .woocommerce ul.products { grid-template-columns: 1fr; }
.listing-section { padding: var(--gap-2xl) 0 var(--gap-xl); }
.listing-title { font-size: 26px; }
.category-group-title { font-size: 22px; } .related-section { padding: 40px 0; }
.related-header { gap: 16px; }
.related-header h2 { font-size: 28px; letter-spacing: -1px; }
.related-badge { font-size: 11px; }
.related-grid { grid-template-columns: 1fr; }
.btn-view-all { padding: 16px 24px; font-size: 14px; } .reviews-section { padding: 32px 0; }
.reviews-summary { padding: 20px; }
.reviews-big-score { font-size: 48px; }
.reviews-search-row { flex-direction: column; }
.reviews-search-bar,
.reviews-sort { width: 100%; }
.reviews-left { flex-direction: column; align-items: flex-start; } .woocommerce-checkout .checkout-layout { padding: 0 16px; }
.cart-header { display: none; }
.cart-item { grid-template-columns: 1fr; gap: 12px; }
.billing-form { padding: 12px; }
.platform-banner { padding: 12px 16px; flex-direction: column; text-align: center; align-items: stretch; border-radius: 12px; }
.platform-banner-img { margin: 0 auto; }
.platform-banner-text { align-items: center; }
.platform-banner-title { font-size: 18px; }
.platform-banner-price { font-size: 24px; }
.platform-banner .btn-primary { width: 100%; } .qty-btn { min-width: 44px; min-height: 44px; }
.gallery-thumb { min-width: 44px; min-height: 44px; }
} .woocommerce-pagination {
text-align: center;
padding: 2em 0 0;
}
.woocommerce-pagination ul.page-numbers {
display: inline-flex;
justify-content: center;
gap: 8px;
list-style: none;
padding: 0;
margin: 0;
border: none;
}
.woocommerce-pagination ul.page-numbers li {
float: none;
border: none;
overflow: visible;
}
.woocommerce-pagination ul.page-numbers li a,
.woocommerce-pagination ul.page-numbers li span {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 44px;
height: 44px;
padding: 8px 16px;
border-radius: var(--radius-input);
border: 1.5px solid var(--horizon-dark);
font-size: 14px;
font-weight: 500;
color: var(--sky-deep);
text-decoration: none;
transition: all 0.2s;
background: transparent;
}
.woocommerce-pagination ul.page-numbers li a:hover {
border-color: var(--sky-bright);
color: var(--sky-bright);
}
.woocommerce-pagination ul.page-numbers li span.current {
background: var(--sky-bright);
border-color: var(--sky-bright);
color: #fff;
} .cuw-modal-body {
font-size: 15px;
color: var(--sky-deep);
line-height: 1.6;
letter-spacing: -0.3px;
}
.cuw-modal-body h2 {
font-weight: 600;
font-size: 22px;
letter-spacing: -0.8px;
line-height: 1.15;
color: var(--sky-deep);
margin: 24px 0 12px;
}
.cuw-modal-body h3 {
font-weight: 600;
font-size: 17px;
letter-spacing: -0.5px;
line-height: 1.2;
color: var(--sky-deep);
margin: 20px 0 8px;
}
.cuw-modal-body h2:first-child,
.cuw-modal-body h3:first-child { margin-top: 0; }
.cuw-modal-body p {
font-size: 15px;
color: var(--slate);
line-height: 1.6;
letter-spacing: -0.3px;
margin: 0 0 12px;
} .cuw-modal-body ul {
list-style: none;
padding: 0;
margin: 0 0 16px;
display: flex;
flex-direction: column;
}
.cuw-modal-body ul li {
padding: 8px 0;
font-size: 15px;
color: var(--sky-deep);
display: flex;
align-items: flex-start;
gap: 10px;
line-height: 1.45;
letter-spacing: -0.3px;
}
.cuw-modal-body ul li + li { border-top: 1px solid var(--horizon); }
.cuw-modal-body ul li::before {
content: '\2713';
color: #22C55E;
font-size: 15px;
font-weight: 700;
flex-shrink: 0;
width: 20px;
text-align: center;
line-height: 1.45;
} .cuw-modal-body hr {
border: none;
border-top: 1.5px solid var(--horizon-dark);
margin: 20px 0;
} .cuw-modal-body table {
width: 100%;
border-collapse: collapse;
border-radius: var(--radius-input);
overflow: hidden;
margin: 12px 0 16px;
font-size: 14px;
}
.cuw-modal-body thead th {
background: var(--sky-deep);
color: #fff;
font-weight: 600;
font-size: 13px;
letter-spacing: -0.14px;
text-align: left;
padding: 10px 14px;
}
.cuw-modal-body tbody td {
padding: 9px 14px;
color: var(--sky-deep);
font-size: 14px;
line-height: 1.4;
border-bottom: 1px solid var(--horizon);
}
.cuw-modal-body tbody tr:nth-child(even) td { background: var(--off-white); }
.cuw-modal-body tbody tr:last-child td { border-bottom: none; }
@media (max-width: 600px) {
.cuw-modal-body h2 { font-size: 19px; margin: 20px 0 10px; }
.cuw-modal-body h3 { font-size: 16px; }
.cuw-modal-body table { font-size: 13px; }
.cuw-modal-body thead th,
.cuw-modal-body tbody td { padding: 8px 10px; }
}