/* =========================================================
   Atelier — сторінка товару v2.1
   ========================================================= */

.at-product{
	--at-deep:#1E4A54;
	--at-teal:#2E6B78;
	--at-mist:#E4EDEF;
	--at-accent:#1BB0CE;
	--at-paper:#FBFAF8;
	--at-ink:#17272B;
	--at-muted:#77878B;
	--at-hair:rgba(30,74,84,.16);
	--at-pad:clamp(20px,5vw,64px);
	--at-max:1240px;
	--at-band:300px;
	margin:0;color:var(--at-ink);font-size:16px;line-height:1.65;
}
.at-product *{box-sizing:border-box}

/* ---------- зняти обгортки теми ---------- */
body.atelier-product-page .site-content,
body.atelier-product-page .aux-page-content,
body.atelier-product-page .aux-primary,
body.atelier-product-page main.site-main,
body.atelier-product-page #main,
body.atelier-product-page .woocommerce-page .content-area{padding-top:0!important;margin-top:0!important}
body.atelier-product-page .aux-container,
body.atelier-product-page .container{max-width:none!important;padding-left:0!important;padding-right:0!important;width:100%!important}
body.atelier-product-page .page-title-bar,
body.atelier-product-page .aux-page-title-section,
body.atelier-product-page .entry-header.aux-page-header,
body.atelier-product-page .woocommerce-breadcrumb,
body.atelier-product-page .woocommerce-product-gallery,
body.atelier-product-page .woocommerce-tabs,
body.atelier-product-page .related.products,
body.atelier-product-page .up-sells{display:none!important}

/* ---------- прозора шапка ---------- */
body.atelier-product-page .site-header,
body.atelier-product-page #site-header,
body.atelier-product-page .masthead,
body.atelier-product-page .aux-header{
	position:absolute!important;top:0;left:0;right:0;width:100%;
	background:transparent!important;background-color:transparent!important;
	box-shadow:none!important;border-bottom:0!important;z-index:999;
}
body.atelier-product-page .site-header .aux-master-menu > li > a,
body.atelier-product-page .site-header .menu-item > a,
body.atelier-product-page .site-header .aux-cart-total,
body.atelier-product-page .site-header .aux-phone,
body.atelier-product-page .site-header .aux-burger-icon::before,
body.atelier-product-page .site-header .aux-burger-icon::after{color:#fff!important}
body.atelier-product-page .site-header.aux-sticky,
body.atelier-product-page .site-header.aux-sticky-on,
body.atelier-product-page .masthead.aux-sticky{position:fixed!important;background:#1E4A54!important}

/* =========================================================
   1. ФОНОВА СМУГА ПІД МЕНЮ
   ========================================================= */
.at-band{
	position:relative;height:var(--at-band);
	width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
	background:linear-gradient(120deg,#1E4A54 0%,#2E6B78 100%);
	overflow:hidden;isolation:isolate;
}
.at-band--photo::before{content:"";position:absolute;inset:0;z-index:-2;
	background-image:var(--at-band-image);background-size:cover;background-position:center}
.at-band--photo::after{content:"";position:absolute;inset:0;z-index:-1;
	background:linear-gradient(180deg,rgba(19,48,55,.55) 0%,rgba(19,48,55,.28) 100%)}

/* =========================================================
   2. ТОВАР
   ========================================================= */
.at-intro{background:#fff}
.at-intro__in{max-width:var(--at-max);margin:0 auto;
	padding:clamp(24px,3.5vw,44px) var(--at-pad) clamp(40px,5vw,72px)}

.at-crumbs{font-size:12px;letter-spacing:.14em;text-transform:uppercase;
	color:var(--at-muted);margin-bottom:clamp(22px,3vw,38px)}
.at-crumbs a{color:inherit;text-decoration:none;transition:color .2s}
.at-crumbs a:hover{color:var(--at-deep)}
.at-crumbs span{margin:0 8px;opacity:.5}

.at-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
	gap:clamp(28px,5vw,72px);align-items:start}

/* ---- фото ---- */
.at-media__frame{position:relative;background:#fff;border:1px solid var(--at-hair);
	overflow:hidden;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center}
.at-media__img{width:100%;height:100%;object-fit:contain;display:block;
	padding:clamp(8px,1.6vw,20px);filter:none!important;opacity:1!important}
@media (hover:hover) and (min-width:901px){
	.at-media__frame--zoom{cursor:zoom-in}
	.at-media__frame--zoom .at-media__img{transition:transform .35s cubic-bezier(.2,.7,.3,1)}
	.at-media__frame--zoom.is-zooming .at-media__img{transform:scale(2);transition-duration:.15s}
}
.at-media__placeholder{width:100%;height:100%;background:var(--at-mist)}

.at-flag{position:absolute;top:14px;left:14px;font-size:11px;letter-spacing:.12em;
	text-transform:uppercase;padding:7px 12px;background:var(--at-deep);color:#fff}
.at-flag--out{background:#8A9599}

.at-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.at-thumb{width:64px;height:64px;padding:0;border:1px solid var(--at-hair);
	background:#fff;overflow:hidden;cursor:pointer;transition:border-color .2s,transform .2s}
.at-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.at-thumb.is-active,.at-thumb:hover{border-color:var(--at-deep);transform:translateY(-2px)}
.at-thumb:focus-visible{outline:2px solid var(--at-accent);outline-offset:2px}

/* ---- права колонка ---- */
.at-eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;
	color:var(--at-muted);margin:0 0 12px}
.at-title{font-size:clamp(28px,3.6vw,46px);line-height:1.1;margin:0 0 16px;
	color:var(--at-deep);font-weight:600;letter-spacing:-.01em}
.at-price{font-size:clamp(22px,2.2vw,28px);color:var(--at-ink);margin-bottom:18px;font-weight:600}
.at-price del{opacity:.45;font-size:.7em;margin-right:8px;font-weight:400}
.at-price ins{text-decoration:none}
.at-lead{color:#3A4E52;max-width:48ch;margin-bottom:26px}
.at-lead p{margin:0 0 10px}

.at-chips{list-style:none;margin:0 0 28px;padding:0;
	display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
	column-gap:clamp(24px,3vw,52px);
	border-top:1px solid var(--at-hair);border-bottom:1px solid var(--at-hair)}
.at-chip{display:flex;flex-direction:row-reverse;align-items:baseline;
	justify-content:space-between;gap:14px;padding:12px 0;
	border-top:1px solid var(--at-hair)}
.at-chip:nth-child(-n+2){border-top:0}
.at-chip__val{font-size:16px;font-weight:600;color:var(--at-deep);line-height:1.3;white-space:nowrap}
.at-chip__lbl{font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--at-muted)}

.at-buy{margin-bottom:20px}
.at-buy form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;margin:0}
.at-buy .quantity{display:flex;align-items:center;border:1px solid var(--at-hair)}
.at-buy .quantity input.qty{width:74px;height:56px;background:transparent;border:0;
	color:var(--at-ink);text-align:center;font-size:16px;-moz-appearance:textfield}
.at-buy .quantity label{display:none}
.at-buy button.button,.at-buy .single_add_to_cart_button{
	flex:1 1 220px;min-height:56px;background:var(--at-deep)!important;color:#fff!important;
	border:0!important;border-radius:2px!important;font-size:14px!important;letter-spacing:.12em;
	text-transform:uppercase;font-weight:600;cursor:pointer;padding:0 28px!important;
	transition:background .2s,transform .2s}
.at-buy button.button:hover,.at-buy .single_add_to_cart_button:hover{
	background:var(--at-accent)!important;transform:translateY(-1px)}
.at-buy .single_add_to_cart_button.disabled,.at-buy .single_add_to_cart_button:disabled{opacity:.4;cursor:not-allowed}
.at-buy .stock.out-of-stock{color:var(--at-muted);margin:0}
.at-buy table.variations{width:100%;border:0;margin-bottom:14px}
.at-buy table.variations td{padding:6px 0;border:0}
.at-buy table.variations select{width:100%;padding:12px;background:#fff;
	border:1px solid var(--at-hair);color:var(--at-ink)}

.at-meta{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 26px;
	font-size:13px;color:var(--at-muted)}
.at-meta li{display:flex;align-items:center;gap:8px}
.at-dot{width:7px;height:7px;border-radius:50%;background:#5AA469;display:inline-block}
.at-dot.is-off{background:#C4707A}

/* =========================================================
   3. ПАНЕЛЬ
   ========================================================= */
.at-panel-wrap{max-width:var(--at-max);margin:0 auto;padding:0 var(--at-pad) clamp(44px,6vw,80px)}
.at-panel{position:relative;border:1px solid var(--at-hair);background:#fff}

.at-tabs{position:relative;display:flex;flex-wrap:wrap;
	border-bottom:1px solid var(--at-hair);background:var(--at-paper)}
.at-tabs button{flex:1 1 auto;appearance:none;background:none;border:0;cursor:pointer;
	font-family:inherit;padding:20px 24px 18px;text-align:left;color:var(--at-muted);transition:color .25s}
.at-tabs button i{font-style:normal;display:block;font-size:10.5px;letter-spacing:.14em;
	color:var(--at-accent);opacity:0;transform:translateY(3px);
	transition:opacity .25s,transform .25s;margin-bottom:4px;min-height:14px}
.at-tabs button b{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.at-tabs button:hover{color:var(--at-deep)}
.at-tabs button[aria-selected="true"]{color:var(--at-deep);background:#fff}
.at-tabs button[aria-selected="true"] i{opacity:1;transform:none}
.at-tabs button:focus-visible{outline:2px solid var(--at-accent);outline-offset:-2px}
.at-ink{position:absolute;left:0;top:0;height:2px;width:0;background:var(--at-deep);
	pointer-events:none;
	transition:transform .38s cubic-bezier(.65,0,.35,1),width .38s cubic-bezier(.65,0,.35,1)}

.at-panel__body{padding:clamp(24px,3.4vw,44px)}
.at-pane[hidden]{display:none}
.at-pane{animation:at-rise .4s cubic-bezier(.2,.7,.3,1) both}
@keyframes at-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.at-txt{margin:0 0 12px;color:#3A4E52;font-size:15.5px;line-height:1.75;max-width:66ch}
.at-txt:last-child{margin-bottom:0}
.at-hint{margin:18px 0 0;font-size:13px;color:var(--at-muted);max-width:60ch}

/* ---- цінність ---- */
.at-seg{display:inline-flex;border:1px solid var(--at-hair);margin-bottom:26px;overflow:hidden}
.at-seg button{appearance:none;border:0;background:none;font-family:inherit;cursor:pointer;
	padding:10px 18px;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;
	color:var(--at-muted);transition:background .25s,color .25s}
.at-seg button[aria-pressed="true"]{background:var(--at-deep);color:#fff}

.at-nutri{list-style:none;margin:0;padding:0}
.at-nutri li{position:relative;display:grid;grid-template-columns:1fr auto;align-items:baseline;
	gap:16px;padding:14px 0 12px;border-bottom:1px solid var(--at-hair)}
.at-nutri li:last-child{border-bottom:0}
.at-nutri li::after{content:"";position:absolute;left:0;bottom:-1px;height:1px;
	background:var(--at-accent);width:var(--w,0);transition:width .7s cubic-bezier(.2,.7,.3,1)}
.at-n{color:#3A4E52;font-size:15px}
.at-n small{display:block;color:var(--at-muted);font-size:12px}
.at-v{font-weight:600;color:var(--at-deep);font-variant-numeric:tabular-nums;
	font-size:16px;white-space:nowrap;transition:opacity .25s}

.at-weights{display:flex;gap:12px;margin-top:22px}
.at-weights div{flex:1;border:1px solid var(--at-hair);padding:16px 18px;transition:border-color .25s}
.at-weights div:hover{border-color:var(--at-deep)}
.at-weights b{display:block;font-size:24px;color:var(--at-deep);
	font-variant-numeric:tabular-nums;line-height:1.2}
.at-weights span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--at-muted)}

/* ---- склад ---- */
.at-ings{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.at-ings li{border:1px solid var(--at-hair);padding:7px 14px;font-size:14px;color:#3A4E52;
	border-radius:999px;transition:background .2s,border-color .2s,color .2s}
.at-ings li:hover{background:var(--at-mist);border-color:transparent;color:var(--at-deep)}

/* ---- приготування ---- */
.at-cook{display:grid;grid-template-columns:1fr 220px;gap:clamp(24px,4vw,48px);align-items:start}
.at-cook--nowatch{grid-template-columns:1fr}
.at-track{list-style:none;margin:0;padding:0;position:relative}
.at-track::before{content:"";position:absolute;left:9px;top:10px;bottom:10px;width:1px;background:var(--at-hair)}
.at-track li{position:relative;padding:0 0 20px 38px;font-size:15px;color:#3A4E52}
.at-track li:last-child{padding-bottom:0}
.at-track li::before{content:"";position:absolute;left:4px;top:7px;width:11px;height:11px;
	border-radius:50%;background:#fff;border:1px solid var(--at-deep);transition:background .3s,transform .3s}
.at-track li:hover::before{background:var(--at-accent);border-color:var(--at-accent);transform:scale(1.25)}
.at-track em{display:block;font-style:normal;font-size:11px;letter-spacing:.12em;
	color:var(--at-muted);margin-top:3px}

.at-timer{border:1px solid var(--at-hair);padding:22px;text-align:center}
.at-timer p{margin:0 0 14px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--at-muted)}
.at-dial{position:relative;width:132px;height:132px;margin:0 auto 16px}
.at-dial svg{transform:rotate(-90deg);display:block}
.at-dial circle{fill:none;stroke-width:3}
.at-dial__bg{stroke:var(--at-mist)}
.at-dial__fg{stroke:var(--at-accent);stroke-linecap:round;transition:stroke-dashoffset .3s linear}
.at-clock{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
	font-size:28px;color:var(--at-deep);font-variant-numeric:tabular-nums;font-weight:500}
.at-timer button{width:100%;appearance:none;border:1px solid var(--at-deep);background:#fff;
	color:var(--at-deep);font-family:inherit;font-size:11.5px;letter-spacing:.14em;
	text-transform:uppercase;font-weight:600;padding:13px;cursor:pointer;
	transition:background .25s,color .25s}
.at-timer button:hover{background:var(--at-deep);color:#fff}
.at-timer .at-timer__rs{border:0;color:var(--at-muted);padding:10px;font-weight:400;letter-spacing:.1em}
.at-timer .at-timer__rs:hover{background:none;color:var(--at-deep)}
.at-timer.is-done .at-dial__fg{stroke:var(--at-deep)}
.at-timer.is-done .at-clock{color:var(--at-accent);font-size:22px;letter-spacing:.02em}

/* ---- зберігання ---- */
.at-facts{display:flex;margin-bottom:22px;border:1px solid var(--at-hair)}
.at-facts div{flex:1;padding:18px 20px;border-left:1px solid var(--at-hair)}
.at-facts div:first-child{border-left:0}
.at-facts b{display:block;font-size:22px;color:var(--at-deep);
	font-variant-numeric:tabular-nums;line-height:1.2}
.at-facts span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--at-muted)}

/* =========================================================
   4. ВИРОБНИК
   ========================================================= */
.at-producer{max-width:var(--at-max);margin:0 auto;padding:0 var(--at-pad) clamp(40px,5vw,72px)}
.at-producer__in{border-top:1px solid var(--at-hair);padding-top:clamp(26px,3vw,38px);
	display:flex;flex-wrap:wrap;gap:clamp(24px,4vw,64px);align-items:flex-start;justify-content:space-between}
.at-producer__list{margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));
	gap:16px 40px;flex:1 1 520px}
.at-producer__list div{display:flex;flex-direction:column;gap:2px}
.at-producer__list dt{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--at-muted)}
.at-producer__list dd{margin:0;font-size:14px;color:var(--at-ink)}
.at-producer__tu{margin:0;font-size:14px;color:var(--at-deep);
	border-left:2px solid var(--at-accent);padding-left:16px}
.at-producer__tu span{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;
	color:var(--at-muted);margin-bottom:4px}

/* =========================================================
   5. СХОЖІ СТРАВИ
   ========================================================= */
.at-related{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
	background:var(--at-paper);padding:clamp(44px,6vw,84px) var(--at-pad)}
.at-related__in{max-width:var(--at-max);margin:0 auto}
.at-h2{font-size:clamp(26px,3.2vw,38px);line-height:1.15;letter-spacing:-.01em;
	color:var(--at-deep);font-weight:600;margin:0 0 clamp(24px,3vw,38px);text-transform:none}
.at-related__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:clamp(16px,2vw,28px)}
.at-rel{display:block;text-decoration:none;color:inherit;background:#fff;
	border:1px solid var(--at-hair);padding:14px;transition:transform .25s,box-shadow .25s}
.at-rel:hover{transform:translateY(-3px);box-shadow:0 18px 40px -28px rgba(30,74,84,.6)}
.at-rel__img{display:block;aspect-ratio:1/1;overflow:hidden;background:var(--at-mist);margin-bottom:14px}
.at-rel__img img{width:100%;height:100%;object-fit:cover;display:block}
.at-rel__name{display:block;font-size:16px;color:var(--at-deep);margin-bottom:4px;line-height:1.35}
.at-rel__price{display:block;font-size:14px;color:var(--at-muted)}

/* =========================================================
   6. АДАПТИВ
   ========================================================= */
@media (max-width:1024px){
	.at-product{--at-band:240px}
	.at-hero__grid{gap:32px}
}

@media (max-width:900px){
	/* смуга лише під меню */
	.at-product{--at-band:132px}
	.at-hero__grid{grid-template-columns:1fr;gap:26px}

	/* фото повністю, без обрізання */
	.at-media__frame{aspect-ratio:auto;max-height:none;padding:0}
	.at-media__img{height:auto;max-height:62vh;padding:0}

	.at-title{font-size:clamp(26px,7vw,34px)}

	/* характеристики — в одну колонку */
	.at-chips{grid-template-columns:1fr;margin-bottom:24px}
	.at-chip:nth-child(-n+2){border-top:1px solid var(--at-hair)}
	.at-chip:first-child{border-top:0}
}

@media (max-width:820px){
	.at-tabs button{flex:1 1 50%;padding:16px 18px}
	.at-cook{grid-template-columns:1fr}
	.at-timer{max-width:280px;margin:0 auto}
	.at-weights{flex-direction:column}
	.at-facts{flex-direction:column}
	.at-facts div{border-left:0;border-top:1px solid var(--at-hair)}
	.at-facts div:first-child{border-top:0}
}

@media (max-width:560px){
	.at-buy button.button,.at-buy .single_add_to_cart_button{flex:1 1 100%}
	.at-nutri li{gap:12px}
	.at-v{font-size:15px}
	.at-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.at-rel__name{font-size:14px}
	.at-seg{width:100%}
	.at-seg button{flex:1}
	.at-h2{font-size:26px}
}

@media (prefers-reduced-motion:reduce){
	.at-product *{transition:none!important;animation:none!important}
}
