:root{--ink:#1d2430;--muted:#777;--paper:#fff;--soft:#f5f4f1;--line:#e7e3dc;--primary:#543683;--accent:#543683;--gold:#d4af37}
*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.container{width:min(1180px,92%);margin:auto}
.topbar{height:30px;background:var(--accent);color:#fff;font-size:11px;display:flex;justify-content:space-between;align-items:center;padding:0 4%}.topbar span{opacity:.9}
.site-header{background:#fff;border-bottom:1px solid var(--line)}.header-main{height:74px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:10px;min-width:185px}.brand img{width:150px;height:50px;max-width:150px;display:block;object-fit:cover;border-radius:0}.brand-mark{font-size:28px;font-weight:700;color:var(--primary)}.brand b{font-family:Georgia,serif;letter-spacing:1px}.brand small{display:block;font-size:8px;letter-spacing:3px;color:var(--accent)}.menu-toggle{display:none;border:0;background:none;font-size:22px}.search{display:flex;flex:1;border:1px solid var(--line);height:38px}.search input{border:0;outline:0;padding:0 14px;flex:1}.search button{width:45px;border:0;background:var(--accent);color:#fff}.desktop-actions{display:flex;align-items:center;gap:20px;font-size:13px}.badge{background:var(--gold);color:#fff;border-radius:20px;padding:2px 6px;font-size:10px}.nav{display:flex;height:46px;align-items:center;gap:27px;font-size:11px;letter-spacing:.5px}.nav a:first-child{background:var(--accent);color:#fff;padding:16px 22px;margin-left:0}.nav a:hover,.text-link:hover{color:var(--accent)}
.toast-wrap{position:fixed;right:20px;top:100px;z-index:100}.toast{background:#1d2430;color:#fff;padding:13px 18px;margin:8px;border-radius:6px;box-shadow:0 8px 30px #0002;font-size:13px}.toast.success{background:#386641}.toast.error{background:#9b2226}
.hero{display:grid;grid-template-columns:2fr 1fr;gap:12px;margin-top:24px}.hero-main{min-height:360px;background:#f2f0ec;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.hero-copy{padding:55px 50px;align-self:center}.eyebrow,.hero-copy .eyebrow{font-size:10px;color:var(--accent);letter-spacing:1.5px}.hero h1{font:42px Georgia,serif;margin:12px 0}.hero p{color:#666;max-width:390px;line-height:1.6}.hero-art{display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#e8e6e0,#fff)}.bottle{position:relative;width:130px;height:190px;border-radius:50% 50% 43% 43%;background:linear-gradient(90deg,#0a316e,#2f72ce,#09275b);box-shadow:inset 10px 0 15px #fff4,0 20px 40px #0003}.bottle:before{content:"";position:absolute;width:56px;height:25px;left:37px;top:-23px;border-radius:8px;background:#d6b77b;box-shadow:0 -10px 0 #c6a76c}.bottle span{position:absolute;inset:45px 25px auto;text-align:center;border:2px solid #d5b86e;border-radius:50%;padding:25px 0;color:#e8ce8b;font:34px Georgia}.bottle-amber{background:linear-gradient(90deg,#2b0d06,#6b2d15,#24100b);width:105px;height:155px}.hero-side{display:grid;gap:12px}.mini-banner{padding:32px;background:#f1efeb;display:flex;flex-direction:column;justify-content:center;gap:10px}.mini-banner.dark{background:#f7f4ef}.mini-banner span{font-size:10px;color:var(--accent)}.mini-banner b{font:22px Georgia,serif}.mini-banner a{font-size:10px;letter-spacing:1px;margin-top:8px}
.section{padding:58px 0}.section-title{text-align:center;margin-bottom:30px}.section-title span{font-size:9px;color:var(--accent);letter-spacing:2px}.section-title h2{font:23px Georgia,serif;margin:7px 0}.product-grid{display:grid;gap:18px}.product-grid.four{grid-template-columns:repeat(4,1fr)}.product-grid.three{grid-template-columns:repeat(3,1fr)}.product-card{border:1px solid #eee;background:#fff;transition:.2s}.product-card:hover{box-shadow:0 10px 35px #0000000c;transform:translateY(-2px)}.product-image{height:260px;background:#f7f6f3;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain}.tag{position:absolute;left:9px;top:9px;background:var(--accent);color:#fff;border-radius:20px;padding:4px 8px;font-size:8px}.product-info{padding:14px}.rating{font-size:10px;letter-spacing:1px;color:var(--gold)}.rating small{color:#777;letter-spacing:0}.product-name{display:block;font:15px Georgia,serif;margin:8px 0 4px}.category-name{font-size:9px;color:#888}.price{font-size:13px;margin:9px 0}.price del,.big-price del{color:#aaa;font-size:11px;margin-right:5px}.add-btn{width:100%;background:#fff;border:1px solid var(--accent);padding:9px;font-size:9px;letter-spacing:1px;cursor:pointer}.add-btn:hover{background:var(--accent);color:#fff}.placeholder-bottle{width:70px;height:135px;border-radius:45% 45% 35% 35%;background:linear-gradient(90deg,#18252d,#73a6a2,#162a2c);position:relative;box-shadow:0 20px 30px #0002}.placeholder-bottle:before{content:"";position:absolute;left:25px;top:-25px;width:20px;height:27px;background:#bbb}.placeholder-bottle.large{transform:scale(1.5)}.placeholder-bottle.small{transform:scale(.55)}
.promo{display:grid;grid-template-columns:1fr 180px 1fr;gap:20px;align-items:center;background:#f4f1ec;padding:35px;margin-bottom:55px}.promo h2{font:27px Georgia,serif;margin:10px 0}.promo p{font-size:12px;color:#777;line-height:1.6}.promo a,.collection a{font-size:9px;letter-spacing:1px}.promo-bottle{display:flex;justify-content:center}.collection{min-height:230px;background:linear-gradient(90deg,#eee9df,#f8f7f4);display:flex;align-items:center;justify-content:center;text-align:center;margin-bottom:20px}.collection h2{font:28px Georgia,serif;margin:8px}.collection p{color:#777}.btn{display:inline-block;border:0;background:var(--primary);color:#fff;padding:13px 22px;font-size:10px;letter-spacing:1.2px;cursor:pointer}.btn:hover{opacity:.9}.btn.light{background:var(--accent)}.full{width:100%;text-align:center}.pill-tabs{display:flex;justify-content:center;gap:8px;margin-bottom:25px}.pill-tabs a{font-size:9px;padding:9px 18px;border-radius:20px;background:#f1f1ef}.pill-tabs a.active,.pill-tabs a:hover{background:#111;color:#fff}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-img{height:150px;background:#eee;margin-bottom:15px}.n1{background:linear-gradient(135deg,#e8e2d9,#a88e75)}.n2{background:linear-gradient(135deg,#ecebe4,#59615c)}.n3{background:linear-gradient(135deg,#ded7c9,#8b8068)}.news-grid b{font:16px Georgia,serif}.news-grid p{font-size:11px;color:#777;line-height:1.6}
.page-head{background:#f5f2ed;padding:50px 0;text-align:center}.page-head span{font-size:9px;color:var(--accent);letter-spacing:2px}.page-head h1{font:38px Georgia,serif;margin:10px}.page-head p{color:#777}.shop-layout{display:grid;grid-template-columns:190px 1fr;gap:35px;padding:45px 0}.filters{display:flex;flex-direction:column;gap:8px}.filters b{font:18px Georgia,serif;margin-bottom:10px}.filters a{font-size:12px;color:#777;padding:7px 0}.filters a.active{color:var(--accent);font-weight:bold}.shop-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:11px;color:#777}.shop-toolbar select{border:1px solid var(--line);padding:9px 14px;background:#fff}
.detail{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:70px 0}.detail-image{min-height:470px;background:#f6f4f0;display:flex;align-items:center;justify-content:center}.detail-image img{width:100%;height:100%;max-height:500px;object-fit:contain}.detail-copy{align-self:center}.detail-copy h1{font:44px Georgia,serif;margin:10px 0 15px}.big-price{font-size:23px;margin:22px 0}.detail-copy p{color:#666;line-height:1.8}.stock{font-size:11px!important;color:var(--accent)!important}
.cart-layout,.checkout-layout,.message-layout{display:grid;grid-template-columns:1.7fr .8fr;gap:35px;padding:50px 0}.cart-item{display:grid;grid-template-columns:85px 1fr auto auto;gap:18px;align-items:center;border-bottom:1px solid var(--line);padding:15px 0}.cart-thumb{height:80px;background:#f6f4f0;display:flex;align-items:center;justify-content:center}.cart-thumb img{width:100%;height:100%;object-fit:contain}.cart-meta{display:flex;flex-direction:column;gap:4px}.cart-meta b{font:17px Georgia,serif}.cart-meta span{font-size:10px;color:#888}.cart-meta strong{font-size:12px}.qty{display:flex;gap:4px}.qty input{width:55px;padding:8px;border:1px solid var(--line)}.qty button,.remove{border:1px solid var(--line);background:#fff;padding:8px;cursor:pointer}.remove{font-size:20px}.summary{background:#f5f2ed;padding:25px;height:max-content}.summary h2{font:22px Georgia,serif}.summary>div{display:flex;justify-content:space-between;border-bottom:1px solid #ddd;padding:12px 0;font-size:12px}.summary p{font-size:11px;color:#777;line-height:1.6}.empty-card,.success{padding:80px 0;text-align:center}.empty-card{border:1px solid var(--line)}.success{max-width:700px}.success-icon{margin:auto;width:55px;height:55px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:25px}.success h1{font:38px Georgia,serif}.success p{color:#777;line-height:1.7}.order-summary{margin:30px auto;padding:20px;background:#f5f2ed;text-align:left;max-width:500px}.order-summary>div{display:flex;justify-content:space-between;padding:9px}.whatsapp{background:#2d6a4f}
.form-card{background:#f7f5f1;padding:28px}.form-card h2{font:22px Georgia,serif}.form-card p{margin:16px 0}.form-card label{display:block;font-size:11px;margin-bottom:6px}.form-card input,.form-card textarea,.admin-form input,.admin-form textarea,.admin-form select{width:100%;border:1px solid var(--line);padding:11px;background:#fff}.message-layout{grid-template-columns:.8fr 1.2fr}.thread h2{font:22px Georgia,serif}.message{border-bottom:1px solid var(--line);padding:18px 0}.message small{display:block;color:#888;font-size:9px}.message b{display:block;margin:5px 0}.message p{font-size:12px;line-height:1.6}.reply{background:#f4f1ec;padding:12px;margin-top:10px}.auth-page,.admin-auth{min-height:70vh;display:grid;place-items:center;background:#f6f3ee;padding:50px 0}.auth-card{width:min(430px,90%);background:#fff;padding:38px;box-shadow:0 20px 60px #00000010}.auth-card h1{font:34px Georgia,serif}.auth-card p{font-size:12px;color:#777;line-height:1.7}.auth-card input{width:100%;padding:12px;border:1px solid var(--line)}.helpline{margin-top:20px;padding:12px;background:#f5f2ed;font-size:11px}
.chat-fab{position:fixed;right:22px;bottom:22px;width:50px;height:50px;border-radius:50%;border:0;background:var(--primary);color:#fff;z-index:50;box-shadow:0 8px 25px #0003;cursor:pointer}.chatbox{display:none;position:fixed;right:22px;bottom:82px;width:330px;height:440px;background:#fff;border:1px solid var(--line);box-shadow:0 20px 60px #0002;z-index:49}.chat-head{background:var(--primary);color:#fff;padding:15px}.chat-head button{float:right;border:0;background:none;color:#fff;font-size:18px}.chatlog{height:340px;overflow:auto;padding:12px;background:#faf9f7}.bot,.user{padding:9px 11px;border-radius:10px;margin:7px 0;font-size:11px;line-height:1.5}.bot{background:#eee9df}.user{background:var(--primary);color:#fff;margin-left:40px}.chat-form{display:flex;border-top:1px solid var(--line)}.chat-form input{flex:1;border:0;padding:12px;outline:0}.chat-form button{border:0;background:var(--accent);color:#fff;padding:0 15px}
footer{background:#f7f5f1;margin-top:50px;padding-top:45px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding-bottom:40px}.footer-grid>div{display:flex;flex-direction:column;gap:9px;font-size:11px}.footer-logo{font:24px Georgia,serif}.footer-grid p{color:#777}.footer-grid a{color:#777}.copyright{text-align:center;border-top:1px solid #e3dfd7;padding:18px;color:#999;font-size:9px}
.admin-shell{display:grid;grid-template-columns:230px 1fr;min-height:80vh}.admin-side{background:var(--primary);color:#fff;padding:28px 18px;display:flex;flex-direction:column;gap:5px}.admin-logo{font:20px Georgia,serif;padding:0 10px 25px}.admin-logo small{display:block;font:8px Arial;letter-spacing:2px;color:var(--gold);margin-top:4px}.admin-side a{padding:11px 10px;font-size:11px;color:#ddd;border-radius:4px}.admin-side a:hover{background:#fff1;color:#fff}.admin-content{padding:30px 35px;background:#faf9f7}.admin-top{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px;font-size:10px;color:#888}.admin-title{display:flex;justify-content:space-between;align-items:end;margin:35px 0 20px}.admin-title span{font-size:9px;color:var(--accent);letter-spacing:2px}.admin-title h1{font:32px Georgia,serif;margin:5px 0}.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.stats div{background:#fff;border:1px solid var(--line);padding:20px}.stats b{display:block;font:28px Georgia,serif}.stats span{font-size:9px;color:#888}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.admin-panel{background:#fff;border:1px solid var(--line);padding:20px;margin-top:18px}.admin-panel h2{font:19px Georgia,serif;margin-top:0}.admin-row{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #eee;font-size:11px}.admin-row small{display:block;color:#999;margin-top:4px}.admin-alert{padding:12px;background:#e8f3ea;margin-top:15px;font-size:11px}.helpline-panel{background:#f2eadc}.notice{padding:12px;background:#f8f6f1;margin:8px 0;font-size:11px}.admin-search{display:flex;gap:8px;margin-bottom:15px}.admin-search input{flex:1;padding:11px;border:1px solid var(--line)}.admin-search button,.status-form button{padding:10px 14px;border:0;background:var(--primary);color:#fff}.table-wrap{background:#fff;border:1px solid var(--line);overflow:auto}table{width:100%;border-collapse:collapse;font-size:11px}th,td{text-align:left;padding:13px;border-bottom:1px solid #eee;white-space:nowrap}td small{display:block;color:#999;margin-top:4px}.inline{display:inline}.inline button{border:0;background:none;color:#9b2226;cursor:pointer}.admin-form{background:#fff;border:1px solid var(--line);padding:25px;max-width:760px}.admin-form p{margin:0 0 15px}.admin-form label{display:block;font-size:10px;margin-bottom:6px}.admin-message{background:#fff;border:1px solid var(--line);padding:20px;margin:12px 0}.admin-message>div:first-child{display:flex;justify-content:space-between}.admin-message span{font-size:10px;color:#888}.admin-message p{font-size:12px;line-height:1.6}.admin-message textarea{width:100%;border:1px solid var(--line);padding:10px;margin:10px 0}.cart-admin-item{font-size:11px;padding:7px 0;color:#555}.status-form{display:flex;gap:8px;align-items:center;margin-top:12px}.status-form select{padding:8px;border:1px solid var(--line)}.status-form span{font-size:9px;color:#386641}
.desktop-actions{margin-left:auto}.search{order:3;width:100%;flex-basis:100%}.header-main{height:auto;padding:14px 0;flex-wrap:wrap}.brand{min-width:auto}.nav{display:none;flex-direction:column;height:auto;align-items:stretch;padding:10px 0}.nav.open{display:flex}.nav a:first-child{margin:0}.hero{grid-template-columns:1fr}.hero-main{min-height:300px}.product-grid.four,.product-grid.three{grid-template-columns:repeat(2,1fr)}.promo{grid-template-columns:1fr;text-align:center}.news-grid{grid-template-columns:1fr}.shop-layout,.cart-layout,.checkout-layout,.message-layout,.detail{grid-template-columns:1fr}.filters{flex-direction:row;overflow:auto}.admin-shell{grid-template-columns:1fr}.admin-side{position:static;display:grid;grid-template-columns:repeat(2,1fr)}.admin-content{padding:20px}.stats{grid-template-columns:repeat(2,1fr)}.admin-grid{grid-template-columns:1fr}.cart-item{grid-template-columns:65px 1fr auto}.cart-item>.remove{grid-column:3}.qty{grid-column:2}.footer-grid{grid-template-columns:1fr 1fr}}
.product-grid.four,.product-grid.three{grid-template-columns:1fr}.hero-main{grid-template-columns:1fr}.hero-art{display:none}.hero-copy{padding:40px 25px}.hero h1{font-size:34px}.desktop-actions a:not(:first-child){display:none}.detail-copy h1{font-size:35px}.stats{grid-template-columns:1fr}.admin-side{grid-template-columns:1fr}.chatbox{right:10px;bottom:75px;width:calc(100% - 20px)}}

.hero-art img,.promo-photo img,.collection>img,.news-img{width:100%;height:100%;object-fit:cover;display:block}.photo-banner{position:relative;min-height:150px;background:#eee;overflow:hidden}.photo-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.photo-banner>div{position:absolute;inset:auto 0 0;padding:18px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.72))}.photo-banner a{display:block;margin-top:7px;color:#fff}.contact-section{padding:70px 0}.contact-form{max-width:760px;margin:auto;background:#fff;padding:28px;border:1px solid #e8e4dc;border-radius:18px;box-shadow:0 12px 40px rgba(0,0,0,.06)}.contact-form label{display:block;font-weight:600;margin-bottom:16px}.contact-form input,.contact-form textarea{width:100%;padding:13px;margin-top:7px;border:1px solid #ddd;border-radius:10px;font:inherit}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.photo-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.admin-photo-card{background:#fff;border:1px solid #e7e2d8;border-radius:14px;overflow:hidden}.admin-photo-card img{width:100%;height:190px;object-fit:cover}.admin-photo-card>div{padding:16px}.admin-photo-card h3{margin:6px 0}.inline-actions{display:flex;gap:14px;margin-top:14px}.inline-actions form{display:inline}.danger-link{background:none;border:0;padding:0;color:#a33;cursor:pointer;font:inherit}}

/* Admin logo cropper: fixed 3:1 rectangle matching the customer header logo slot. */
.logo-cropper{margin-top:18px;padding:20px;background:#faf9f7;border:1px solid var(--line)}
.logo-cropper h3{font:18px Georgia,serif;margin:0 0 8px}
.logo-cropper-note{font-size:10px;color:#888;line-height:1.5;margin-bottom:14px}
.logo-file{display:block;width:100%;padding:10px;border:1px dashed #cfc9bd;background:#fff;margin-bottom:15px}
.logo-crop-stage{position:relative;width:min(600px,100%);aspect-ratio:3/1;overflow:hidden;background:#eee9df;border:2px solid var(--accent);margin:auto;touch-action:none;user-select:none}
.logo-crop-stage::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.65);pointer-events:none}
.logo-crop-image{position:absolute;max-width:none;max-height:none;cursor:grab;transform-origin:center center;user-select:none;-webkit-user-drag:none}
.logo-crop-image.dragging{cursor:grabbing}
.logo-crop-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:15px}
.logo-crop-controls label{font-size:10px!important;margin:0!important}
.logo-crop-controls input[type=range]{width:220px}
.logo-crop-preview{margin-top:18px;text-align:center}
.logo-crop-preview span{display:block;font-size:9px;color:#888;margin-bottom:7px}
.logo-preview-box{width:150px;height:50px;margin:auto;border:1px solid var(--line);background:#fff;overflow:hidden}
.logo-preview-box img{width:100%;height:100%;object-fit:cover;display:block}
.logo-crop-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}
.logo-crop-actions button{border:0;cursor:pointer}
.logo-current{width:150px;height:50px;object-fit:cover;border:1px solid var(--line);display:block;background:#fff}
.logo-crop-stage{width:100%}}


/* =========================================================
   Lyntora Perfumes — Universal Responsive Layout
   Optimized for phones, tablets, laptops, desktops and
   extra-wide displays. Fluid sizing avoids horizontal scroll.
   ========================================================= */

html {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%;
}

body {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: hidden;
}

img, video, iframe, canvas, svg {
  max-width: 100%;
}

button, input, select, textarea {
  max-width: 100%;
  box-sizing: border-box;
}

.container {
  width: min(1180px, calc(100% - 32px));
  max-width: 1180px;
  min-width: 0;
}

.header-main,
.nav,
.hero,
.hero-main,
.product-grid,
.shop-layout,
.cart-layout,
.checkout-layout,
.message-layout,
.detail,
.admin-shell,
.admin-content,
.admin-grid,
.form-grid,
.footer-grid,
.promo,
.news-grid {
  min-width: 0;
}

.product-grid {
  display: grid;
  gap: clamp(12px, 2vw, 22px);
}

.product-card,
.product-info,
.detail-copy,
.cart-item,
.summary,
.admin-card,
.admin-form,
.auth-card,
.contact-form,
.message,
.collection,
.promo > *,
.news-card {
  min-width: 0;
  max-width: 100%;
}

.product-card h2,
.product-card h3,
.product-card p,
.detail-copy h1,
.detail-copy p,
.cart-item,
table {
  overflow-wrap: anywhere;
}

.product-image {
  height: clamp(180px, 24vw, 260px);
}

.detail-image {
  min-height: clamp(280px, 45vw, 470px);
}

.chatbox {
  max-width: calc(100vw - 24px);
  max-height: calc(100dvh - 100px);
}

table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  white-space: nowrap;
}

.admin-content {
  overflow-x: hidden;
}

.admin-form,
.contact-form {
  width: 100%;
  box-sizing: border-box;
}

.logo-crop-stage {
  max-width: 100%;
}

/* Tablets / small laptops */


/* Phones and portrait tablets */


/* Small phones */


/* Very small phones */


/* Landscape phones */


/* Prevent accidental fixed-width overflow from form controls/cards. */
@supports (width: 100dvw) {
  .container {
    max-width: min(1180px, calc(100dvw - 32px));
  }
}


/* =========================================================


/* =========================================================
   UNIVERSAL RESPONSIVE SYSTEM
   Desktop is the master layout.
   Nothing important is hidden on smaller screens.
   ========================================================= */

html,
body {
    width: 100%;
    max-width: 100%;
    margin: 0;
    overflow-x: hidden;
}

* {
    box-sizing: border-box;
}

img,
video,
iframe {
    max-width: 100%;
}

.container {
    width: min(1180px, calc(100% - 32px));
    max-width: 1180px;
    min-width: 0;
    margin-left: auto;
    margin-right: auto;
}

/* Header */
.header-main {
    width: 100%;
    min-width: 0;
}

.brand,
.search,
.desktop-actions {
    min-width: 0;
}

.search input {
    width: 100%;
    min-width: 0;
}

/* HERO - always visible */
.hero {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr);
    gap: 12px;
}

.hero-main {
    width: 100%;
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(180px, 1fr);
    min-height: clamp(300px, 32vw, 360px);
    overflow: hidden;
}

.hero-copy {
    min-width: 0;
    padding: clamp(24px, 4vw, 55px) clamp(20px, 4vw, 50px);
}

.hero h1 {
    font-size: clamp(30px, 3.5vw, 42px);
    line-height: 1.1;
}

.hero p {
    max-width: 100%;
}

.hero-art {
    display: flex !important;
    min-width: 0;
    overflow: hidden;
}

.hero-art img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.bottle {
    max-width: 40%;
}

.hero-side {
    min-width: 0;
}

.mini-banner {
    min-width: 0;
}

/* Product grids - content always visible */
.product-grid {
    width: 100%;
    min-width: 0;
}

.product-grid.four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.product-grid.three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.product-card,
.product-card * {
    min-width: 0;
}

.product-card img {
    max-width: 100%;
}

/* Product/detail */
.detail {
    width: 100%;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.detail-image {
    min-width: 0;
    min-height: clamp(320px, 40vw, 470px);
}

.detail-image img {
    max-width: 100%;
}

/* Promo/news/collections */
.promo,
.news-grid,
.collection-grid,
.shop-layout {
    min-width: 0;
}

.promo > *,
.news-grid > *,
.collection-grid > *,
.shop-layout > * {
    min-width: 0;
}

/* Cart / checkout / messages */
.cart-layout,
.checkout-layout,
.message-layout {
    width: 100%;
    min-width: 0;
    grid-template-columns: minmax(0, 1.7fr) minmax(220px, .8fr);
}

.cart-item {
    min-width: 0;
}

.cart-meta {
    min-width: 0;
}

.cart-meta b,
.cart-meta span {
    overflow-wrap: anywhere;
}

.summary {
    min-width: 0;
}

/* Forms */
.form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contact-form {
    width: 100%;
    max-width: 760px;
}

.contact-form input,
.contact-form textarea,
button,
select {
    max-width: 100%;
}

/* Tables */
.table-wrap,
.table-responsive {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
}

/* =========================================================
   TABLET
   Keep ALL CONTENT. Only reduce columns when necessary.
   ========================================================= */

@media (max-width: 1024px) {

    .container {
        width: calc(100% - 28px);
    }

    .hero {
        grid-template-columns: minmax(0, 1.6fr) minmax(220px, 1fr);
    }

    .hero-main {
        grid-template-columns: minmax(0, 1fr) minmax(150px, .85fr);
    }

    .hero-copy {
        padding: 30px 28px;
    }

    .product-grid.four {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .product-grid.three {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .detail {
        gap: 28px;
    }

    .cart-layout,
    .checkout-layout,
    .message-layout {
        gap: 22px;
    }
}

/* =========================================================
   MOBILE
   Nothing hidden. Hero remains complete.
   ========================================================= */

@media (max-width: 700px) {

    .container {
        width: calc(100% - 20px);
    }

    .hero {
        grid-template-columns: minmax(0, 1fr);
    }

    .hero-main {
        grid-template-columns: minmax(0, 1fr) minmax(120px, .7fr);
        min-height: 270px;
    }

    .hero-copy {
        padding: 24px 20px;
    }

    .hero h1 {
        font-size: clamp(26px, 7vw, 34px);
    }

    .hero p {
        font-size: 13px;
    }

    .hero-art {
        display: flex !important;
    }

    .hero-side {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .mini-banner {
        padding: 20px;
    }

    .product-grid.four,
    .product-grid.three {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .detail {
        grid-template-columns: minmax(0, 1fr);
    }

    .cart-layout,
    .checkout-layout,
    .message-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .form-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* =========================================================
   SMALL PHONE
   Keep all content visible.
   ========================================================= */

@media (max-width: 420px) {

    .container {
        width: calc(100% - 14px);
    }

    .hero-main {
        grid-template-columns: minmax(0, 1fr) minmax(95px, .58fr);
        min-height: 235px;
    }

    .hero-copy {
        padding: 18px 15px;
    }

    .hero h1 {
        font-size: 25px;
    }

    .hero p {
        font-size: 11px;
        line-height: 1.45;
    }

    .hero-art {
        min-width: 95px;
    }

    .product-grid.four,
    .product-grid.three {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hero-side {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mini-banner {
        padding: 14px;
    }

    .footer-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Never allow accidental horizontal page overflow */
@supports (width: 100dvw) {
    html,
    body {
        width: 100dvw;
        max-width: 100dvw;
    }
}

/* =========================================================
   LYNTORA ADMIN PRODUCT EDITOR
   ========================================================= */

.product-editor-title {
  align-items: flex-start;
  margin-bottom: 28px;
}

.product-editor-title h1 {
  margin: 5px 0 8px;
}

.product-editor-title p {
  margin: 0;
  color: #777;
  font-size: 14px;
}

.product-editor-form {
  max-width: 1000px;
}

.product-form-card {
  background: #fff;
  border: 1px solid #e8e4ea;
  border-radius: 16px;
  padding: 30px;
  box-shadow: 0 8px 30px rgba(40, 20, 55, .06);
}

.product-form-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 20px;
  margin-bottom: 25px;
  border-bottom: 1px solid #eee;
}

.product-form-heading span {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--primary, #522d7a);
}

.product-form-heading h2 {
  margin: 5px 0 0;
  font-size: 22px;
}

.product-editor-form p {
  margin: 0 0 20px;
}

.product-editor-form label {
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 700;
  color: #29232e;
}

.product-editor-form input[type="text"],
.product-editor-form input[type="number"],
.product-editor-form input[type="url"],
.product-editor-form input[type="file"],
.product-editor-form select,
.product-editor-form textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #ddd6e3;
  border-radius: 10px;
  background: #fff;
  padding: 12px 14px;
  font: inherit;
  color: #29232e;
  outline: none;
  transition: border-color .2s, box-shadow .2s;
}

.product-editor-form input[type="text"],
.product-editor-form input[type="number"],
.product-editor-form input[type="url"],
.product-editor-form select {
  min-height: 46px;
}

.product-editor-form textarea {
  min-height: 150px;
  resize: vertical;
  line-height: 1.6;
}

.product-editor-form input:focus,
.product-editor-form select:focus,
.product-editor-form textarea:focus {
  border-color: var(--primary, #522d7a);
  box-shadow: 0 0 0 3px rgba(82, 45, 122, .10);
}

.product-editor-form input[type="file"] {
  padding: 10px;
  background: #faf9fb;
}

.product-editor-form input[type="checkbox"] {
  width: 18px;
  height: 18px;
  accent-color: var(--primary, #522d7a);
  vertical-align: middle;
}

.product-editor-form .helptext {
  display: block;
  margin-top: 6px;
  color: #888;
  font-size: 12px;
  line-height: 1.5;
}

.product-editor-form ul.errorlist {
  margin: 0 0 8px;
  padding: 0;
  list-style: none;
  color: #b42318;
  font-size: 13px;
}

.product-editor-form .errorlist + input,
.product-editor-form .errorlist + select,
.product-editor-form .errorlist + textarea {
  border-color: #d92d20;
}

.product-form-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  margin-top: 22px;
}

.admin-cancel-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 20px;
  border: 1px solid #ddd6e3;
  border-radius: 10px;
  color: #4b4350;
  background: #fff;
  text-decoration: none;
  font-weight: 600;
}

.admin-cancel-btn:hover {
  background: #f7f5f8;
}

.admin-save-btn {
  min-height: 46px;
  padding: 0 26px;
  border: 0;
  border-radius: 10px;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: .2px;
}

/* Better layout for common product fields */
.product-editor-form p:has(input[name*="price"]),
.product-editor-form p:has(input[name*="stock"]),
.product-editor-form p:has(input[name*="rating"]) {
  width: calc(50% - 10px);
  display: inline-block;
  vertical-align: top;
  margin-right: 16px;
}

.product-editor-form p:has(input[name*="price"]) + p:has(input[name*="price"]) {
  margin-right: 0;
}

/* Checkbox fields */
.product-editor-form p:has(input[type="checkbox"]) {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 4px 20px 10px 0;
}

.product-editor-form p:has(input[type="checkbox"]) label {
  margin: 0;
  order: 2;
}

.product-editor-form p:has(input[type="checkbox"]) input {
  order: 1;
}

/* Mobile */
@media (max-width: 700px) {
  .product-editor-title {
    flex-direction: column;
    gap: 15px;
  }

  .product-form-card {
    padding: 20px;
    border-radius: 12px;
  }

  .product-editor-form p:has(input[name*="price"]),
  .product-editor-form p:has(input[name*="stock"]),
  .product-editor-form p:has(input[name*="rating"]) {
    width: 100%;
    margin-right: 0;
  }

  .product-form-actions {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .admin-cancel-btn,
  .admin-save-btn {
    width: 100%;
  }
}


/* =========================================================
   LYNTORA PRODUCT EDITOR - CLEAN FORM
   ========================================================= */

.product-editor-form {
  max-width: 1000px;
}

.product-editor-title {
  align-items: flex-start;
  margin-bottom: 28px;
}

.product-editor-title h1 {
  margin: 5px 0 8px;
}

.product-editor-title p {
  margin: 0;
  color: #777;
  font-size: 14px;
}

.product-form-card {
  background: #fff;
  border: 1px solid #e8e4ea;
  border-radius: 16px;
  padding: 30px;
  box-shadow: 0 8px 30px rgba(40, 20, 55, .06);
}

.product-form-heading {
  padding-bottom: 20px;
  margin-bottom: 25px;
  border-bottom: 1px solid #eee;
}

.product-form-heading span,
.visibility-title {
  display: block;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--primary, #522d7a);
}

.product-form-heading h2 {
  margin: 5px 0 0;
  font-size: 22px;
}

.product-form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.product-field-full {
  grid-column: 1 / -1;
}

.product-field label {
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 700;
  color: #29232e;
}

.product-field input,
.product-field select,
.product-field textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #ddd6e3;
  border-radius: 10px;
  background: #fff;
  padding: 12px 14px;
  font: inherit;
  color: #29232e;
}

.product-field input,
.product-field select {
  min-height: 46px;
}

.product-field textarea {
  min-height: 150px;
  resize: vertical;
  line-height: 1.6;
}

.product-field input:focus,
.product-field select:focus,
.product-field textarea:focus {
  outline: none;
  border-color: var(--primary, #522d7a);
  box-shadow: 0 0 0 3px rgba(82, 45, 122, .10);
}

.product-field input[type="file"] {
  padding: 10px;
  background: #faf9fb;
}

.product-field small {
  display: block;
  margin-top: 6px;
  color: #888;
  font-size: 12px;
}

.field-error {
  margin-top: 6px;
  color: #b42318;
  font-size: 13px;
}

.product-visibility {
  margin-top: 30px;
  padding-top: 22px;
  border-top: 1px solid #eee;
}

.check-row {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 16px 25px 0 0;
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
}

.check-row input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--primary, #522d7a);
}

.product-form-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 12px;
  margin-top: 22px;
}

.admin-cancel-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 20px;
  border: 1px solid #ddd6e3;
  border-radius: 10px;
  color: #4b4350;
  background: #fff;
  text-decoration: none;
  font-weight: 600;
}

.admin-save-btn {
  min-height: 46px;
  padding: 0 26px;
  border: 0;
  border-radius: 10px;
  cursor: pointer;
  font-weight: 700;
}

@media (max-width: 700px) {
  .product-form-card {
    padding: 20px;
  }

  .product-form-grid {
    grid-template-columns: 1fr;
  }

  .product-field-full {
    grid-column: auto;
  }

  .product-form-actions {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .admin-cancel-btn,
  .admin-save-btn {
    width: 100%;
  }

  .check-row {
    display: flex;
    margin-right: 0;
  }
}
