/* AusPepLabs Frontend — scoped to .apl-sec / .apl-* so other pages & WooCommerce screens are untouched.
   Design tokens are taken from the approved headless build. */
:root{--apl-g:32px;--apl-w:1200px;
/* icons (decorative, via CSS mask) */
--i-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14m-6-6 6 6-6 6'/%3E%3C/svg%3E");
--i-doc:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2H5v20h14V7l-5-5Zm0 0v6h5M8 13h8m-8 4h5'/%3E%3C/svg%3E");
--i-truck:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 5h12v12H2zM14 9h4l4 4v4h-8'/%3E%3Ccircle cx='6' cy='18' r='2'/%3E%3Ccircle cx='18' cy='18' r='2'/%3E%3C/svg%3E");
--i-bag:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 7h14l1 14H4L5 7Z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3C/svg%3E");
--i-flask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3h6m-5 0v7L4 20a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1l-6-10V3M7 15h10'/%3E%3C/svg%3E");
--i-check:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4 4L19 6'/%3E%3C/svg%3E");
--i-search:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m16 16 4 4'/%3E%3C/svg%3E");
--i-menu:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16'/%3E%3C/svg%3E");
--i-close:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 6 12 12M18 6 6 18'/%3E%3C/svg%3E");}

/* ---------- base ---------- */
body .apl-sec,body .apl-sec *{font-family:var(--apl-font)}
body .apl-sec{color:var(--apl-ink);font-size:15px;line-height:1.65;box-sizing:border-box}
body .apl-sec *,body .apl-sec *::before,body .apl-sec *::after{box-sizing:border-box}
:where(.apl-sec) .elementor-widget{margin:0}
body .apl-sec p{margin:0;color:var(--apl-muted)}
body .apl-sec a{text-decoration:none}
body .apl-sec .elementor-heading-title{font-weight:500;line-height:1.13;letter-spacing:-.045em;color:var(--apl-ink);margin:0}
body .apl-sec .apl-eyebrow .elementor-heading-title,body .apl-sec .apl-eyebrow p{font-size:10px;letter-spacing:.17em;font-weight:600;color:var(--apl-teal);line-height:1.6;text-transform:uppercase}
body .apl-sec .e-con-inner{padding:0!important;max-width:none}
body.apl-home main#content,body.apl-home #content{padding:0!important;margin:0!important;max-width:none}
body.apl-home .page-content{margin:0}
body .apl-sec.e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px;padding:0;width:100%;max-width:none}
body .apl-sec .e-con,body .apl-sec.e-con .e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px}
body .apl-sec .e-con{padding:0;max-width:none}
.apl-pad{padding-inline:max(var(--apl-g),calc((100% - var(--apl-w))/2))!important}

/* decorative icons */
.apl-ic{display:inline-block;width:22px;height:22px;background:currentColor;-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat;vertical-align:middle;flex-shrink:0}
.apl-ic-search{--ic:var(--i-search)}.apl-ic-bag{--ic:var(--i-bag)}.apl-ic-menu{--ic:var(--i-menu)}
.apl-menu-toggle.is-open .apl-ic-menu{--ic:var(--i-close)}

/* buttons (Elementor button widget) */
body .apl-sec .apl-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:26px;min-height:50px;padding:15px 23px;border:1px solid var(--apl-teal);border-radius:7px;background:var(--apl-teal);color:#fff;font-size:13px;letter-spacing:.01em;line-height:1.5;fill:#fff;transition:background .2s,transform .2s}
body .apl-sec .apl-btn .elementor-button:hover,body .apl-sec .apl-btn .elementor-button:focus-visible{background:var(--apl-teal-d);color:#fff;transform:translateY(-2px)}
body .apl-sec :is(.apl-btn,.apl-link,.apl-doc-go) .elementor-button-text::after{content:"";display:inline-block;width:20px;height:20px;margin-left:26px;vertical-align:middle;background:currentColor;-webkit-mask:var(--i-arrow) center/contain no-repeat;mask:var(--i-arrow) center/contain no-repeat}
body .apl-sec .apl-btn-2 .elementor-button{background:transparent;color:var(--apl-teal);border-color:#b7d6d8}
body .apl-sec .apl-btn-2 .elementor-button:hover,body .apl-sec .apl-btn-2 .elementor-button:focus-visible{background:var(--apl-teal-pale);color:var(--apl-teal)}
body .apl-sec .apl-link .elementor-button{display:inline-flex;align-items:center;min-height:0;padding:0 0 4px;border:0;border-bottom:1px solid #9fd0d3;border-radius:0;background:transparent;color:var(--apl-teal);font-size:13px;transition:gap .2s}
body .apl-sec .apl-link .elementor-button:hover,body .apl-sec .apl-link .elementor-button:focus-visible{background:transparent;color:var(--apl-teal);transform:none}
body .apl-sec .apl-link .elementor-button-text::after{margin-left:14px;width:18px;height:18px;transition:margin .2s}
body .apl-sec .apl-link .elementor-button:hover .elementor-button-text::after{margin-left:20px}
body .apl-sec a:focus-visible,body .apl-sec button:focus-visible,body .apl-sec summary:focus-visible{outline:3px solid #468eaa;outline-offset:4px}

/* ---------- header ---------- */
.elementor-location-header{position:sticky;top:-34px;z-index:9000;background:#fff}
body.admin-bar .elementor-location-header{top:calc(32px - 34px)}
@media(max-width:782px){body.admin-bar .elementor-location-header{top:calc(46px - 34px)}}
body .apl-announce{background:var(--apl-mint);height:34px;display:flex;align-items:center;justify-content:center;text-align:center;padding-inline:15px;overflow:hidden}
body .apl-announce p{font-size:10px;letter-spacing:.035em;color:var(--apl-navy);line-height:1.2;white-space:nowrap}
body .apl-announce a{color:var(--apl-navy);font-weight:600}
body .apl-announce a:hover{text-decoration:underline}
body .apl-header.e-con{background:#fff;border-bottom:1px solid var(--apl-line);position:relative}
body .apl-header-inner.e-con{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px;height:93px;position:relative}
body .apl-brand.e-con{display:flex;flex-direction:row;align-items:center;gap:9px;flex-shrink:0;width:auto}
body .apl-brand .elementor-widget-image{width:43px}
body .apl-brand img{width:43px;height:43px;object-fit:contain;display:block}
body .apl-brand-text.e-con{display:block;width:auto}
body .apl-brand-text .elementor-heading-title{font-size:19px;font-weight:700;letter-spacing:.015em;line-height:1.2}
body .apl-brand-text .elementor-heading-title a{color:var(--apl-ink)}
body .apl-brand-text .elementor-heading-title span{font-weight:400}
body .apl-brand-text p{font-size:6.5px;letter-spacing:.19em;margin-top:5px;color:var(--apl-ink);line-height:1.2}

/* ---------- hero ---------- */
body .apl-hero.e-con{display:grid;grid-template-columns:1.02fr 1fr;gap:55px;align-items:center;padding-block:40px 55px;min-height:610px}
body .apl-hero-copy.e-con{display:block;padding-block:20px}
body .apl-hero h1.elementor-heading-title{margin-top:25px;font-size:clamp(44px,4.8vw,68px);line-height:1.08;letter-spacing:-.055em}
body .apl-hero h1 .apl-soft{color:var(--apl-teal)}
body .apl-hero .apl-eyebrow .elementor-heading-title::before{content:"";display:inline-block;width:6px;height:6px;margin-right:9px;vertical-align:middle;border-radius:50%;background:var(--apl-teal);box-shadow:0 0 0 4px rgba(22,140,145,.18)}
body .apl-hero-desc{margin-top:26px}
body .apl-hero-desc p{font-size:14px;line-height:1.9}
body .apl-hero-btns.e-con{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:25px;margin-top:31px}
body .apl-hero-visual.e-con{position:relative;display:block;min-height:530px;overflow:hidden;isolation:isolate;background:#EAF5F6;border-radius:120px 14px 14px 14px}
body .apl-orbs{position:absolute;inset:0;z-index:-1;pointer-events:none}
body .apl-orbs i{position:absolute;border:1px solid #cfe4e6;border-radius:50%}
body .apl-orbs i:first-child{top:45px;left:65px;width:360px;height:360px}
body .apl-orbs i:last-child{top:120px;left:150px;width:280px;height:280px;border-style:dashed;animation:apl-spin 100s linear infinite}
@keyframes apl-spin{to{transform:rotate(360deg)}}
body .apl-label{position:absolute;z-index:2}
body .apl-label .elementor-heading-title{font-size:8px;letter-spacing:.2em;font-weight:400;color:var(--apl-text2);line-height:1.4}
body .apl-label-t{top:26px;right:24px}
body .apl-label-b{bottom:19px;left:25px}
body .apl-label-b .elementor-heading-title{font-size:7px}
body .apl-hero-img{position:absolute;top:50%;left:50%;z-index:1;width:min(94%,540px);transform:translate(-50%,-55%);mix-blend-mode:multiply}
body .apl-hero-img img{display:block;width:100%;height:auto;max-height:420px;margin-inline:auto;object-fit:contain}
body .apl-hero-doc.e-con{position:absolute;z-index:3;left:24px;right:24px;bottom:55px;display:flex;flex-direction:row;align-items:center;gap:13px;padding:17px;background:#ffffffed;border:1px solid #fff;border-radius:10px;box-shadow:0 8px 30px #245c4910}
body .apl-hero-doc::before{content:"";width:26px;height:26px;flex-shrink:0;background:var(--apl-teal);-webkit-mask:var(--i-doc) center/contain no-repeat;mask:var(--i-doc) center/contain no-repeat}
body .apl-hero-doc .apl-doc-text{flex:1;min-width:0}
body .apl-hero-doc .elementor-heading-title{font-size:12px;font-weight:500;letter-spacing:0;line-height:1.4}
body .apl-hero-doc p{font-size:10px;margin-top:2px;line-height:1.4}
body .apl-hero-doc .apl-doc-go{margin-left:auto;flex-shrink:0}
body .apl-hero-doc .apl-doc-go .elementor-button{display:grid;place-items:center;width:30px;height:30px;min-height:0;padding:0;border:1px solid var(--apl-line);border-radius:50%;background:#fff;color:var(--apl-teal)}
body .apl-hero-doc .apl-doc-go .elementor-button:hover{background:var(--apl-mint)}
body .apl-hero-doc .apl-doc-go .elementor-button-text{font-size:0}
body .apl-hero-doc .apl-doc-go .elementor-button-text::after{margin:0;width:16px;height:16px}

/* ---------- trust strip ---------- */

/* ---------- generic section / heading row ---------- */
body .apl-section.e-con{padding-block:85px;display:block}
body .apl-heading-row.e-con{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px}
body .apl-heading-row .apl-eyebrow{margin-bottom:13px}
body .apl-h2 .elementor-heading-title{font-size:38px}
body .apl-heading-row .apl-link{margin-bottom:6px;white-space:nowrap}

/* ---------- featured products (native WooCommerce loop) ---------- */
body .apl-products ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px;margin:0;padding:0;list-style:none}
body .apl-products ul.products::before,body .apl-products ul.products::after{display:none}
body .apl-products ul.products li.product{float:none;width:auto;margin:0;padding:0;min-width:0;display:flex;flex-direction:column;position:relative}
body .apl-products ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;color:inherit}
body .apl-products ul.products li.product img{width:100%;aspect-ratio:1/1.12;height:auto;object-fit:contain;margin:0;padding:0;background:var(--apl-soft);border:1px solid var(--apl-line);border-radius:12px;mix-blend-mode:multiply;transition:transform .4s}
body .apl-products ul.products li.product:hover img{transform:scale(1.03)}
body .apl-products ul.products li.product .woocommerce-loop-product__title{margin:15px 2px 0;padding:0;font-size:19px;font-weight:500;letter-spacing:-.03em;line-height:1.2;color:var(--apl-ink)}
body .apl-products ul.products li.product .price{display:block;margin:9px 2px 0;font-size:12px;color:var(--apl-ink);font-weight:500}
body .apl-products ul.products li.product .price del{opacity:.5}
body .apl-products ul.products li.product .price ins{text-decoration:none}
body .apl-products ul.products li.product .button:not(.apl-qa-btn),body .apl-products ul.products li.product .added_to_cart{display:none}
body .apl-products ul.products li.product .onsale{top:12px;left:12px;right:auto;min-height:0;min-width:0;line-height:1;padding:6px 8px;border-radius:4px;background:#fff;color:var(--apl-teal);border:1px solid var(--apl-line);font-size:9px}

/* ---------- research intro cards ---------- */
body .apl-intro.e-con{background:#fff;padding-block:10px 85px;display:block}
body .apl-cards.e-con{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
body .apl-card.e-con{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:28px 26px 24px;min-height:215px;background:var(--apl-mint);border-radius:14px;box-shadow:0 6px 20px rgba(16,44,66,.06)}
body .apl-card:nth-child(2).e-con{background:var(--apl-blue)}
body .apl-card:nth-child(3).e-con{background:var(--apl-cream)}
body .apl-card .elementor-heading-title{font-size:22px}
body .apl-card p{font-size:13px;margin:10px 0 22px;max-width:300px}
body .apl-card .apl-link{margin-top:auto}

/* ---------- COA ---------- */
body .apl-coa.e-con{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-bottom:90px}
body .apl-coa-art{position:relative;background:var(--apl-blue);border-radius:12px;min-height:430px;padding:32px;overflow:hidden}
body .apl-coa-art .apl-eyebrow-s{font-size:8px;letter-spacing:.17em;font-weight:600;color:var(--apl-text2);margin:0}
body .apl-paper{position:relative;width:78%;margin:34px auto 16px;padding:25px;background:#fff;border-radius:2px;box-shadow:0 15px 35px #4f6e8220;transform:rotate(-6deg)}
body .apl-paper-top{position:relative;font-size:11px;letter-spacing:.1em;line-height:1.5;color:#66899c}
body .apl-paper-top strong{display:block;font-size:16px;color:#435f6e}
body .apl-paper-top .apl-ic{position:absolute;right:0;top:0;color:#7b9fae}
body .apl-paper-lines{display:grid;gap:9px;margin-top:25px}
body .apl-paper-lines i{display:block;height:4px;width:80%;background:#eaf0f2}
body .apl-paper-lines i:nth-child(2){width:60%}body .apl-paper-lines i:nth-child(3){width:70%}
body .apl-paper svg{display:block;width:100%;height:70px;margin-top:20px;border-bottom:1px solid #cddde4;color:#75a4b4}
body .apl-paper small{display:block;margin-top:8px;font-size:6px;color:#81939b}
body .apl-art-coord{position:absolute;left:25px;bottom:19px;font-size:7px;letter-spacing:.2em;color:var(--apl-text2)}
body .apl-coa-copy.e-con{display:block}
body .apl-coa-copy .apl-eyebrow{margin-bottom:18px}
body .apl-coa-copy .apl-h2 .elementor-heading-title{font-size:40px}
body .apl-coa-copy .apl-lead p{font-size:13px;margin-top:20px;max-width:400px}
body .apl-checks .elementor-icon-list-items{display:grid;gap:12px;margin:23px 0 28px;padding:0;list-style:none}
body .apl-checks .elementor-icon-list-item{display:flex;align-items:center;gap:10px;margin:0;padding:0;font-size:11px;color:var(--apl-muted)}
body .apl-checks .elementor-icon-list-text{font-size:11px;color:var(--apl-muted);padding:0}
body .apl-checks .elementor-icon-list-item::before{content:"";width:16px;height:16px;flex-shrink:0;background:var(--apl-teal);-webkit-mask:var(--i-check) center/contain no-repeat;mask:var(--i-check) center/contain no-repeat}

/* ---------- research notes ---------- */
body .apl-notes.e-con{display:block;padding-block:20px 85px}
body .apl-note-grid.e-con{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
body .apl-note.e-con{display:flex;flex-direction:column;align-items:flex-start;min-height:235px;padding:25px 0 8px;border-top:1px solid var(--apl-line)}
body .apl-note-num p{font-size:11px;color:var(--apl-text2);margin-bottom:33px}
body .apl-note .apl-eyebrow{margin-bottom:12px}
body .apl-note .apl-eyebrow .elementor-heading-title{font-size:8px}
body .apl-note h3.elementor-heading-title{font-size:24px;max-width:280px;margin-bottom:24px;line-height:1.25}
body .apl-note h3 a{color:var(--apl-ink)}
body .apl-note .apl-link{margin-top:auto}
body .apl-note .apl-link .elementor-button{font-size:11px}

/* ---------- FAQ ---------- */
body .apl-faq.e-con{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:70px;align-items:start;padding-block:85px;background:var(--apl-cream);border-block:1px solid var(--apl-line)}
body .apl-faq-intro.e-con{display:block}
body .apl-faq-intro .apl-eyebrow{margin-bottom:13px}
body .apl-faq-intro .apl-lead p{margin:18px 0 26px;font-size:13px;max-width:340px}
body .apl-faq .elementor-accordion .elementor-accordion-item{border:0;border-bottom:1px solid var(--apl-line)}
body .apl-faq .elementor-accordion .elementor-tab-title{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0;padding:20px 0;background:transparent;border:0}
body .apl-faq .elementor-accordion .elementor-accordion-title{flex:1;font-size:15px;font-weight:500;color:var(--apl-ink);letter-spacing:-.01em;line-height:1.4;outline:0}
body .apl-faq .elementor-accordion-icon{display:none}
body .apl-faq .elementor-tab-title::after{content:"+";flex-shrink:0;width:26px;height:26px;line-height:24px;text-align:center;border:1px solid #b7d6d8;border-radius:50%;color:var(--apl-teal);font-size:16px}
body .apl-faq .elementor-tab-title.elementor-active::after{content:"\2212"}
body .apl-faq .elementor-accordion .elementor-tab-content{padding:0 44px 22px 0;border:0;background:transparent;font-size:13px;line-height:1.8;color:var(--apl-muted)}
body .apl-faq .elementor-tab-content p{font-size:13px;line-height:1.8}

/* ---------- footer ---------- */
body .apl-footer.e-con{display:block;background:#f6f8f5;border-top:1px solid var(--apl-line);padding-top:55px}
body .apl-footer-top.e-con{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:35px;padding-bottom:40px}
body .apl-footer-top .e-con{display:block}
body .apl-footer h2.elementor-heading-title{font-size:12px;letter-spacing:0;font-weight:600;margin-bottom:17px}
body .apl-footer .apl-flogo .elementor-heading-title{font-size:20px;font-weight:700;letter-spacing:.015em;margin:0}
body .apl-footer .apl-flogo .elementor-heading-title span{font-weight:400}
body .apl-footer .apl-flogo a{color:var(--apl-ink)}
body .apl-footer p{font-size:11px;line-height:1.8;margin-top:15px}
body .apl-footer .elementor-icon-list-items{margin:0;padding:0;list-style:none}
body .apl-footer .elementor-icon-list-item{margin:0 0 8px;padding:0}
body .apl-footer .elementor-icon-list-item a{font-size:11px;color:#C9D6E2;padding:0;transition:color .2s}
body .apl-footer .elementor-icon-list-item a:hover{color:var(--apl-teal)}
body .apl-footer .elementor-icon-list-text{font-size:11px;color:#C9D6E2;padding:0}
body .apl-notice.e-con{display:flex;flex-direction:row;align-items:center;gap:15px;padding-block:22px;border-block:1px solid var(--apl-line)}
body .apl-notice::before{content:"";width:18px;height:18px;flex-shrink:0;background:var(--apl-teal);-webkit-mask:var(--i-flask) center/contain no-repeat;mask:var(--i-flask) center/contain no-repeat}
body .apl-notice p{margin:0;font-size:9px;color:var(--apl-text2)}
body .apl-notice strong{font-weight:500;color:var(--apl-navy)}
body .apl-footer-bottom.e-con{display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:20px;padding-block:22px}
body .apl-footer-bottom p{margin:0;font-size:9px;color:var(--apl-text2)}
body .apl-footer-bottom .elementor-icon-list-items{display:flex;gap:20px}
body .apl-footer-bottom .elementor-icon-list-item{margin:0}
body .apl-footer-bottom .elementor-icon-list-item a,body .apl-footer-bottom .elementor-icon-list-text{font-size:9px;color:var(--apl-text2)}

/* ---------- responsive ---------- */
@media(max-width:1100px){
 :root{--apl-g:28px}
 body .apl-hero.e-con{gap:30px;min-height:auto}
 body .apl-hero h1.elementor-heading-title{font-size:48px}
 body .apl-hero-visual.e-con{min-height:460px}
 body .apl-hero-img{width:100%;max-width:500px}body .apl-hero-img img{max-height:370px}
 body .apl-products ul.products{gap:17px}
 body .apl-coa.e-con{gap:45px}
 body .apl-coa-copy .apl-h2 .elementor-heading-title{font-size:34px}
 body .apl-faq.e-con{gap:40px}
 body .apl-footer-top.e-con{gap:25px}
}

@media(max-width:800px){
 :root{--apl-g:24px}
 body .apl-header-inner.e-con{height:76px}
 body .apl-brand-text .elementor-heading-title{font-size:16px}
 body .apl-brand img,body .apl-brand .elementor-widget-image{width:32px;height:32px}
 body .apl-hero-visual.e-con{min-height:410px}
 body .apl-hero-img img{max-height:350px}
 body .apl-hero-doc.e-con{left:15px;right:15px;bottom:42px;padding:12px}
 body .apl-products ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}
 body .apl-h2 .elementor-heading-title{font-size:31px}
 body .apl-footer-top.e-con{grid-template-columns:1fr 1fr;row-gap:35px}
 body .apl-footer-bottom.e-con{flex-wrap:wrap}
}
@media(max-width:700px){
 body .apl-cards.e-con,body .apl-note-grid.e-con{grid-template-columns:1fr}
 body .apl-faq.e-con{grid-template-columns:1fr;gap:30px;padding-block:55px}
}
@media(max-width:600px){
 :root{--apl-g:20px}
 body .apl-announce p{font-size:8px;white-space:normal;line-height:1.3}
 body .apl-announce{height:34px}
 body .apl-header-inner.e-con{height:72px;gap:10px}
 body .apl-actions{gap:0}
 body .apl-hero.e-con{grid-template-columns:1fr;padding-block:38px 30px;gap:30px}
 body .apl-hero-copy.e-con{padding:0}
 body .apl-hero h1.elementor-heading-title{font-size:47px;margin-top:20px;max-width:380px}
 body .apl-hero-desc p{font-size:13px;max-width:350px;line-height:1.8}
 body .apl-hero-btns.e-con{gap:22px;margin-top:25px}
 body .apl-sec .apl-btn .elementor-button{font-size:12px;padding:14px 17px;gap:15px}
 body .apl-hero-visual.e-con{min-height:380px;border-top-left-radius:90px}
 body .apl-hero-img{width:calc(100% - 12px);max-width:420px;transform:translate(-50%,-56%)}
 body .apl-hero-img img{max-height:320px}
 body .apl-hero-doc.e-con{left:17px;right:17px;bottom:38px;padding:14px}
 body .apl-section.e-con{padding-block:55px}
 body .apl-heading-row.e-con{flex-direction:column;align-items:flex-start;gap:19px;margin-bottom:27px}
 body .apl-h2 .elementor-heading-title{font-size:32px}
 body .apl-products ul.products{gap:23px 13px}
 body .apl-products ul.products li.product .woocommerce-loop-product__title{font-size:17px;margin-top:12px}
 body .apl-intro.e-con{padding-bottom:55px}
 body .apl-coa.e-con{grid-template-columns:1fr;gap:35px;padding-bottom:45px}
 body .apl-coa-art{min-height:350px;padding:25px}
 body .apl-paper{width:70%;margin-top:25px}
 body .apl-coa-copy .apl-h2 .elementor-heading-title{font-size:34px}
 body .apl-notes.e-con{padding-bottom:55px}
 body .apl-note.e-con{min-height:0}
 body .apl-footer.e-con{padding-top:35px}
 body .apl-footer-top.e-con{gap:30px 20px;padding-bottom:28px}
 body .apl-footer-top>.e-con:first-child,body .apl-footer-top>.e-con:last-child{grid-column:1/-1}
 body .apl-notice.e-con{align-items:flex-start}
}
@media(max-width:380px){body .apl-hero-img img{max-height:300px}}
@media(prefers-reduced-motion:reduce){body .apl-sec *,body .apl-sec *::before,body .apl-sec *::after{animation:none!important;transition:none!important}}

/* fixes */
body .apl-hero-doc.e-con{width:auto;max-width:none}
body .apl-hero-visual .apl-hero-img.elementor-widget{width:min(94%,540px);max-width:540px}
body .apl-notice .elementor-widget{flex:1;min-width:0}
body .apl-announce .elementor-widget{width:auto}
body .apl-hero-doc.e-con::before,body .apl-notice.e-con::before{position:static;inset:auto;opacity:1;flex-shrink:0;width:26px;height:26px;order:-1;display:block}
body .apl-notice.e-con::before{width:18px;height:18px}
body .apl-hero-img img{-webkit-mask-image:radial-gradient(closest-side,#000 80%,transparent 100%);mask-image:radial-gradient(closest-side,#000 80%,transparent 100%)}
@media(max-width:960px){
 body .apl-header-inner.e-con>.apl-brand{grid-row:1;grid-column:1}
}
body .apl-heading-row.e-con{flex-wrap:wrap}
body .apl-heading-row.e-con>.e-con{width:auto;min-width:0;flex:1 1 280px}

/* ---------- header: Elementor Pro Nav Menu / Search / Menu Cart ---------- */
body.apl-home{background:#fff}
body .apl-nav .elementor-nav-menu--main .elementor-nav-menu{justify-content:center;gap:30px}
body .apl-nav .elementor-nav-menu--main .elementor-item{padding:10px 0;font-size:12px;line-height:1.65;color:var(--apl-muted);background:transparent;position:relative}
body .apl-nav .elementor-nav-menu--main .elementor-item:hover,body .apl-nav .elementor-nav-menu--main .elementor-item:focus,body .apl-nav .elementor-nav-menu--main .elementor-item-active{color:var(--apl-teal);background:transparent}
body .apl-nav .elementor-nav-menu--main .elementor-item-active::after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:var(--apl-teal)}
body .apl-nav .elementor-nav-menu--main .sub-arrow{margin-left:6px;font-size:10px}
body .apl-nav .elementor-nav-menu--main .elementor-nav-menu--dropdown,body .apl-nav .elementor-nav-menu--dropdown{background:#fff;border:1px solid var(--apl-line);box-shadow:0 12px 24px #354e4012}
body .apl-nav .elementor-nav-menu--dropdown .elementor-item,body .apl-nav .elementor-nav-menu--dropdown .elementor-sub-item{padding:12px 20px;font-size:14px;color:var(--apl-muted);background:transparent;border:0}
body .apl-nav .elementor-nav-menu--dropdown .elementor-item:hover,body .apl-nav .elementor-nav-menu--dropdown .elementor-sub-item:hover{color:var(--apl-teal);background:var(--apl-mint)}
body .apl-nav .elementor-menu-toggle{width:42px;height:42px;align-items:center;justify-content:center;border:0;border-radius:50%;background:transparent;color:var(--apl-ink);font-size:22px}
body .apl-nav .elementor-menu-toggle:hover{background:var(--apl-mint)}
body .apl-actions.e-con{display:flex;flex-direction:row;align-items:center;gap:5px;width:auto}
body .apl-actions .elementor-widget{width:auto}
body .apl-search-w{--e-search-form-toggle-size:42px;--e-search-form-toggle-color:var(--apl-ink);--e-search-form-toggle-background-color:transparent;--e-search-form-toggle-icon-size:.5}
body .apl-search-w .elementor-search-form__toggle{width:42px;height:42px;margin:0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:transparent}
body .apl-search-w .elementor-search-form__toggle:hover{background:var(--apl-mint)}
body .apl-cart-w{--toggle-button-border-width:0;--toggle-button-background-color:transparent;--toggle-button-icon-color:var(--apl-ink);--toggle-button-icon-hover-color:var(--apl-ink);--toggle-icon-size:22px;--toggle-button-hover-background-color:var(--apl-mint);--toggle-button-border-radius:50%;--items-indicator-background-color:var(--apl-teal);--items-indicator-text-color:#fff;--toggle-button-padding:9px}
body .apl-cart-w .elementor-menu-cart__toggle_button{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:transparent;color:var(--apl-ink);padding:9px}
body .apl-cart-w .elementor-menu-cart__toggle_button:hover{background:var(--apl-mint)}
body .apl-cart-w .elementor-button-icon-qty{font-size:9px;min-width:16px;height:16px;line-height:16px;top:-2px;right:-2px;border-radius:50%;background:var(--apl-teal);color:#fff;text-align:center}
body .apl-cart-w .elementor-button-icon{font-size:22px}

@media(max-width:1024px){
 body .apl-header-inner.e-con{height:76px;gap:10px;grid-template-columns:1fr auto auto}
 body .apl-header-inner>.apl-brand{order:1}body .apl-header-inner>.apl-actions{order:2}body .apl-header-inner>.apl-nav{order:3}
 body .apl-nav .elementor-nav-menu--dropdown{position:absolute;left:0;right:0;top:100%}
}
@media(max-width:600px){body .apl-header-inner.e-con{height:72px}}
@media(min-width:1025px){body .apl-nav .elementor-menu-toggle,body .apl-nav .elementor-nav-menu--dropdown{display:none}}
@media(max-width:1024px){body .apl-nav .elementor-menu-toggle{display:inline-flex}body .apl-nav .elementor-nav-menu--main{display:none}}
body .apl-header-inner>.apl-nav.elementor-widget{width:100%;min-width:0}
body .apl-header .apl-nav .elementor-nav-menu--main a.elementor-item{color:var(--apl-muted)}
body .apl-header .apl-nav .elementor-nav-menu--main a.elementor-item:hover,body .apl-header .apl-nav .elementor-nav-menu--main a.elementor-item:focus,body .apl-header .apl-nav .elementor-nav-menu--main a.elementor-item.elementor-item-active{color:var(--apl-teal)}
@media(min-width:1025px){
 body .apl-header .apl-nav .elementor-nav-menu--main{width:100%}
 body .apl-header .apl-nav .elementor-nav-menu--main>ul.elementor-nav-menu{display:flex;justify-content:center;width:100%}
}
body .apl-header .apl-nav .elementor-nav-menu--main a.elementor-item.elementor-item-active{color:var(--apl-teal)!important}
body .apl-header.apl-pad{padding-inline:max(var(--apl-g),calc((100% - 1200px)/2))!important}
@media(min-width:1025px){body .apl-header-inner.e-con{height:80px}}
body .elementor-search-form--skin-full_screen .elementor-search-form__container{background:rgba(255,255,255,.97)}
body .elementor-search-form--skin-full_screen .elementor-search-form__input{color:var(--apl-ink);border-color:var(--apl-teal);font-family:var(--apl-font)}
body .elementor-search-form--skin-full_screen .elementor-search-form__input::placeholder{color:#8a9b9e}
body .elementor-search-form--skin-full_screen .dialog-close-button{color:var(--apl-ink)}
body .apl-products ul.products.elementor-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px;margin:0;padding:0}
body .apl-products ul.products li.product .woocommerce-LoopProduct-link{display:flex;flex-direction:column}
body .apl-products ul.products li.product .woocommerce-loop-product__title{color:var(--apl-ink)}
@media(max-width:800px){body .apl-products ul.products.elementor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}}
body .apl-products ul.products.elementor-grid{width:100%;justify-content:stretch;--grid-column-gap:23px;--grid-row-gap:38px;column-gap:23px;row-gap:38px;grid-template-columns:repeat(4,minmax(0,1fr))!important}
body .apl-products ul.products li.product .woocommerce-loop-product__title{color:var(--apl-ink)!important;text-align:left}
body .apl-products ul.products li.product .price{color:var(--apl-ink)!important;text-align:left}
body .apl-products ul.products li.product{text-align:left;width:auto;max-width:none}
@media(max-width:800px){body .apl-products ul.products.elementor-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
body .apl-products .woocommerce{max-width:none;margin:0;padding:0;width:100%}

/* ---------- admin bar: site CSS zeroes the html margin, so offset the page for logged-in admins ---------- */
body.admin-bar{padding-top:32px!important}
@media(max-width:782px){body.admin-bar{padding-top:46px!important}}

/* ---------- mini-cart drawer (Elementor Pro Menu Cart side-cart) ---------- */
.elementor-menu-cart__container{--mc-n:#173B57;--mc-t:#168C91;--mc-td:#117479;--mc-soft:#F5F8FA;--mc-bd:#E5EBF0;--mc-tx:#172B3A;--mc-tx2:#718096;
 font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.elementor-menu-cart--shown .elementor-menu-cart__container{background-color:rgba(16,44,66,.28)!important}
.elementor-menu-cart__container .elementor-menu-cart__main{box-sizing:border-box;width:400px;max-width:100vw;background:#fff;color:var(--mc-tx);padding:0;display:flex;flex-direction:column;box-shadow:-12px 0 40px rgba(16,44,66,.14);border-radius:0;overflow:hidden}
.elementor-menu-cart__container .elementor-menu-cart__main::before{content:"Your cart";display:block;flex:0 0 auto;padding:22px 64px 20px 24px;font-size:20px;font-weight:700;letter-spacing:-.01em;color:var(--mc-n);border-bottom:1px solid var(--mc-bd);line-height:1.3}
.elementor-menu-cart__container .elementor-menu-cart__close-button{position:absolute;top:14px;right:14px;width:40px;height:40px;margin:0;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;color:var(--mc-n);z-index:2;transition:background-color .15s}
.elementor-menu-cart__container .elementor-menu-cart__close-button:hover{background:var(--mc-soft)}
.elementor-menu-cart__container .elementor-menu-cart__close-button:focus-visible{outline:3px solid #8cc7ca;outline-offset:1px}
.elementor-menu-cart__container .elementor-menu-cart__close-button::before,.elementor-menu-cart__container .elementor-menu-cart__close-button::after{background:var(--mc-n)!important;height:2px!important;width:18px!important;border-radius:2px}
.elementor-menu-cart__container .widget_shopping_cart_content{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;margin:0;padding:0}
.elementor-menu-cart__container .elementor-menu-cart__products{flex:1 1 auto;min-height:0;overflow-y:auto;margin:0;padding:6px 24px;border:0}
.elementor-menu-cart__container .elementor-menu-cart__product{display:grid;grid-template-columns:72px minmax(0,1fr) auto;grid-template-areas:"img name rm" "img price price";column-gap:16px;row-gap:6px;align-items:start;padding:18px 0;margin:0;border:0;border-bottom:1px solid var(--mc-bd)}
.elementor-menu-cart__container .elementor-menu-cart__product:last-child{border-bottom:0}
.elementor-menu-cart__container .elementor-menu-cart__product-image{grid-area:img;width:72px;margin:0;padding:0}
.elementor-menu-cart__container .elementor-menu-cart__product-image img{display:block;width:72px;height:72px;object-fit:contain;background:var(--mc-soft);border:1px solid var(--mc-bd);border-radius:8px;padding:4px}
.elementor-menu-cart__container .elementor-menu-cart__product-name{grid-area:name;padding:0;margin:0;min-width:0}
.elementor-menu-cart__container .elementor-menu-cart__product-name a{font-size:15px;font-weight:600;line-height:1.35;color:var(--mc-n);text-decoration:none}
.elementor-menu-cart__container .elementor-menu-cart__product-name a:hover{color:var(--mc-t)}
.elementor-menu-cart__container .elementor-menu-cart__product-price{grid-area:price;display:flex;align-items:center;gap:12px;padding:0;margin:0;font-size:14px;color:var(--mc-tx2);flex-wrap:wrap}
.elementor-menu-cart__container .elementor-menu-cart__product-price .amount{color:var(--mc-tx);font-weight:600;font-size:15px}
.elementor-menu-cart__container .elementor-menu-cart__product-price .product-quantity{color:var(--mc-tx2);font-size:13px;margin-right:4px}
.elementor-menu-cart__container .elementor-menu-cart__product-remove{grid-area:rm;position:static;width:auto;margin:0;padding:0}
.elementor-menu-cart__container .elementor-menu-cart__product-remove a.elementor_remove_from_cart_button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:50%;color:var(--mc-tx2);background:transparent;transition:background-color .15s,color .15s}
.elementor-menu-cart__container .elementor-menu-cart__product-remove a.elementor_remove_from_cart_button:hover{background:#FDEEE8;color:#B4432E}
.elementor-menu-cart__container .elementor-menu-cart__product-remove a.elementor_remove_from_cart_button:focus-visible{outline:3px solid #8cc7ca}
.elementor-menu-cart__container .apl-mc-qty{display:inline-flex;align-items:center;height:32px;border:1.5px solid var(--mc-bd);border-radius:8px;background:#fff;overflow:hidden}
.elementor-menu-cart__container .apl-mc-qty button{width:30px;height:100%;border:0;background:transparent;color:var(--mc-n);font-size:17px;line-height:1;cursor:pointer;padding:0}
.elementor-menu-cart__container .apl-mc-qty button:hover:not(:disabled){background:var(--mc-soft)}
.elementor-menu-cart__container .apl-mc-qty button:disabled{opacity:.35;cursor:not-allowed}
.elementor-menu-cart__container .apl-mc-qty button:focus-visible{outline:3px solid #8cc7ca;outline-offset:-3px}
.elementor-menu-cart__container .apl-mc-qty span{min-width:26px;text-align:center;font-size:14px;font-weight:600;color:var(--mc-tx)}
.elementor-menu-cart__container .apl-mc-qty[aria-busy=true]{opacity:.55}
.elementor-menu-cart__container .elementor-menu-cart__subtotal{flex:0 0 auto;display:flex;justify-content:space-between;align-items:baseline;margin:0;padding:18px 24px;border-top:1px solid var(--mc-bd);text-align:left;font-size:15px;color:var(--mc-tx2)}
.elementor-menu-cart__container .elementor-menu-cart__subtotal strong{font-size:15px;font-weight:600;color:var(--mc-tx2)}
.elementor-menu-cart__container .elementor-menu-cart__subtotal .amount{font-size:20px;font-weight:700;color:var(--mc-n)}
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons{flex:0 0 auto;display:flex;flex-direction:column;gap:10px;margin:0;padding:0 24px 24px}
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:52px;margin:0;padding:0 20px;border-radius:8px;font-family:inherit;font-size:16px;font-weight:600;line-height:1;text-decoration:none;text-transform:none;letter-spacing:0;transition:background-color .18s,border-color .18s,color .18s}
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button--checkout{background:var(--mc-t);border:1.5px solid var(--mc-t);color:#fff}
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button--checkout:hover{background:var(--mc-td);border-color:var(--mc-td);color:#fff}
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button--view-cart{background:#fff;border:1.5px solid var(--mc-n);color:var(--mc-n)}
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button--view-cart:hover{background:var(--mc-soft);color:var(--mc-n)}
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button:focus-visible{outline:3px solid #8cc7ca;outline-offset:2px}
.elementor-menu-cart__container .elementor-menu-cart__footer-buttons .elementor-button-text{color:inherit}
.elementor-menu-cart__container .woocommerce-mini-cart__empty-message{margin:0;padding:56px 24px;text-align:center;font-size:15px;color:var(--mc-tx2)}
.elementor-menu-cart__container .elementor-menu-cart__products:empty{display:none}
@media(max-width:480px){
 .elementor-menu-cart__container .elementor-menu-cart__main{width:100vw}
 .elementor-menu-cart__container .elementor-menu-cart__products{padding-inline:18px}
 .elementor-menu-cart__container .elementor-menu-cart__subtotal{padding-inline:18px}
 .elementor-menu-cart__container .elementor-menu-cart__footer-buttons{padding:0 18px 20px}
 .elementor-menu-cart__container .elementor-menu-cart__main::before{padding-left:18px}
}

/* --- drawer fixes --- */
body .apl-cart-w .elementor-menu-cart__toggle_button .elementor-button-text{display:none}
body .apl-cart-w .elementor-menu-cart__container .elementor-button-text{display:inline}
.elementor-menu-cart__container .elementor-menu-cart__product-remove{position:relative;width:32px;height:32px}
.elementor-menu-cart__container .elementor-menu-cart__product-remove a.remove_from_cart_button{position:absolute;inset:0;width:32px!important;height:32px!important;opacity:0;z-index:2;display:block}
.elementor-menu-cart__container .elementor-menu-cart__product-remove a.elementor_remove_from_cart_button{position:relative;z-index:1;font-size:0}
.elementor-menu-cart__container a.elementor_remove_from_cart_button::before,.elementor-menu-cart__container a.elementor_remove_from_cart_button::after,
.elementor-menu-cart__container .elementor-menu-cart__close-button::before,.elementor-menu-cart__container .elementor-menu-cart__close-button::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;margin:0;background:currentColor!important;border-radius:2px}
.elementor-menu-cart__container a.elementor_remove_from_cart_button::before,.elementor-menu-cart__container .elementor-menu-cart__close-button::before{transform:translate(-50%,-50%) rotate(45deg)}
.elementor-menu-cart__container a.elementor_remove_from_cart_button::after,.elementor-menu-cart__container .elementor-menu-cart__close-button::after{transform:translate(-50%,-50%) rotate(-45deg)}
.elementor-menu-cart__container .elementor-menu-cart__close-button::before,.elementor-menu-cart__container .elementor-menu-cart__close-button::after{width:18px;height:2px}
body.admin-bar .elementor-menu-cart__container .elementor-menu-cart__main{top:32px;height:calc(100% - 32px)}
@media(max-width:782px){body.admin-bar .elementor-menu-cart__container .elementor-menu-cart__main{top:46px;height:calc(100% - 46px)}}
.elementor-menu-cart__container .elementor-menu-cart__close-button,.elementor-menu-cart__container a.elementor_remove_from_cart_button{border:0!important;box-shadow:none!important;background-image:none}
.elementor-menu-cart__container .elementor-menu-cart__close-button:hover,.elementor-menu-cart__container a.elementor_remove_from_cart_button:hover{background-color:var(--mc-soft)}
.elementor-menu-cart__container .elementor-menu-cart__main .widget_shopping_cart_content .woocommerce-mini-cart__empty-message{margin:0;padding:64px 24px;text-align:center!important;font-size:15px!important;font-weight:400!important;color:#718096!important}

/* ---------- WooCommerce buttons: cart block + product listings (brand system) ----------
   Teal primary, deeper teal on hover, white text always (kit/link hover colours no longer leak in). */
:root{--apl-btn:#168C91;--apl-btn-h:#117479;--apl-btn-a:#0e6065}
body:not(.apl-home) :is(.wc-block-cart__submit-button,
  .wc-block-components-product-button__button,
  .elementor-products-grid ul.products li.product a.button,
  .elementor-wc-products ul.products li.product a.button,
  ul.products li.product a.add_to_cart_button){
  display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;
  min-height:44px;padding:0 22px;margin:0;border:0;border-radius:8px;
  background:var(--apl-btn);color:#fff;fill:#fff;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:14px;font-weight:600;line-height:1;letter-spacing:0;text-transform:none;text-decoration:none;
  box-shadow:none;cursor:pointer;transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease}
body:not(.apl-home) :is(.wc-block-cart__submit-button,
  .wc-block-components-product-button__button,
  .elementor-products-grid ul.products li.product a.button,
  .elementor-wc-products ul.products li.product a.button,
  ul.products li.product a.add_to_cart_button):is(:hover,:focus,:active,:visited){
  background:var(--apl-btn-h);color:#fff!important;fill:#fff;text-decoration:none;box-shadow:0 6px 16px rgba(22,140,145,.22)}
body:not(.apl-home) :is(.wc-block-cart__submit-button,
  .wc-block-components-product-button__button,
  .elementor-products-grid ul.products li.product a.button,
  .elementor-wc-products ul.products li.product a.button,
  ul.products li.product a.add_to_cart_button):active{background:var(--apl-btn-a);box-shadow:none;transform:translateY(1px)}
body:not(.apl-home) :is(.wc-block-cart__submit-button,
  .wc-block-components-product-button__button,
  .elementor-products-grid ul.products li.product a.button,
  ul.products li.product a.add_to_cart_button):focus-visible{outline:3px solid #8cc7ca;outline-offset:2px}
/* text/icon inherit the white */
body:not(.apl-home) :is(.wc-block-cart__submit-button,.wc-block-components-product-button__button) :is(.wc-block-components-button__text,span,svg){color:inherit;fill:currentColor}
body:not(.apl-home) ul.products li.product a.add_to_cart_button :is(i,svg){width:16px;height:16px;font-size:16px;color:inherit;fill:currentColor;margin:0}
/* checkout button: full width, taller */
body .wc-block-cart__submit-button,body .wc-block-cart__submit-container .wc-block-components-button{width:100%;min-height:54px;font-size:16px}
/* loading / success states */
body:not(.apl-home) ul.products li.product a.add_to_cart_button.loading{opacity:.7;pointer-events:none}
body:not(.apl-home) ul.products li.product a.add_to_cart_button.added{background:var(--apl-btn-h)}
body:not(.apl-home) ul.products li.product a.added_to_cart{display:inline-block;margin-left:10px;font-size:13px;font-weight:500;color:var(--apl-btn);text-decoration:underline;text-underline-offset:3px}
/* listing: keep the button left-aligned under the price with breathing room */
body:not(.apl-home) .elementor-products-grid ul.products li.product a.button{margin-top:14px}
@media(max-width:600px){
 body:not(.apl-home) :is(.elementor-products-grid,.elementor-wc-products) ul.products li.product a.button{width:100%}
}
@media(prefers-reduced-motion:reduce){body :is(.wc-block-cart__submit-button,ul.products li.product a.add_to_cart_button){transition:none!important;transform:none!important}}
body:not(.apl-home) .wc-block-cart__submit-button.wc-block-components-button{width:100%;min-height:54px;font-size:16px}

/* shop listing (JetEngine / Elementor loop): same brand button */
body:not(.apl-home) .elementor a.add_to_cart_button.elementor-button.elementor-button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;box-sizing:border-box;
  min-height:44px;padding:0 22px;border:0;border-radius:8px;
  background:var(--apl-btn);color:#fff;fill:#fff;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:14px;font-weight:600;line-height:1;letter-spacing:0;text-transform:none;text-decoration:none;
  box-shadow:none;transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease}
body:not(.apl-home) .elementor a.add_to_cart_button.elementor-button.elementor-button:is(:hover,:focus,:active,:visited){background:var(--apl-btn-h);color:#fff!important;fill:#fff;box-shadow:0 6px 16px rgba(22,140,145,.22)}
body:not(.apl-home) .elementor a.add_to_cart_button.elementor-button.elementor-button:active{background:var(--apl-btn-a);box-shadow:none;transform:translateY(1px)}
body:not(.apl-home) .elementor a.add_to_cart_button.elementor-button.elementor-button:focus-visible{outline:3px solid #8cc7ca;outline-offset:2px}
body:not(.apl-home) .elementor a.add_to_cart_button.elementor-button.elementor-button :is(.elementor-button-content-wrapper,.elementor-button-text,span){color:inherit}
body:not(.apl-home) .elementor a.add_to_cart_button.elementor-button.elementor-button :is(i,svg){width:16px;height:16px;font-size:16px;color:inherit;fill:currentColor;margin:0}
body:not(.apl-home) .elementor a.add_to_cart_button.elementor-button.elementor-button.loading{opacity:.7;pointer-events:none}
body:not(.apl-home) .elementor a.add_to_cart_button.elementor-button.elementor-button.added{background:var(--apl-btn-h)}
@media(max-width:600px){body:not(.apl-home) .elementor a.add_to_cart_button.elementor-button.elementor-button{width:100%}}
body:not(.apl-home) .wc-block-cart__submit-container a.wc-block-cart__submit-button.wc-block-components-button.wc-block-components-button.wc-block-components-button.contained{width:100%;min-height:54px;font-size:16px}

/* ---------- footer: brand navy treatment ---------- */
body .apl-footer.e-con{background:var(--apl-navy-deep);border-top:0;color:#C9D6E2}
body .apl-footer h2.elementor-heading-title,body .apl-footer .apl-flogo .elementor-heading-title,body .apl-footer .apl-flogo a{color:#fff}
body .apl-footer h2.elementor-heading-title{font-size:13px;font-weight:600;letter-spacing:.02em}
body .apl-footer p{color:#B7C6D6}
body .apl-footer .elementor-icon-list-item a,body .apl-footer .elementor-icon-list-text{color:#C9D6E2;font-size:13px}
body .apl-footer .elementor-icon-list-item a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
body .apl-footer .elementor-icon-list-item{margin-bottom:10px}
body .apl-notice.e-con{border-block:1px solid rgba(255,255,255,.14)}
body .apl-notice::before{background:#7FD0D4}
body .apl-notice p{font-size:12px;color:#B7C6D6}
body .apl-notice strong{color:#fff;font-weight:600}
body .apl-footer-bottom p,body .apl-footer-bottom .elementor-icon-list-item a,body .apl-footer-bottom .elementor-icon-list-text{color:#9FB3C6;font-size:12px}
body .apl-footer-bottom .elementor-icon-list-item a:hover{color:#fff}
body .elementor-menu-cart__container .apl-mc-qty button{color:var(--mc-n);background:transparent;border:0}
body .elementor-menu-cart__container .apl-mc-qty button:hover:not(:disabled){background:var(--mc-soft);color:var(--mc-n)}
/* calculator page: legible unselected options on navy (migrated from bright blue) */
body .option-btn{color:#8FD3D6;border-color:rgba(143,211,214,.55)}
body .option-btn:hover{color:#fff;border-color:#8FD3D6}
body .option-btn:is(.active,.selected,.is-active){color:#fff;border-color:var(--apl-teal)}
/* Google Reviews section (homepage, before footer) */
body .apl-greviews.e-con{display:flex;flex-direction:column;align-items:center;text-align:center;padding-block:72px;background:#F5F8FA;border-top:1px solid var(--apl-line)}
body .apl-greviews .apl-g-mark{margin-bottom:18px}
body .apl-greviews .apl-g-logo{display:block;margin:0 auto}
body .apl-greviews .apl-lead p{margin:16px auto 30px;font-size:14px;max-width:460px}
@media(max-width:767px){body .apl-greviews.e-con{padding-block:56px}body .apl-greviews .apl-h2 .elementor-heading-title{font-size:28px}}
body .apl-greviews .apl-gr{width:100%;margin:0 auto 30px}
body .apl-greviews .apl-gr-sum{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:0 0 28px;font-size:14px;color:var(--apl-muted)}
body .apl-greviews .apl-gr-sum strong{font-size:22px;font-weight:600;color:var(--apl-ink)}
body .apl-greviews .apl-gr-stars{color:#F5B400;letter-spacing:2px;font-size:16px;white-space:nowrap}
body .apl-greviews .apl-gr-off{color:#D5DDE3}
body .apl-greviews .apl-gr-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start;list-style:none;margin:0;padding:0;text-align:left}
body .apl-greviews .apl-gr-card{display:flex;flex-direction:column;gap:12px;margin:0;padding:22px;background:#fff;border:1px solid var(--apl-line);border-radius:14px;box-shadow:0 6px 20px rgba(16,44,66,.06)}
body .apl-greviews .apl-gr-text{white-space:pre-line;margin:0;padding:0;border:0;color:var(--apl-ink);font-size:14px;line-height:1.65;font-style:normal;overflow-wrap:anywhere}
body .apl-greviews .apl-gr-text.is-clamped{display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}
body .apl-greviews .apl-gr-more{align-self:flex-start;margin:0;padding:0;border:0;background:none;color:var(--apl-teal);font-size:13px;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
body .apl-greviews .apl-gr-head{display:flex;align-items:center;gap:12px}
body .apl-greviews .apl-gr-av{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:none}
body .apl-greviews .apl-gr-g{margin-left:auto;flex:none}
body .apl-greviews .apl-gr-by a{color:inherit}
body .apl-greviews .apl-gr-by{display:flex;flex-direction:column;gap:2px;margin:0;font-size:12px;color:var(--apl-muted)}
body .apl-greviews .apl-gr-by strong{font-size:14px;color:var(--apl-ink);font-weight:600}
body .apl-greviews .apl-gr-actions.e-con{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;gap:14px}
body .apl-greviews .apl-gr-write{display:inline-flex;align-items:center;min-height:50px;padding:15px 23px;border:1px solid #b7d6d8;border-radius:7px;color:var(--apl-teal);background:transparent;font-size:13px;font-weight:600;text-decoration:none}
body .apl-greviews .apl-gr-write:hover{background:var(--apl-teal-pale)}
@media(max-width:1023px){body .apl-greviews .apl-gr-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:599px){body .apl-greviews .apl-gr-list{grid-template-columns:1fr}}
