:root{
  --bg:#f4f4f2;
  --surface:#ffffff;
  --surface-2:#ecece8;
  --text:#171717;
  --muted:#66645f;
  --line:#d9d8d2;
  --yellow:#ffd600;
  --yellow-soft:#fff5a8;
  --red:#d92b2b;
  --black:#111111;
  --radius:26px;
  --radius-sm:18px;
  --shadow:0 18px 48px rgba(0,0,0,.08);
  --container:1420px;
  --gutter:clamp(18px,2.2vw,34px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 Inter,Arial,"Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.shell{width:min(calc(100% - (var(--gutter) * 2)),var(--container));margin-inline:auto}
.topbar{position:sticky;top:0;z-index:30;background:rgba(244,244,242,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(23,23,23,.08)}
.topbar__inner{min-height:76px;display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:-.03em;font-size:22px;white-space:nowrap}
.brand__mark{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--yellow);font-weight:950;color:#111}
.nav{margin-left:auto;display:flex;align-items:center;gap:8px}
.nav a{padding:11px 14px;border-radius:12px;color:#3e3d39;font-weight:700}
.nav a:hover,.nav a[aria-current="page"]{background:#fff;color:#111}
.topbar__cta{margin-left:8px;padding:12px 18px;border-radius:14px;background:#111;color:#fff;font-weight:800}
.menu-btn{display:none;margin-left:auto;border:0;background:#fff;border-radius:12px;width:44px;height:44px;font-size:24px}
.hero{padding:54px 0 28px}
.hero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:28px;align-items:stretch}
.hero__copy,.hero__visual{border-radius:34px;min-width:0}
.hero__copy{background:#111;color:#fff;padding:clamp(30px,4.3vw,68px);display:flex;flex-direction:column;justify-content:center}
.eyebrow{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:8px 11px;border-radius:999px;background:rgba(255,214,0,.16);color:#ffe568;font-weight:800;font-size:14px;margin-bottom:20px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(40px,5.3vw,82px);line-height:.98;letter-spacing:-.055em;margin-bottom:24px;max-width:950px}
.hero__copy p{font-size:clamp(18px,1.45vw,23px);color:#ddd;max-width:780px;margin-bottom:30px}
.hero__actions{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 20px;border:1px solid transparent;border-radius:15px;font-weight:850;transition:.18s ease}
.btn--yellow{background:var(--yellow);color:#111}.btn--yellow:hover{transform:translateY(-1px);filter:brightness(.98)}
.btn--light{background:#fff;color:#111}.btn--light:hover{transform:translateY(-1px)}
.btn--ghost{background:transparent;border-color:#c8c7c1;color:#222}.btn--ghost:hover{background:#fff}
.hero__visual{background:linear-gradient(145deg,#ffe747 0 48%,#f0c900 48% 100%);padding:34px;display:grid;place-items:center;overflow:hidden;position:relative}
.hero__visual::after{content:"";position:absolute;inset:auto -12% -26% 22%;height:56%;background:rgba(255,255,255,.28);border-radius:50%;transform:rotate(-11deg)}
.bag-pair{position:relative;z-index:2;width:min(100%,630px);display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}
.bag-pair img{width:100%;height:auto;filter:drop-shadow(0 24px 24px rgba(0,0,0,.22));border-radius:22px}
.section{padding:38px 0}
.section--tight{padding:22px 0}
.section__head{display:flex;justify-content:space-between;gap:24px;align-items:end;margin-bottom:22px}
.section__head h2{font-size:clamp(30px,3vw,48px);line-height:1.04;letter-spacing:-.04em;margin-bottom:0}
.section__head p{max-width:680px;margin-bottom:0;color:var(--muted)}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.card{background:var(--surface);border:1px solid rgba(23,23,23,.08);border-radius:var(--radius);padding:clamp(22px,2.5vw,34px);min-width:0}
.card h3{font-size:25px;line-height:1.12;letter-spacing:-.025em;margin-bottom:12px}
.card p:last-child{margin-bottom:0}
.product-card{display:grid;grid-template-columns:minmax(220px,.88fr) minmax(0,1.12fr);gap:28px;align-items:center;background:#fff;border-radius:30px;padding:26px;border:1px solid rgba(23,23,23,.08)}
.product-card__media{min-height:360px;border-radius:22px;background:#f3f2ee;display:grid;place-items:center;overflow:hidden;padding:14px}
.product-card__media img{width:100%;height:100%;max-height:390px;object-fit:contain;border-radius:16px}
.product-card__body{padding:10px 8px}
.product-card__tag{font-weight:800;color:#76736a;font-size:14px;margin-bottom:10px}
.product-card h2,.product-card h3{font-size:clamp(30px,3vw,45px);line-height:1.03;letter-spacing:-.04em;margin-bottom:14px}
.price{font-size:36px;font-weight:950;letter-spacing:-.04em;margin:22px 0}
.meta-row{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}
.pill{padding:8px 11px;border-radius:999px;background:#efefe9;font-size:14px;font-weight:750;color:#4c4a44}
.list{display:grid;gap:12px;padding:0;margin:0;list-style:none}
.list li{position:relative;padding-left:28px}.list li::before{content:"✓";position:absolute;left:0;top:0;font-weight:950;color:#111}
.step{display:flex;gap:16px;align-items:flex-start}
.step__num{flex:0 0 42px;height:42px;border-radius:13px;background:var(--yellow);display:grid;place-items:center;font-weight:950}
.compare{overflow:auto;background:#fff;border-radius:24px;border:1px solid rgba(23,23,23,.08)}
table{border-collapse:collapse;width:100%;min-width:720px}th,td{text-align:left;padding:18px 20px;border-bottom:1px solid #e4e3de;vertical-align:top}th{font-size:14px;color:#66645f;background:#f4f4f0}tr:last-child td{border-bottom:0}
.notice{padding:18px 20px;background:#fff8c8;border:1px solid #ebd34f;border-radius:16px;color:#423b10}
.form-wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(520px,1.15fr);gap:24px;align-items:start}
.form-intro{background:#111;color:#fff;border-radius:30px;padding:clamp(28px,3.8vw,52px);position:sticky;top:102px}
.form-intro h2{font-size:clamp(34px,4vw,58px);line-height:1.02;letter-spacing:-.045em}
.form-intro p{color:#d8d8d8}
.form-card{background:#fff;border-radius:30px;padding:clamp(24px,3.4vw,46px);box-shadow:var(--shadow)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field{display:grid;gap:8px}.field--full{grid-column:1/-1}.field label,.field__label{font-weight:800;font-size:14px}
.input,.select,.textarea{width:100%;border:1px solid #cfcec8;background:#fafaf8;color:#111;border-radius:14px;outline:none;padding:14px 15px;min-height:52px;transition:.15s ease}
.input:focus,.select:focus,.textarea:focus{border-color:#88857c;box-shadow:0 0 0 3px rgba(255,214,0,.28);background:#fff}.textarea{min-height:130px;resize:vertical}
.type-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px}.type-option{position:relative}.type-option input{position:absolute;opacity:0;pointer-events:none}.type-option span{display:flex;align-items:center;gap:10px;min-height:54px;border:1px solid #cfcec8;border-radius:14px;padding:13px 14px;font-weight:800;background:#fafaf8}.type-option span::before{content:"";width:18px;height:18px;border-radius:50%;border:2px solid #8b8981;box-shadow:inset 0 0 0 4px #fafaf8}.type-option input:checked+span{border-color:#111;background:#fff7be}.type-option input:checked+span::before{background:#111;border-color:#111;box-shadow:inset 0 0 0 4px #fff7be}
.legal-note{display:none;margin-top:10px;padding:13px 14px;border-radius:13px;background:#fff4b3;border:1px solid #e0c73b;font-size:14px}.legal-note.is-visible{display:block}
.form-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.form-foot small{color:#77746c;max-width:460px}.form-status{margin-top:14px;font-weight:800}.form-status.is-ok{color:#15713d}.form-status.is-error{color:#a72828}
.faq{display:grid;gap:10px}.faq details{background:#fff;border:1px solid #dfded8;border-radius:18px;padding:18px 20px}.faq summary{cursor:pointer;font-weight:850}.faq p{margin:12px 0 0;color:#5f5d57}
.page-head{padding:52px 0 22px}.page-head__box{background:#fff;border-radius:32px;padding:clamp(28px,4.5vw,62px)}.page-head h1{color:#111;font-size:clamp(42px,5.2vw,76px);max-width:1050px}.page-head p{font-size:20px;color:#5e5c56;max-width:850px;margin-bottom:0}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-card{background:#fff;border-radius:26px;padding:30px}.contact-card strong{display:block;font-size:14px;color:#75736d;margin-bottom:6px}.contact-card a{font-size:24px;font-weight:900}
.footer{padding:42px 0 34px}.footer__inner{border-top:1px solid #d7d6d0;padding-top:28px;display:grid;grid-template-columns:1fr auto;gap:28px;color:#66645f}.footer__links{display:flex;flex-wrap:wrap;gap:14px 20px}.footer__links a:hover{color:#111}
.hidden-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media (max-width:1500px){:root{--container:1320px}.hero{padding-top:34px}.hero__grid{grid-template-columns:minmax(0,1fr) minmax(340px,.82fr)}.product-card{gap:22px}}
@media (max-width:1180px){:root{--container:1040px}.nav{gap:2px}.nav a{padding:10px 9px;font-size:14px}.hero__grid,.form-wrap{grid-template-columns:1fr}.hero__visual{min-height:520px}.form-intro{position:static}.grid-3{grid-template-columns:1fr 1fr}.product-card{grid-template-columns:minmax(210px,.8fr) 1.2fr}}
@media (max-width:820px){:root{--gutter:18px}.topbar__inner{min-height:68px}.nav{display:none;position:absolute;left:var(--gutter);right:var(--gutter);top:72px;background:#fff;border-radius:18px;padding:10px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch}.nav.is-open{display:flex}.nav a{padding:12px 14px}.topbar__cta{display:none}.menu-btn{display:block}.hero{padding-top:22px}.hero__copy{padding:32px 24px}.hero__visual{min-height:410px;padding:22px}.bag-pair{width:min(100%,520px)}.section{padding:28px 0}.section__head{display:block}.section__head p{margin-top:10px}.grid-2,.grid-3,.contact-grid{grid-template-columns:1fr}.product-card{grid-template-columns:1fr;padding:18px}.product-card__media{min-height:330px}.form-grid{grid-template-columns:1fr}.field--full{grid-column:auto}.form-foot{align-items:stretch;flex-direction:column}.form-foot .btn{width:100%}.footer__inner{grid-template-columns:1fr}}
@media (max-width:560px){h1{font-size:42px}.hero__visual{min-height:320px}.bag-pair{gap:8px}.page-head{padding-top:28px}.page-head__box{padding:26px 20px}.type-choice{grid-template-columns:1fr}.card,.form-card{border-radius:22px}.price{font-size:31px}.contact-card a{font-size:20px}.footer__links{display:grid;gap:8px}}

/* v1.2.1 — fixed contrast, non-stretched hero and redesigned product carousels */
.eyebrow{background:#ffec86;color:#2d2500;border:1px solid rgba(45,37,0,.06)}
.hero__copy .eyebrow,.form-intro .eyebrow{background:rgba(255,214,0,.16);color:#ffe568;border-color:transparent}
.hero__visual{display:block;position:relative;padding:18px;min-height:0;aspect-ratio:7/5;background:linear-gradient(135deg,#ffd930 0%,#f3ca08 100%);overflow:hidden}
.hero__visual::after{display:none}
.hero__visual>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:28px}
.section__head .eyebrow,.page-head .eyebrow{background:#ffec86;color:#2d2500}
.product-card{align-items:start}
.product-card__media{min-height:0;display:block;padding:0;background:transparent;aspect-ratio:auto;overflow:visible}
.carousel{position:relative;display:flex;flex-direction:column;gap:14px;width:100%;height:auto;background:transparent;overflow:visible;border-radius:0;touch-action:pan-y}
.carousel__stage{position:relative;width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:24px;background:#f5f3ed;box-shadow:inset 0 0 0 1px rgba(17,17,17,.08),0 14px 28px rgba(0,0,0,.06)}
.carousel__track{display:flex;width:100%;height:100%;transition:transform .32s ease;will-change:transform}
.carousel__track img{flex:0 0 100%;width:100%;height:100%;max-height:none;aspect-ratio:1/1;object-fit:cover;border-radius:0}
.carousel__btn{position:absolute;top:50%;z-index:2;transform:translateY(-50%);width:50px;height:50px;border:0;border-radius:50%;display:grid;place-items:center;background:rgba(17,17,17,.84);color:#fff;font-size:34px;line-height:1;box-shadow:0 10px 26px rgba(0,0,0,.22);transition:transform .18s ease,background .18s ease,opacity .18s ease}
.carousel__btn:hover{background:#111;transform:translateY(-50%) scale(1.03)}
.carousel__btn:focus-visible,.carousel__thumb:focus-visible{outline:3px solid #111;outline-offset:2px}
.carousel__btn--prev{left:14px}.carousel__btn--next{right:14px}
.carousel__counter{position:absolute;left:14px;top:14px;z-index:2;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.92);color:#111;font-size:13px;font-weight:900;box-shadow:0 8px 18px rgba(0,0,0,.12)}
.carousel__thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.carousel__thumb{padding:0;border:0;border-radius:18px;background:#fff;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(17,17,17,.1);opacity:.82;transition:transform .18s ease,opacity .18s ease,box-shadow .18s ease;aspect-ratio:1/1}
.carousel__thumb img{display:block;width:100%;height:100%;object-fit:cover}
.carousel__thumb:hover{opacity:1;transform:translateY(-1px)}
.carousel__thumb.is-active{opacity:1;box-shadow:inset 0 0 0 2px #111,0 12px 24px rgba(0,0,0,.12)}
.carousel__dots{display:none !important}
.contact-card--wide{grid-column:1/-1}
.contact-card__value{display:block;font-size:24px;font-weight:900;line-height:1.2;margin-bottom:8px;color:#171717}
.footer__inner>div:first-child{max-width:720px}
@media (max-width:1180px){.hero__visual{aspect-ratio:7/5}.product-card__media{max-width:560px}.carousel__btn{width:46px;height:46px;font-size:30px}}
@media (max-width:820px){.hero__visual{padding:14px;aspect-ratio:6/5}.carousel{gap:10px}.carousel__thumbs{gap:10px}}
@media (max-width:560px){.carousel__btn{width:42px;height:42px;font-size:28px}.carousel__btn--prev{left:10px}.carousel__btn--next{right:10px}.carousel__counter{left:10px;top:10px;padding:7px 10px}.contact-card__value{font-size:20px}}

/* v1.2.2 — unified desktop hero block */
.hero{padding:54px 0 28px}
.hero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:0;align-items:stretch;background:#111;border-radius:34px;overflow:hidden;box-shadow:var(--shadow)}
.hero__copy,.hero__visual{border-radius:0}
.hero__copy{background:transparent;padding:clamp(34px,4.1vw,64px)}
.hero__visual{display:flex;align-items:stretch;justify-content:center;padding:26px 26px 26px 0;min-height:100%;aspect-ratio:auto;background:transparent;overflow:hidden}
.hero__visual>img{display:block;width:100%;height:100%;min-height:100%;max-height:100%;object-fit:cover;object-position:center;border-radius:26px}
@media (max-width:1500px){.hero__grid{grid-template-columns:minmax(0,1fr) minmax(340px,.82fr)}}
@media (max-width:1180px){.hero__grid{grid-template-columns:1fr;background:transparent;border-radius:0;overflow:visible;box-shadow:none}.hero__copy{background:#111;border-radius:32px 32px 0 0;padding:32px 28px}.hero__visual{padding:0 0 0 0;background:#111;border-radius:0 0 32px 32px;overflow:hidden}.hero__visual>img{border-radius:0 0 32px 32px;min-height:420px}}
@media (max-width:820px){.hero{padding-top:22px}.hero__copy{padding:32px 24px}.hero__visual>img{min-height:340px}}
@media (max-width:560px){.hero__visual>img{min-height:280px}}

/* v1.2.3 — casual image-copy protection */
.hero__visual,
.carousel,
.carousel__stage,
.carousel__thumb{
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  user-select:none;
}
.hero__visual>img,
.carousel__track img,
.carousel__thumb img{
  pointer-events:none;
  -webkit-user-drag:none;
  user-drag:none;
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  user-select:none;
}

