/* AI Tools Pro - product page v7 (11.6.95). Self-contained: new .ntp-* classes only. */
.ntp{--p-bg:#fffaf2;--p-card:#ffffff;--p-soft:#fff6e6;--p-line:rgba(154,91,0,.16);--p-line2:rgba(154,91,0,.28);--p-ink:#1f1608;--p-muted:#6b5a3e;--p-gold:#f59e0b;--p-gold-ink:#9a5b00;--p-grad:linear-gradient(135deg,#ffc53d,#f59e0b);--p-sh:0 1px 2px rgba(60,40,10,.05),0 16px 40px rgba(60,40,10,.08);
  display:block;padding:calc(var(--nt-giftbar-h,0px) + 104px) 0 96px;background:var(--p-bg);color:var(--p-ink);font-family:Inter,system-ui,-apple-system,sans-serif}
html[data-nt-theme="dark"] .ntp{--p-bg:#120e09;--p-card:#1c150c;--p-soft:#241a10;--p-line:rgba(255,190,90,.14);--p-line2:rgba(255,190,90,.26);--p-ink:#f7efe2;--p-muted:#cdbd9f;--p-gold-ink:#ffb020;--p-sh:0 18px 44px rgba(0,0,0,.45)}
body.admin-bar .ntp{padding-top:calc(var(--nt-giftbar-h,0px) + 104px)}
.ntp *,.ntp *::before,.ntp *::after{box-sizing:border-box}
.ntp-wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.ntp a{color:inherit}
.ntp h1,.ntp h2,.ntp h3{color:var(--p-ink);-webkit-text-fill-color:currentColor;background:none;margin:0;letter-spacing:-.02em}

/* breadcrumb */
.ntp-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 22px;font-size:.84rem;color:var(--p-muted)}
.ntp-crumbs a{text-decoration:none;font-weight:600}
.ntp-crumbs a:hover{color:var(--p-gold-ink)}
.ntp-crumbs span[aria-current]{color:var(--p-ink);font-weight:600}

/* hero */
.ntp-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:44px;align-items:start}
.ntp-media{position:sticky;top:calc(var(--nt-giftbar-h,0px) + 100px);display:flex;flex-direction:column;gap:16px}
.ntp-media__frame{position:relative;aspect-ratio:4/3;border-radius:26px;overflow:hidden;border:1px solid var(--p-line);background:radial-gradient(120% 120% at 20% 10%,rgba(245,158,11,.22),transparent 55%),linear-gradient(160deg,var(--p-soft),var(--p-card));display:grid;place-items:center;box-shadow:var(--p-sh)}
.ntp-media__frame>img,.ntp-media__frame img{width:100%;height:100%;object-fit:contain;padding:8%;background:transparent;border:0;border-radius:0;box-shadow:none}
.ntp-media__frame>*:not(img):not(.ntp-media__badge){width:100%;height:100%}
.ntp-media__badge{position:absolute;top:16px;left:16px;padding:7px 12px;border-radius:999px;background:var(--p-grad);color:#1b1730;font:800 .85rem/1 Inter,sans-serif}
.ntp-assure{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ntp-assure li{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:16px;border:1px solid var(--p-line);background:var(--p-card)}
.ntp-assure i{flex:0 0 34px;width:34px;height:34px;display:grid;place-items:center;border-radius:11px;background:rgba(245,158,11,.14);color:var(--p-gold-ink);font-size:.9rem}
.ntp-assure span{display:flex;flex-direction:column;gap:2px;font-size:.84rem;color:var(--p-muted);line-height:1.4}
.ntp-assure strong{color:var(--p-ink);font-size:.92rem}

.ntp-info{display:flex;flex-direction:column;gap:18px;min-width:0}
.ntp-info__top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ntp-kicker{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:rgba(245,158,11,.14);color:var(--p-gold-ink);font:800 .72rem/1 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.ntp-stock{display:inline-flex;align-items:center;gap:7px;font-size:.84rem;font-weight:700;color:#15803d}
.ntp-stock i{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(21,128,61,.16)}
html[data-nt-theme="dark"] .ntp-stock{color:#4ade80}
.ntp-stock.is-out{color:#b91c1c}
.ntp-title{font:800 clamp(1.8rem,3.1vw,2.7rem)/1.1 Inter,system-ui,sans-serif!important;letter-spacing:-.03em!important}
.ntp-title.nt-product-title--long{font-size:clamp(1.6rem,2.6vw,2.2rem)!important}
.ntp-title.nt-product-title--very-long{font-size:clamp(1.4rem,2.2vw,1.85rem)!important}
.ntp-rating{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:.88rem;color:var(--p-muted)}
.ntp-rating strong{color:var(--p-ink)}
.ntp-lead{margin:0;font-size:1.05rem;line-height:1.6;color:var(--p-muted);max-width:60ch}

.ntp-glance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.ntp-glance div{padding:14px 16px;border-radius:16px;border:1px solid var(--p-line);background:var(--p-card)}
.ntp-glance dt{display:flex;align-items:center;gap:8px;font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--p-muted)}
.ntp-glance dt i{color:var(--p-gold-ink)}
.ntp-glance dd{margin:6px 0 0;font-size:1rem;font-weight:700;color:var(--p-ink)}

.ntp-buy{padding:22px;border-radius:24px;border:1px solid var(--p-line2);background:var(--p-card);box-shadow:var(--p-sh);display:flex;flex-direction:column;gap:16px}
.ntp-buy__price{display:flex;flex-direction:column;gap:4px}
.ntp-buy__price>span{font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--p-muted)}
.ntp-buy__price strong{font:800 clamp(1.8rem,2.6vw,2.3rem)/1.1 Inter,sans-serif;color:var(--p-ink);letter-spacing:-.02em}
.ntp-buy__price del{opacity:.55;font-size:.6em;margin-right:8px}
.ntp-buy__price ins{text-decoration:none}
.ntp .ntp-buy__form{margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
.ntp .ntp-buy__form :is(button[type=submit],.single_add_to_cart_button,.button,.acp-buy,a.nt-btn--primary,.nt-btn--primary){width:100%!important;min-height:52px!important;border:0!important;border-radius:14px!important;background:var(--p-grad)!important;color:#1b1730!important;font:800 1rem/1 Inter,sans-serif!important;box-shadow:0 12px 26px rgba(245,158,11,.3)!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;cursor:pointer;text-decoration:none!important}
.ntp .ntp-buy__form :is(select,input[type=number],input[type=text]){min-height:46px;border-radius:12px!important;border:1px solid var(--p-line2)!important;background:var(--p-soft)!important;color:var(--p-ink)!important;padding:0 12px}
.ntp .ntp-buy__form table.variations{width:100%;border:0;margin:0 0 12px}
.ntp .ntp-buy__form table.variations th,.ntp .ntp-buy__form table.variations td{display:block;padding:0 0 6px;border:0;background:transparent;text-align:left}
.ntp-buy__links{display:flex;flex-wrap:wrap;gap:8px 18px}
.ntp-buy__links a{display:inline-flex;align-items:center;gap:7px;font-size:.88rem;font-weight:700;color:var(--p-gold-ink)!important;text-decoration:none}
.ntp-buy__pay{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding-top:14px;border-top:1px solid var(--p-line)}
.ntp-buy__pay span{font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--p-muted);margin-right:4px}
.ntp-buy__pay em{font-style:normal;font-size:.78rem;font-weight:700;padding:5px 10px;border-radius:999px;border:1px solid var(--p-line);background:var(--p-soft)}

/* steps */
.ntp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:56px 0 0}
.ntp-steps>div{position:relative;padding:22px;border-radius:20px;border:1px solid var(--p-line);background:var(--p-card)}
.ntp-steps b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--p-grad);color:#1b1730;font:800 1rem/1 Inter,sans-serif;margin-bottom:14px}
.ntp-steps h3{font-size:1.05rem;font-weight:800;margin-bottom:6px}
.ntp-steps p{margin:0;font-size:.9rem;line-height:1.55;color:var(--p-muted)}

/* details */
.ntp-details{display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;margin:64px 0 0;align-items:start}
.ntp-details__nav{position:sticky;top:calc(var(--nt-giftbar-h,0px) + 100px)}
.ntp-details__nav h2{font-size:1.3rem;font-weight:800;margin-bottom:14px}
.ntp-details__nav nav{display:flex;flex-direction:column;gap:4px;border-left:2px solid var(--p-line);padding-left:4px}
.ntp-details__nav a{padding:9px 12px;border-radius:10px;text-decoration:none;font-size:.92rem;font-weight:600;color:var(--p-muted)}
.ntp-details__nav a:hover{background:rgba(245,158,11,.1);color:var(--p-gold-ink)}
.ntp-details__body{display:flex;flex-direction:column;gap:18px;min-width:0}
.ntp-block{padding:28px;border-radius:22px;border:1px solid var(--p-line);background:var(--p-card);scroll-margin-top:120px}
.ntp-block>h2{font-size:1.35rem;font-weight:800;margin-bottom:16px}
.ntp-prose{font-size:1rem;line-height:1.75;color:var(--p-ink)}
.ntp-prose p{margin:0 0 14px}
.ntp-prose ul,.ntp-prose ol{margin:0 0 14px;padding-left:1.2em}
.ntp-prose li{margin:6px 0}
.ntp-prose a{color:var(--p-gold-ink)}
.ntp-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;border-radius:16px;overflow:hidden;border:1px solid var(--p-line);background:var(--p-line)}
.ntp-specs div{padding:14px 16px;background:var(--p-card)}
.ntp-specs dt{font-size:.74rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--p-muted)}
.ntp-specs dd{margin:5px 0 0;font-weight:700}
.ntp-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ntp-two>div{padding:18px;border-radius:16px;background:var(--p-soft);border:1px solid var(--p-line)}
.ntp-two h3{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:800;margin-bottom:8px}
.ntp-two h3 i{color:var(--p-gold-ink)}
.ntp-two p{margin:0 0 10px;font-size:.92rem;line-height:1.6;color:var(--p-muted)}
.ntp-two a{font-size:.88rem;font-weight:700;color:var(--p-gold-ink)!important;text-decoration:none}
.ntp-faq{display:flex;flex-direction:column;gap:10px}
.ntp-faq details{border-radius:14px;border:1px solid var(--p-line);background:var(--p-soft);padding:0 18px}
.ntp-faq summary{cursor:pointer;list-style:none;padding:16px 28px 16px 0;font-weight:700;position:relative}
.ntp-faq summary::-webkit-details-marker{display:none}
.ntp-faq summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:1.3rem;color:var(--p-gold-ink)}
.ntp-faq details[open] summary::after{content:"\2212"}
.ntp-faq p{margin:0 0 16px;font-size:.94rem;line-height:1.65;color:var(--p-muted)}
.ntp-guide{display:flex;flex-direction:column;gap:8px;padding:24px 28px;border-radius:22px;border:1px solid var(--p-line2);background:radial-gradient(100% 140% at 100% 0%,rgba(245,158,11,.22),transparent 60%),var(--p-card);text-decoration:none!important}
.ntp-guide strong{font-size:1.2rem;font-weight:800;color:var(--p-ink)}
.ntp-guide>span:not(.ntp-kicker){color:var(--p-muted);font-size:.94rem;line-height:1.55}
.ntp-guide em{font-style:normal;font-weight:800;color:var(--p-gold-ink)}
.ntp-guide .ntp-kicker{align-self:flex-start}
.ntp-extra:empty{display:none}

/* related */
.ntp-related{margin:64px 0 0}
.ntp-related__head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px}
.ntp-related__head h2{font-size:1.5rem;font-weight:800}
.ntp-related__head a{font-weight:700;color:var(--p-gold-ink)!important;text-decoration:none}

/* mobile buy bar */
.ntp-mbar{display:none}
@media (max-width:999.98px){
  .ntp{padding-top:calc(var(--nt-giftbar-h,0px) + 84px);padding-bottom:110px}
  .ntp-hero{grid-template-columns:1fr;gap:24px}
  .ntp-media{position:static}
  .ntp-details{grid-template-columns:1fr;gap:18px}
  .ntp-details__nav{position:static}
  .ntp-details__nav nav{flex-direction:row;overflow-x:auto;border-left:0;padding:0;gap:6px}
  .ntp-details__nav a{white-space:nowrap;border:1px solid var(--p-line);border-radius:999px}
  .ntp-mbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex!important;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--p-card);border-top:1px solid var(--p-line2);box-shadow:0 -12px 30px rgba(0,0,0,.12)}
  .ntp-mbar small{display:block;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--p-muted)}
  .ntp-mbar strong{font-size:1.15rem;font-weight:800;color:var(--p-ink)}
  .ntp-mbar__btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:12px;background:var(--p-grad);color:#1b1730!important;font-weight:800;text-decoration:none}
  .ntp-mbar__btn.is-off{background:var(--p-soft);color:var(--p-muted)!important}
}
@media (max-width:640px){
  .ntp-wrap{padding:0 16px}
  .ntp-glance,.ntp-specs,.ntp-two,.ntp-steps{grid-template-columns:1fr}
  .ntp-block{padding:20px}
  .ntp-buy{padding:18px}
  .ntp-steps{margin-top:36px}
}
body.single-product .nt-wa-float{bottom:96px}
@media (min-width:1000px){body.single-product .nt-wa-float{bottom:22px}}
/* layout areas: assurances sit under the image on desktop, after the buy box on mobile */
.ntp-hero{grid-template-areas:"media info" "assure info";grid-template-rows:auto 1fr}
.ntp-media{grid-area:media;position:static}
.ntp-info{grid-area:info}
.ntp-hero>.ntp-assure{grid-area:assure;align-self:start}
.ntp-details{grid-template-columns:240px minmax(0,1fr)}
html body .ntp .ntp-buy__form :is(button[type=submit],.single_add_to_cart_button,.button,.acp-buy,a.nt-btn--primary,.nt-btn--primary,a.nt-btn,button.nt-btn){width:100%!important;min-height:52px!important;border:0!important;border-radius:14px!important;background:linear-gradient(135deg,#ffc53d,#f59e0b)!important;color:#1b1730!important;font:800 1rem/1 Inter,sans-serif!important;box-shadow:0 12px 26px rgba(245,158,11,.3)!important}
@media (max-width:999.98px){
  .ntp-hero{grid-template-areas:"media" "info" "assure";grid-template-rows:auto}
  .ntp-details{grid-template-columns:minmax(0,1fr)}
  .ntp-media__frame{aspect-ratio:16/10}
}
@media (max-width:640px){.ntp-glance{grid-template-columns:repeat(2,minmax(0,1fr))}.ntp-glance div{padding:12px}.ntp-glance dd{font-size:.92rem}}

/* 11.6.95 — containment fixes: image stays inside its frame, long text wraps, nothing forces horizontal scroll. */
.ntp,.ntp *{min-width:0}
.ntp{max-width:100%;overflow-x:clip}
.ntp-media__frame{overflow:hidden;display:grid;place-items:center}
.ntp-media__frame img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain!important;display:block}
.ntp-prose,.ntp-details__body,.ntp-details__body p,.ntp-details__body li,.ntp-lead{overflow-wrap:anywhere;word-break:normal}
.ntp-details__nav{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.ntp-details__nav nav{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto}
@media (max-width:999.98px){
  .ntp-details__nav nav{flex-wrap:nowrap}
  .ntp-mbar{z-index:90}
  body.single-product .nt-wa-float{bottom:96px!important}
}
