:root {
  --azs-navy: #071d35;
  --azs-blue: #0b3158;
  --azs-orange: #f04a24;
  --azs-cream: #f5f3ed;
  --azs-white: #ffffff;
  --azs-ink: #101820;
  --azs-muted: #526170;
  --azs-line: #dce3e9;
  --azs-shadow: 0 20px 55px rgba(7, 29, 53, .12);
}

.azs-home, .azs-calculator { color: var(--azs-ink); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.azs-calculator, .azs-calculator * { box-sizing: border-box; }
.home .wp-block-post-title { display: none; }
.wp-site-blocks > header.wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part { display: none !important; }
body.home .wp-site-blocks > main { margin-block-start: 0 !important; }
body.home .wp-site-blocks > main > .wp-block-group { padding-block-start: 0 !important; }
body.home .wp-site-blocks > main .wp-block-post-content { margin-block-start: 0 !important; }
.azs-site-header { position: sticky; top: 0; z-index: 100; min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: .75rem max(4vw, calc((100vw - 1240px) / 2)); border-bottom: 1px solid #e3e7eb; background: rgba(255,255,255,.97); box-shadow: 0 7px 24px rgba(7,29,53,.06); backdrop-filter: blur(12px); font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
body.admin-bar .azs-site-header { top: 32px; }
.azs-site-logo { display: block; width: 205px; line-height: 0; }
.azs-site-logo img { display: block; width: 100%; height: auto; }
.azs-site-header nav { display: flex; align-items: center; justify-content: flex-end; gap: clamp(.75rem, 1.7vw, 1.5rem); }
.azs-site-header nav a { position: relative; color: var(--azs-navy); font-size: .86rem; font-weight: 800; text-decoration: none; transition: color .2s ease, transform .2s ease; }
.azs-site-header nav a:hover { color: var(--azs-orange); }
.azs-site-header .azs-cart-link { padding: .68rem 1rem; border-radius: 9px; color: white; background: var(--azs-orange); box-shadow: 0 8px 20px rgba(240,74,36,.2); }
.azs-site-footer { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 3rem; padding: 4rem max(5vw, calc((100vw - 1240px) / 2)); color: #bfcbd6; background: #041324; font-family: Inter, ui-sans-serif, system-ui, sans-serif; }
.azs-site-footer img { display: block; width: 230px; margin-bottom: 1rem; }
.azs-site-footer p { max-width: 450px; line-height: 1.6; }
.azs-site-footer > div { display: flex; flex-direction: column; align-items: flex-start; gap: .55rem; }
.azs-site-footer strong { margin-bottom: .35rem; color: white; }
.azs-site-footer a { color: #bfcbd6; text-decoration: none; }
.azs-site-footer a:hover { color: white; }
.azs-home * { box-sizing: border-box; }
.azs-home { position: relative; left: 50%; width: 100vw; max-width: none; margin: 0; overflow: hidden; background: var(--azs-white); transform: translateX(-50%); }
.azs-hero { position: relative; min-height: 650px; display: grid; grid-template-columns: 1.02fr .98fr; align-items: center; gap: clamp(2rem, 5vw, 5rem); padding: clamp(4.5rem, 7vw, 7.5rem) max(5vw, calc((100vw - 1240px) / 2)); color: white; background: radial-gradient(circle at 76% 30%, #164f81 0, var(--azs-navy) 42%, #03111f 100%); }
.azs-hero::before { content: ""; position: absolute; width: 410px; height: 410px; right: -160px; top: -170px; border-radius: 50%; background: rgba(240,74,36,.12); filter: blur(3px); }
.azs-hero::after { content: ""; position: absolute; inset: auto -6% -15% 42%; height: 230px; background: repeating-linear-gradient(-18deg, transparent 0 30px, rgba(240,74,36,.16) 31px 43px); transform: skewX(-14deg); }
.azs-hero__copy, .azs-hero__visual { position: relative; z-index: 1; }
.azs-kicker { display: inline-block; color: var(--azs-orange); font-size: .78rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.azs-hero h1 { max-width: 760px; margin: .8rem 0 1.3rem; color: white; font-size: clamp(3rem, 5.3vw, 5.8rem); line-height: .96; letter-spacing: -.055em; }
.azs-hero h1 em { color: var(--azs-orange); font-style: normal; }
.azs-hero p { max-width: 670px; color: #dbe7f3; font-size: clamp(1.08rem, 1.5vw, 1.35rem); line-height: 1.65; }
.azs-actions { margin-top: 2rem; display: flex; align-items: center; gap: .8rem; flex-wrap: wrap; }
.azs-button { display: inline-flex; align-items: center; justify-content: center; min-height: 54px; padding: .9rem 1.45rem; border-radius: 7px; color: white !important; background: var(--azs-orange); font-weight: 900; text-decoration: none !important; text-transform: uppercase; letter-spacing: .04em; box-shadow: 0 12px 28px rgba(240,74,36,.25); transition: transform .2s ease, box-shadow .2s ease; }
.azs-button:hover { transform: translateY(-2px); box-shadow: 0 16px 32px rgba(240,74,36,.35); }
.azs-button--ghost { border: 1px solid rgba(255,255,255,.38); color: white !important; background: rgba(255,255,255,.07); box-shadow: none; }
.azs-button--ghost:hover { background: rgba(255,255,255,.13); box-shadow: none; }
.azs-hero-proof { display: flex; gap: .7rem 1.35rem; flex-wrap: wrap; margin: 1.5rem 0 0; padding: 0; color: #c6d5e3; font-size: .84rem; font-weight: 750; list-style: none; }
.azs-hero-proof li::before { content: "✓"; margin-right: .4rem; color: var(--azs-orange); font-weight: 950; }
.azs-hero__visual { min-height: 420px; display: grid; place-items: center; }
.azs-hero__image-wrap { width: min(100%, 580px); overflow: hidden; border: 1px solid rgba(255,255,255,.18); border-radius: 30px; background: #092744; box-shadow: 0 35px 75px rgba(0,0,0,.38); transform: rotate(1.2deg); }
.azs-hero__visual img { display: block; width: 100%; height: auto; }
.azs-speed-card { position: absolute; right: -8px; bottom: 1%; width: 145px; aspect-ratio: 1; display: grid; place-content: center; padding: 1rem; border: 3px solid white; border-radius: 50%; color: white; background: var(--azs-orange); text-align: center; transform: rotate(-8deg); box-shadow: 0 18px 38px rgba(0,0,0,.25); }
.azs-speed-card strong { font-size: 1.25rem; }
.azs-speed-card small { display: block; font-size: .7rem; text-transform: uppercase; }
.azs-trust-strip { display: flex; justify-content: center; gap: clamp(1.5rem, 5vw, 5rem); flex-wrap: wrap; padding: 1.25rem 5vw; color: white; background: var(--azs-orange); box-shadow: 0 10px 30px rgba(240,74,36,.16); font-size: .78rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.azs-trust-strip span::before { content: "✓"; margin-right: .45rem; }
.azs-section { padding: clamp(5rem, 8vw, 8rem) max(5vw, calc((100vw - 1240px) / 2)); }
.azs-section__head { max-width: 820px; margin-bottom: 3rem; }
.azs-section__head p { max-width: 750px; margin: 1rem 0 0; color: var(--azs-muted); font-size: 1.05rem; line-height: 1.65; }
.azs-section h2, .azs-value h2, .azs-final-cta h2 { margin: .55rem 0 0; color: var(--azs-navy); font-size: clamp(2.4rem, 4vw, 4.5rem); line-height: 1.02; letter-spacing: -.045em; }
.azs-shape-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1rem; }
.azs-shape-card { min-height: 315px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .85rem; padding: 1.45rem; border: 1px solid var(--azs-line); border-radius: 20px; color: var(--azs-navy) !important; background: linear-gradient(145deg, #fff 0, #f7f9fb 100%); box-shadow: 0 12px 32px rgba(7,29,53,.06); text-align: center; text-decoration: none !important; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.azs-shape-card:hover { transform: translateY(-7px); border-color: rgba(240,74,36,.55); box-shadow: var(--azs-shadow); }
.azs-shape-card strong { font-size: 1.05rem; }
.azs-shape-card p { min-height: 3.9em; margin: 0; color: var(--azs-muted); font-size: .85rem; line-height: 1.5; }
.azs-shape-card small { color: var(--azs-orange); font-weight: 800; }
.azs-shape { width: 82px; height: 82px; border: 7px solid var(--azs-navy); background: linear-gradient(145deg, #ff6b38, var(--azs-orange)); box-shadow: inset 0 0 0 5px white, 0 12px 24px rgba(7,29,53,.13); }
.azs-shape--square { border-radius: 9px; }
.azs-shape--circle { border-radius: 50%; }
.azs-shape--oval { width: 112px; border-radius: 50%; }
.azs-shape--rectangle { width: 118px; height: 72px; border-radius: 8px; }
.azs-shape--custom { border-radius: 52% 30% 44% 22%; transform: rotate(-12deg); }
.azs-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; padding: 0 max(5vw, calc((100vw - 1240px) / 2)) clamp(5rem, 8vw, 8rem); }
.azs-process > div { min-height: 235px; padding: 2rem; border: 1px solid #e6e0d6; border-radius: 18px; background: var(--azs-cream); }
.azs-process b { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 50%; color: white; background: var(--azs-orange); font-size: .78rem; }
.azs-process h3 { margin: 2rem 0 .6rem; color: var(--azs-navy); font-size: 1.35rem; }
.azs-process p { margin: 0; color: #4e5d6b; line-height: 1.55; }
.azs-value { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; padding: clamp(5rem, 8vw, 8rem) max(5vw, calc((100vw - 1240px) / 2)); color: white; background: var(--azs-navy); }
.azs-value h2 { color: white; }
.azs-value__intro { max-width: 560px; color: #afc0cf; font-size: 1.02rem; line-height: 1.7; }
.azs-value__points { display: grid; gap: 1.4rem; }
.azs-value__points p { margin: 0; padding: 0 0 1.4rem 1.3rem; border-bottom: 1px solid rgba(255,255,255,.15); border-left: 3px solid var(--azs-orange); color: #cbd8e3; line-height: 1.55; }
.azs-value__points strong { color: white; font-size: 1.1rem; }
.azs-faq { background: #f7f9fb; }
.azs-faq__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.azs-faq details, .azs-product-faq details { overflow: hidden; border: 1px solid var(--azs-line); border-radius: 14px; background: white; box-shadow: 0 8px 22px rgba(7,29,53,.045); }
.azs-faq summary, .azs-product-faq summary { padding: 1.15rem 3rem 1.15rem 1.2rem; color: var(--azs-navy); font-weight: 850; cursor: pointer; }
.azs-faq details p, .azs-product-faq details p { margin: 0; padding: 0 1.2rem 1.2rem; color: var(--azs-muted); line-height: 1.65; }
.azs-final-cta { position: relative; overflow: hidden; padding: clamp(5rem, 8vw, 8rem) 5vw; color: white; background: linear-gradient(135deg, var(--azs-orange), #ff6a35); text-align: center; }
.azs-final-cta::after { content: ""; position: absolute; inset: auto -5% -55% 35%; height: 300px; background: repeating-linear-gradient(-18deg, transparent 0 30px, rgba(7,29,53,.13) 31px 44px); transform: skewX(-12deg); }
.azs-final-cta > * { position: relative; z-index: 1; }
.azs-final-cta .azs-kicker { color: var(--azs-navy); }
.azs-final-cta h2 { max-width: 800px; margin: .5rem auto 2rem; color: white; }
.azs-button--light { color: var(--azs-navy) !important; background: white; box-shadow: none; }

.azs-calculator { margin: 1.5rem 0; padding: 1.5rem; border: 1px solid #d9e0e7; border-radius: 16px; background: #f8fafc; box-shadow: 0 16px 40px rgba(7,29,53,.08); }
.azs-calc-heading h3 { margin: .3rem 0 1.3rem; color: var(--azs-navy); font-size: 1.7rem; }
.azs-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.azs-field-grid label { min-width: 0; display: grid; align-content: start; gap: .45rem; font-weight: 800; }
.azs-field-grid input, .azs-field-grid select { width: 100%; min-width: 0; height: 52px; margin: 0; padding: .7rem .8rem; border: 1px solid #bac5cf; border-radius: 6px; background: white; font: inherit; }
.azs-field-grid input[type="file"] { height: 52px; padding: .45rem .6rem; }
.azs-field-grid input:focus, .azs-field-grid select:focus { outline: 3px solid rgba(240,74,36,.16); border-color: var(--azs-orange); }
.azs-field-grid small { color: #62717e; font-weight: 400; }
.azs-artwork { grid-column: 1 / -1; }
.azs-price-preview { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: .3rem 1rem; margin-top: 1.25rem; padding: 1.15rem; border-radius: 8px; color: white; background: var(--azs-navy); }
.azs-price-preview span { font-size: .8rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.azs-price-preview strong { color: white; font-size: 1.3rem; }
.azs-price-preview small { grid-column: 1 / -1; color: #bdcad6; }
.azs-production-note { margin: 1rem 0 0; font-size: .9rem; }
.azs-notice { margin-bottom: 1rem; padding: .9rem; border-left: 4px solid var(--azs-orange); background: #fff2ee; }
.azs-price-label { color: var(--azs-orange); font-weight: 800; }
.azs-sticker-product form.cart > .quantity { display: none !important; }
.azs-sticker-product .summary .product_title { color: var(--azs-navy); letter-spacing: -.035em; }
.azs-sticker-product .single_add_to_cart_button { min-height: 54px; padding: .85rem 1.3rem !important; border-radius: 8px !important; background: var(--azs-orange) !important; font-weight: 850 !important; text-transform: uppercase; letter-spacing: .035em; box-shadow: 0 12px 25px rgba(240,74,36,.22); }
.azs-sticker-product .woocommerce-product-gallery { overflow: hidden; border-radius: 20px; background: var(--azs-navy); box-shadow: var(--azs-shadow); }
.azs-sticker-product .woocommerce-product-gallery img { display: block; width: 100%; height: auto; }
.azs-product-copy { color: var(--azs-ink); }
.azs-product-copy > section { margin: 2rem 0; }
.azs-product-copy h2 { color: var(--azs-navy); letter-spacing: -.025em; }
.azs-product-copy > section > p { max-width: 850px; color: var(--azs-muted); font-size: 1.03rem; line-height: 1.7; }
.azs-product-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 1.5rem; }
.azs-product-benefits p { margin: 0; padding: 1.2rem; border: 1px solid var(--azs-line); border-radius: 14px; background: #f8fafc; color: var(--azs-muted); line-height: 1.55; }
.azs-product-benefits strong { color: var(--azs-navy); }
.azs-product-faq { display: grid; gap: .75rem; }
.azs-product-faq h2 { margin-bottom: .35rem; }

.azs-sticker-product.azs-no-product-image .woocommerce-product-gallery { position: relative; min-height: 510px; display: grid; place-items: center; overflow: hidden; border-radius: 18px; background: radial-gradient(circle at 75% 24%, #1d5c8f 0, var(--azs-navy) 44%, #041324 100%); }
.azs-sticker-product.azs-no-product-image .woocommerce-product-gallery::before { content: ""; position: absolute; inset: 0; z-index: 2; background: url('custom-die-cut-stickers-hero.webp') center / cover no-repeat; }
.azs-sticker-product.azs-no-product-image .woocommerce-product-gallery::after { content: "CUSTOM DIE-CUT STICKERS"; position: absolute; right: 1.5rem; bottom: 1.25rem; z-index: 3; color: white; font-size: .72rem; font-weight: 900; letter-spacing: .16em; }
.azs-sticker-product.azs-no-product-image .woocommerce-product-gallery img { opacity: 0; }

@media (max-width: 980px) {
  .azs-site-header { align-items: flex-start; }
  .azs-site-header nav { flex-wrap: wrap; }
  .azs-hero, .azs-value { grid-template-columns: 1fr; }
  .azs-hero { min-height: 0; gap: 2rem; }
  .azs-hero__visual { min-height: 320px; }
  .azs-hero__image-wrap { width: min(80vw, 560px); }
  .azs-shape-grid { grid-template-columns: repeat(2, 1fr); }
  .azs-process { grid-template-columns: repeat(2, 1fr); }
  .azs-product-benefits { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  body.admin-bar .azs-site-header { top: 46px; }
  .azs-site-header { display: grid; gap: .7rem; padding-inline: 1rem; }
  .azs-site-logo { width: 180px; }
  .azs-site-header nav { width: 100%; justify-content: flex-start; gap: .7rem 1rem; overflow-x: auto; flex-wrap: nowrap; padding-bottom: .25rem; white-space: nowrap; scrollbar-width: thin; }
  .azs-site-header nav a { font-size: .75rem; }
  .azs-site-footer { grid-template-columns: 1fr; }
  .azs-hero { padding-top: 4rem; padding-bottom: 4rem; }
  .azs-hero h1 { font-size: clamp(2.6rem, 13vw, 3.5rem); }
  .azs-hero-proof { display: grid; }
  .azs-hero__image-wrap { width: 100%; border-radius: 20px; }
  .azs-speed-card { right: -4px; width: 108px; }
  .azs-shape-grid, .azs-process, .azs-field-grid, .azs-faq__grid { grid-template-columns: 1fr; }
  .azs-shape-card { min-height: 210px; }
  .azs-shape-card p { min-height: 0; }
  .azs-artwork { grid-column: auto; }
  .azs-price-preview { grid-template-columns: 1fr; }
  .azs-price-preview small { grid-column: auto; }
}
