:root{--forest:#123d32;--pine:#082f29;--cream:#fff8e9;--ivory:#fcf9f1;--paper:#fffefb;--gold:#d1a64c;--dark:#263830;--red:#ae263a;--soft:#f0e7d5;--edge:#e8dcc2;--shadow:0 14px 32px rgba(19,48,31,.15)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--ivory);color:var(--dark);line-height:1.45}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #c99536;outline-offset:2px}[hidden]{display:none!important}
.site-head{position:sticky;top:0;z-index:40;background:rgba(10,52,42,.98);border-bottom:2px solid #cfaf62;color:#fff;box-shadow:0 5px 18px #071e1a38}.head-inner{max-width:1390px;padding:12px 24px;margin:auto;display:flex;align-items:center;gap:20px}.logo{display:flex;align-items:center;gap:10px;font-size:20px;white-space:nowrap}.logo span{font-size:26px;filter:drop-shadow(0 0 6px #ffc64c)}.logo em{font-style:normal;color:#eacc81}nav{display:flex;gap:20px;margin-left:auto}nav a{font-weight:750;font-size:13px;color:#f8ecd7}nav a:hover{color:#ffe7a2}.nav-cart{background:#f9efd3;color:#224135;border-radius:100px;padding:7px 12px;font-weight:900;white-space:nowrap}.nav-toggle{display:none;border:0;background:none;color:#fff;font-size:27px}
.hero{background:radial-gradient(circle at 80% 20%,#3b7258 0,#164b3c 42%,#0c3129 85%);color:#fff;overflow:hidden;position:relative}.hero:before{content:'✦  ✧  ✶  ✦';position:absolute;inset:30px auto auto 4%;font-size:36px;color:#e7cf8945;letter-spacing:110px;pointer-events:none}.hero-inner{max-width:1360px;min-height:515px;margin:0 auto;display:grid;grid-template-columns:1fr 44%;align-items:center;gap:30px;padding:34px 30px 35px}.hero-copy{z-index:1;padding:12px 0}.eyebrow,.section-kicker{display:inline-block;font-size:11px;font-weight:850;letter-spacing:.13em;color:#eccc80}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(31px,3.6vw,53px);line-height:1.12;margin:17px 0 15px;letter-spacing:-.02em}.hero h1 span{color:#f1cf74}.hero-copy>p{font-size:16px;color:#f6f0e0;max-width:540px;margin:0 0 18px}.hero-usp{display:flex;flex-wrap:wrap;gap:9px}.hero-usp span{font-weight:720;font-size:12px;border:1px solid #e9d39165;background:#ffffff13;border-radius:40px;padding:8px 12px}.hero-price{margin:22px 0;display:flex;align-items:center;gap:25px;justify-content:space-between;max-width:515px;padding:12px 18px;background:#fffdf4;border:1px solid #e5c87c;border-radius:17px;color:var(--forest)}.hero-price small{font-size:10px;color:#987228;font-weight:900}.hero-price strong{display:block;font-size:19px}.hero-price-right{text-align:right}.hero-price-right del{display:block;font-size:13px;color:#999}.hero-price-right b{font-size:26px;color:#b52a32;white-space:nowrap}.hero-price-right span{margin-left:7px;color:#fff;background:#bd3042;border-radius:5px;padding:4px 6px;font-size:11px;font-weight:800}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.primary-btn,.secondary-btn{border-radius:13px;padding:12px 19px;font-weight:850;min-height:46px;transition:transform .17s}.primary-btn{background:linear-gradient(120deg,#c99c47,#f7d780);color:#19362b;border:1px solid #fff2c4;box-shadow:0 8px 17px #091c1699}.primary-btn span{font-size:22px}.secondary-btn{color:#fff;border:1px solid #d9bd78;background:#ffffff14}.primary-btn:hover,.secondary-btn:hover,.buy-card:hover{transform:translateY(-2px)}.hero-caption{display:block;color:#e6ddc8;margin-top:15px;font-size:11px;max-width:490px}.hero-visual{position:relative;height:100%;min-height:450px;display:flex;align-items:center;justify-content:center}.hero-visual img{width:100%;height:475px;object-fit:contain;object-position:center;border-radius:20px;filter:drop-shadow(0 13px 24px #0006)}.hero-sticker{position:absolute;top:7%;left:0;transform:rotate(-9deg);background:#f8edcf;border:2px solid #d5b35a;border-radius:12px;color:var(--forest);padding:10px 13px;text-align:center;font-size:13px;font-weight:800;box-shadow:0 7px 20px #0003}.hero-sticker strong{font-size:17px}
.trustbar{max-width:1270px;margin:-20px auto 25px;position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);background:#fffdf7;border-radius:18px;border:1px solid #ead6a1;box-shadow:var(--shadow);padding:15px;gap:8px}.trustbar>div{text-align:center;border-right:1px solid #e7ddc9;padding:5px 12px;font-size:17px}.trustbar>div:last-child{border:0}.trustbar b{display:block;font-size:14px}.trustbar small{display:block;color:#657168;font-size:11px}
.shop-shell{max-width:1330px;margin:auto;padding:0 24px 30px;display:grid;grid-template-columns:minmax(0,1fr) 354px;gap:23px;align-items:start}.shop-main{min-width:0}.shop-section{margin:20px 0 30px;scroll-margin-top:80px}.section-heading{margin-bottom:18px}.section-kicker{color:#98701b}.section-heading h2{margin:4px 0 7px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(26px,2.2vw,34px);color:#184f3b;line-height:1.2}.section-heading p{margin:0;color:#627568;font-size:14px;max-width:700px}.catalog-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.catalog-tab{border:1px solid #d0c5a9;background:#fffdf5;color:#375e4a;border-radius:100px;padding:11px 17px;font-weight:800}.catalog-tab.active{background:#1a573f;color:#fff;border-color:#1a573f;box-shadow:0 4px 13px #2b664a31}.catalog-filter{display:flex;align-items:center;gap:9px;margin:12px 0;font-size:12px;color:#68766c}.catalog-filter #catalog-counter{margin-right:auto}.catalog-filter select{background:white;border:1px solid #dcd3bb;color:#344e40;border-radius:8px;padding:8px;font-size:12px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.product-card{background:#fffdf7;border:1px solid #e0d5b9;border-radius:17px;overflow:hidden;box-shadow:0 7px 16px #25442d0e;position:relative;display:flex;flex-direction:column}.product-card.popular{outline:2px solid #d2a747;outline-offset:0}.product-visual{width:100%;position:relative;background:#edf0e5;padding:0;border:0;display:block;overflow:hidden}.product-visual img{width:100%;height:270px;object-fit:cover;object-position:center}.product-visual:focus-visible{outline-offset:-5px}.product-badge{position:absolute;top:9px;left:9px;background:#c53240;color:#fff;padding:5px 8px;font-weight:900;font-size:12px;border-radius:7px;box-shadow:0 2px 8px #0005}.product-badge.pop{background:#ecb440;color:#213f2f}.product-body{padding:12px 13px 14px;display:flex;flex-direction:column;gap:6px;flex:1}.product-title{color:#214c39;font-size:15px;line-height:1.3;margin:0;min-height:40px}.product-subtitle{font-size:11px;color:#687669}.product-pricing{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.product-pricing strong{font-size:21px;color:#b42637;white-space:nowrap}.product-pricing del{font-size:12px;color:#929b94}.product-perks{font-size:11px;color:#3b8056;font-weight:750}.buy-card{margin-top:auto;width:100%;padding:9px;border:1px solid #cdad58;border-radius:10px;background:linear-gradient(160deg,#fff4d2,#eec76f);color:#1d4230;font-size:13px;font-weight:900}.product-unavailable{opacity:.76}.product-unavailable .product-pricing strong{font-size:14px;color:#986d38}.product-unavailable .buy-card{background:#ededeb;border-color:#ddd;color:#777}.selection-note{background:#edf4e8;border:1px solid #c8d8bf;color:#536652;padding:13px 16px;border-radius:12px;margin-top:15px;font-size:12px}
.advantages,.guide{background:#fffef8;border:1px solid #e9dec5;border-radius:18px;padding:24px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.features article{background:#f3f7ee;border:1px solid #dfebd7;border-radius:15px;padding:14px}.feature-icon{font-size:27px}.features h3{font-size:15px;margin:9px 0 5px;color:var(--forest)}.features p{font-size:12px;margin:0;color:#516a5e}.photo-pair{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:16px}.photo-pair img{width:100%;height:275px;object-fit:cover;border-radius:12px}.fineprint{color:#667269;font-size:11px}.guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.guide-grid article{border:1px solid #e6decf;border-radius:12px;padding:12px;background:white}.guide-grid article.highlight{border:2px solid #d2a748;background:#fffbeb}.guide-grid b{font-size:24px;color:#1f533d;display:block}.guide-grid span{font-size:11px;font-weight:850;color:#ab7336}.guide-grid p{font-size:11.5px;color:#647368;margin:7px 0 0}
.checkout{background:#fffdf6;border:2px solid #d9b764;border-radius:20px;overflow:hidden;box-shadow:0 12px 32px #2b4f2a22;position:sticky;top:85px;scroll-margin-top:83px}.checkout-head{display:flex;align-items:center;gap:11px;background:linear-gradient(120deg,#0f513d,#1b7455);padding:16px;color:#fff}.checkout-head span{font-size:31px}.checkout-head strong{display:block;font-size:19px}.checkout-head small{display:block;color:#e4debe;font-size:11px}.checkout form{padding:17px;display:flex;flex-direction:column;gap:7px}.checkout label{font-size:12px;font-weight:800;color:#344d40;margin-top:7px}.checkout label em{color:#d72c44}.checkout input,.checkout textarea{width:100%;border:1px solid #d8d4c6;background:#fff;border-radius:10px;padding:11px 12px;font-size:14px;min-height:43px;color:#243a2e}.checkout textarea{resize:vertical;min-height:67px}.cart-head{display:flex;align-items:center;justify-content:space-between;margin-top:11px;padding:5px 0;border-bottom:1px solid #e4d7b7;font-size:13px}.cart-head span{font-size:11px;color:#a1712c;background:#f8ebc4;border-radius:30px;padding:5px 8px;font-weight:800}.cart-empty{font-size:12px;color:#8d836d;border:1px dashed #c9b992;border-radius:10px;background:#fffaf0;padding:13px;margin:5px 0}.cart-items{display:flex;flex-direction:column;gap:7px;max-height:195px;overflow-y:auto}.cart-line{display:grid;grid-template-columns:42px minmax(0,1fr);gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #eee5d2}.cart-line img{width:42px;height:53px;object-fit:cover;border-radius:7px}.cart-line-title{font-size:11px;font-weight:850}.cart-line-price{display:block;color:#b32b39;font-size:11px;font-weight:750}.cart-qty{display:flex;gap:5px;align-items:center;grid-column:2}.cart-qty button{border:1px solid #ddc89a;background:#fff;border-radius:6px;font-weight:900;width:28px;height:26px}.cart-qty strong{min-width:20px;text-align:center;font-size:12px}.cart-qty .remove{margin-left:auto;border-color:#efc4c0;color:#b62d39}.add-more{background:#fcf1ce;border:1px solid #dcba64;border-radius:10px;padding:10px;color:#365b43;font-size:12px;font-weight:850}.delivery-note{font-size:11px;color:#356548;margin:0}.totals{border-top:1px solid #e5d7bc;margin-top:7px;padding-top:10px}.totals div{display:flex;justify-content:space-between;font-size:12px;padding:4px 0}.totals strong{font-size:13px}.totals .grand{border-top:1px solid #e9d9bd;margin-top:4px;padding-top:10px;font-size:13px;font-weight:800}.grand strong{font-size:21px;color:#b52e37}.submit{background:linear-gradient(140deg,#b12c3c,#d8444b);border:1px solid #e8a269;border-radius:12px;color:#fff;font-size:17px;font-weight:900;min-height:48px;box-shadow:0 7px 15px #ae34362d}.submit:disabled{opacity:.55}.secure-note{display:block;text-align:center;font-size:10px;color:#7a7e70}.order-message{font-size:13px;border-radius:10px;margin:6px 0;padding:12px;overflow-wrap:anywhere}.order-message.ok{background:#e4f5e8;color:#225539}.order-message.error{background:#fff0f0;color:#a52930}
.last-cta{margin:0 auto 30px;max-width:1280px;padding:28px 20px;text-align:center;background:#e9efdf;border-radius:15px;border:1px solid #d8e0ca}.last-cta h2{font-family:Georgia,serif;color:#225641;font-size:26px;margin:0}.last-cta p{color:#57705e;font-size:14px}.last-cta a{display:inline-block;padding:12px 19px;background:#184d3a;color:#fff;border-radius:10px;font-weight:850}footer{background:#0c362b;color:#eee3bf;display:flex;gap:25px;justify-content:space-between;padding:27px max(24px,calc((100vw - 1270px)/2));font-size:13px}footer p{margin-bottom:0}footer small{max-width:490px;font-size:11px;align-self:end}
.product-overlay{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:15px}.overlay-shade{position:absolute;inset:0;border:0;background:#062c29ba;cursor:default}.picker-panel{position:relative;background:#fffdf5;border:2px solid #d6b36b;border-radius:22px;width:min(650px,100%);max-height:calc(100dvh - 30px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #031d1e88}.picker-handle{display:none}.picker-close{position:absolute;top:10px;right:13px;border:0;border-radius:100%;background:#f7ebde;color:#77373c;width:36px;height:36px;font-size:25px;z-index:2}.picker-header{display:flex;gap:16px;align-items:center;padding:17px 54px 15px 17px;border-bottom:1px solid #e4d5b7}.picker-header>img{height:142px;width:110px;object-fit:cover;border-radius:12px;border:1px solid #d5c29a}.picker-header small{font-size:10px;font-weight:850;letter-spacing:.03em;color:#a68b53}.picker-header h3{font-size:21px;margin:4px 0 4px;color:#1b513b;line-height:1.2}.picker-prices{display:flex;gap:8px;align-items:center}.picker-prices del{font-size:12px;color:#899388}.discount{background:#b62c40;color:#fff;font-size:12px;font-weight:900;padding:3px 7px;border-radius:6px}.picker-header strong{font-size:26px;color:#b52e37}.picker-header p{font-size:11px;color:#39804e;font-weight:850;margin:3px 0}.picker-scroll{overflow-y:auto;padding:13px 20px;min-height:0}.pick-group{margin:0 0 15px}.pick-group>b{display:block;font-size:13px;color:#355041;margin:0 0 8px}.chips{display:flex;gap:8px;flex-wrap:wrap}.chips button{border:1px solid #dacba9;background:#fff;color:#40564a;border-radius:9px;padding:10px 15px;font-size:13px;font-weight:800;min-width:71px}.chips button.selected{background:#e5f2e8;border-color:#2b8656;box-shadow:inset 0 0 0 1px #267449;color:#21593e}.chips button.disabled,.chips button:disabled{opacity:.45;border-style:dashed}.selection-price{font-size:12px;background:#f5f2e4;border-radius:9px;padding:11px;color:#59705d}.picker-bottom{padding:10px 18px 17px;border-top:1px solid #e6d7bf;background:#fffcf3}.qty-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:14px;font-weight:800}.qty-row small{font-weight:400}.stepper{display:flex;align-items:center;border:1px solid #d0aa70;border-radius:10px;overflow:hidden}.stepper button{height:37px;width:43px;border:0;background:#fff6e4;color:#954338;font-size:23px;font-weight:900}.stepper strong{min-width:40px;text-align:center}.picker-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}.picker-buttons button{border-radius:11px;padding:11px 6px;font-weight:900;min-height:47px;font-size:14px}.picker-buttons button:first-child{border:1.5px solid #b93d46;background:white;color:#b53740}.picker-buttons button:last-child{border:1px solid #be3943;background:linear-gradient(135deg,#c73e45,#ad2c38);color:white}.picker-buttons button:disabled{opacity:.5}.mini-cart{display:none}
@media(min-width:1360px){.checkout{top:88px}}@media(max-width:1090px){.shop-shell{grid-template-columns:minmax(0,1fr) 315px;gap:14px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-visual img{height:250px}.head-inner{padding-inline:13px}.logo{font-size:17px}nav{gap:12px}.hero-inner{padding:28px 18px}.hero h1{font-size:37px}}
@media(max-width:820px){html{scroll-padding-top:66px}.head-inner{padding:10px 15px}.logo{font-size:16px}.logo span{font-size:22px}.nav-toggle{display:block;margin-left:2px}.nav-cart{margin-left:auto}.site-head nav{display:none;position:absolute;top:100%;left:0;right:0;background:#0b3b2d;flex-direction:column;padding:16px 24px;border-top:1px solid #426c50;box-shadow:0 8px 14px #0004}.site-head nav.open{display:flex}.site-head nav a{padding:8px;font-size:14px}.hero-inner{display:flex;flex-direction:column-reverse;gap:0;padding:16px 16px 28px;min-height:unset}.hero-visual{width:min(100%,500px);min-height:unset;margin:0 auto}.hero-visual img{height:300px;border-radius:16px;object-fit:cover;object-position:center 32%}.hero-sticker{top:6%;left:3%;font-size:11px}.hero-copy{width:100%;text-align:center}.hero h1{font-size:clamp(29px,7.7vw,42px);margin:9px 0}.hero-copy>p{font-size:13px;margin:auto auto 12px}.hero-usp{justify-content:center}.hero-usp span{padding:6px 8px;font-size:10px}.hero-price{margin:14px auto;max-width:460px;text-align:left;padding:10px 12px}.hero-price-right b{font-size:20px}.hero-price strong{font-size:16px}.hero-price-right span{display:inline-block}.hero-actions{justify-content:center}.hero-caption{margin:10px auto 0;font-size:10px}.trustbar{margin:0 12px 19px;grid-template-columns:repeat(2,1fr);border-radius:15px;padding:8px}.trustbar>div{border:0;font-size:14px;padding:5px}.trustbar b{font-size:12px}.trustbar small{font-size:10px}.shop-shell{display:flex;flex-direction:column;padding:0 12px}.shop-main{width:100%}.shop-section{margin:12px 0 19px}.section-heading h2{font-size:25px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product-visual img{height:240px}.product-title{font-size:14px;min-height:36px}.product-body{padding:10px;gap:5px}.product-pricing strong{font-size:19px}.product-pricing del{font-size:11px}.checkout{position:relative;top:auto;width:100%;margin-bottom:24px}.checkout form{padding:17px}.features{grid-template-columns:1fr}.photo-pair img{height:245px}.guide-grid{grid-template-columns:repeat(2,1fr)}.last-cta{margin:0 12px 20px}.last-cta h2{font-size:21px}footer{flex-direction:column;gap:7px;padding:24px 16px}.mini-cart{position:fixed;z-index:38;left:11px;right:11px;bottom:calc(9px + env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #d5bc73;border-radius:13px;background:#fffdf2;box-shadow:0 5px 25px #0e372c50;padding:8px 10px}.mini-cart>div{display:flex;flex-direction:column}.mini-cart small{font-size:11px;color:#446b53}.mini-cart strong{font-size:17px;color:#b32836}.mini-cart button{background:#135a3f;color:#fff;border:0;border-radius:9px;padding:10px 12px;font-size:13px;font-weight:900}body.has-cart{padding-bottom:67px}body.picker-open{overflow:hidden}.product-overlay{align-items:flex-end;padding:0}.picker-panel{width:100%;max-height:min(88dvh,850px);border-radius:23px 23px 0 0;border-bottom:0}.picker-handle{display:block;background:#d8bea4;border-radius:20px;width:43px;height:5px;margin:8px auto 3px;flex-shrink:0}.picker-header{padding:10px 54px 10px 13px;gap:11px}.picker-header>img{height:103px;width:81px}.picker-header h3{font-size:17px}.picker-header strong{font-size:21px}.picker-header small{font-size:9px}.picker-scroll{padding:12px 15px}.pick-group{margin-bottom:12px}.chips button{font-size:12px;padding:9px 11px}.picker-bottom{padding:9px 14px calc(14px + env(safe-area-inset-bottom))}.qty-row{margin-bottom:9px}.picker-buttons button{font-size:13px}.picker-close{top:15px;right:12px}.advantages,.guide{padding:17px}.features article{padding:11px}}
@media(max-width:390px){.logo{font-size:13px}.logo span{font-size:20px}.hero-visual img{height:258px}.product-visual img{height:208px}.product-title{font-size:13px}.product-pricing strong{font-size:17px}.hero-price-right b{font-size:18px}.hero-price{gap:7px}.hero-actions{flex-direction:column}.primary-btn,.secondary-btn{width:100%;text-align:center}.picker-header>img{height:85px;width:70px}.picker-header h3{font-size:16px}.picker-header strong{font-size:18px}.picker-buttons button{font-size:12px}}
@media(max-height:640px) and (min-width:821px){.picker-header{padding:10px 54px 9px 15px}.picker-header>img{height:85px;width:65px}.pick-group{margin-bottom:9px}.chips button{padding:7px 11px}.picker-scroll{padding:8px 18px}.picker-bottom{padding:8px 16px 10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}


/* Noel 2026 gallery: image-first hero, untouched product catalog and checkout */
.hero-inner{max-width:1400px;grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:clamp(20px,3vw,48px);min-height:unset;padding:32px 28px 43px}
.hero-copy{grid-column:2;grid-row:1}
.hero-visual{grid-column:1;grid-row:1;display:block;min-height:0;height:auto;max-width:552px;width:100%;margin-inline:auto}
.hero-gallery-stage{position:relative;width:100%;aspect-ratio:3/4;border:2px solid rgba(250,218,144,.85);border-radius:22px;background:#dec9a7;overflow:hidden;box-shadow:0 18px 42px rgba(0,15,9,.37),0 0 28px rgba(255,211,117,.17)}
.hero-gallery-main{display:block;width:100%;height:100%;border:0;background:#dfcfb0;padding:0;cursor:zoom-in}
.hero-visual .hero-gallery-main img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center center;border-radius:0;filter:none;transition:opacity .18s ease}
.hero-visual .hero-sticker{top:14px;left:14px;transform:none;font-size:11px;line-height:1.18;border-radius:11px;background:rgba(255,248,225,.94);padding:8px 10px;box-shadow:0 4px 13px #33220e38;pointer-events:none}
.hero-visual .hero-sticker strong{font-size:12px}
.hero-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:46px;border:1px solid #f8ebcdaf;background:#103f33b5;color:#fff;border-radius:13px;font-size:36px;line-height:1;display:grid;place-items:center;backdrop-filter:blur(5px);box-shadow:0 3px 12px #00201455;z-index:2}
.hero-gallery-arrow.prev{left:10px}.hero-gallery-arrow.next{right:10px}
.hero-gallery-arrow:hover,.hero-gallery-arrow:focus-visible{background:#0c5139eb}
.hero-gallery-count{position:absolute;bottom:13px;left:50%;transform:translateX(-50%);border:1px solid #fff8;background:#18362ac9;color:#fffdf2;border-radius:999px;padding:5px 13px;font-size:12px;font-weight:900;letter-spacing:.08em;pointer-events:none}
.hero-gallery-zoom{position:absolute;bottom:13px;right:12px;background:#18362aa8;color:#fff;border-radius:10px;padding:3px 10px;pointer-events:none;font-size:19px}
.hero-gallery-thumbs{display:flex;gap:8px;width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#e5c078 transparent;padding:10px 2px 7px}
.hero-gallery-thumb{flex:0 0 63px;width:63px;height:75px;overflow:hidden;padding:2px;border-radius:11px;border:2px solid #ffffff63;background:#f2e8d0;opacity:.84;scroll-snap-align:start;transition:border-color .15s,opacity .15s,transform .15s}
.hero-gallery-thumb[aria-pressed="true"]{border-color:#ffe3a0;box-shadow:0 0 0 2px #f7ca65,0 3px 12px #0005;opacity:1}
.hero-gallery-thumb:hover{opacity:1;transform:translateY(-2px)}
.hero-visual .hero-gallery-thumb img{width:100%;height:100%;object-fit:cover;filter:none;border-radius:7px}
.hero-gallery-hint{margin:1px auto 0;color:#eee2c0;text-align:center;font-size:11px;letter-spacing:.01em}
.hero-lightbox{position:fixed;inset:0;z-index:130;background:rgba(3,20,17,.97);display:flex;align-items:center;justify-content:center;padding:35px 56px 24px;color:#fff}
.hero-lightbox[hidden]{display:none!important}
body.gallery-open{overflow:hidden}
.hero-lightbox-figure{margin:0;max-width:100%;text-align:center;display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:0}
.hero-lightbox-figure img{width:auto;max-width:100%;max-height:calc(100dvh - 110px);object-fit:contain;border-radius:11px;box-shadow:0 10px 40px #0006}
.hero-lightbox-figure figcaption{margin-top:8px;font-size:12px;color:#fff2d0;font-weight:700}
.hero-lightbox-close{position:absolute;z-index:2;top:calc(10px + env(safe-area-inset-top));right:16px;border:1px solid #ffffff90;background:#143b31;color:white;width:42px;height:42px;border-radius:99px;font-size:28px}
.hero-lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:52px;display:grid;place-items:center;border:1px solid #ffffff82;background:#173f34ee;color:#fff;font-size:37px;line-height:1;border-radius:12px}
.hero-lightbox-arrow.prev{left:7px}.hero-lightbox-arrow.next{right:7px}
@media(max-width:820px){
 .hero-inner{display:flex;flex-direction:column-reverse;gap:15px;padding:14px 12px 25px;min-height:unset}
 .hero-visual{width:min(100%,510px);max-width:510px;min-height:0}
 .hero-gallery-stage{border-radius:18px}
 .hero-visual .hero-gallery-main img{width:100%;height:100%;object-fit:cover;object-position:center center;border-radius:0}
 .hero-gallery-arrow{width:35px;height:40px;font-size:29px;border-radius:11px}
 .hero-gallery-arrow.prev{left:7px}.hero-gallery-arrow.next{right:7px}
 .hero-gallery-thumbs{padding:9px 3px 6px;gap:8px}
 .hero-gallery-thumb{flex-basis:58px;width:58px;height:71px}
 .hero-gallery-hint{font-size:10px}
 .hero-copy{width:100%}
 .hero-lightbox{padding:48px 10px 28px}
 .hero-lightbox-figure img{max-height:calc(100dvh - 105px)}
 .hero-lightbox-arrow{background:#163e33cb;width:34px;height:42px;font-size:29px}
}
@media(max-width:390px){
 .hero-visual .hero-gallery-main img{width:100%;height:100%}
 .hero-gallery-thumb{flex-basis:54px;width:54px;height:66px}
 .hero-gallery-arrow{width:33px;height:36px}
}
@media(prefers-reduced-motion:reduce){
 .hero-visual .hero-gallery-main img,.hero-gallery-thumb{transition:none}
}

/* 8 Noel models / fixed mobile viewport / frameless gallery controls */
html,body{width:100%;max-width:100%;overflow-x:clip}
body,main,.shop-shell,.shop-main,.hero,.product-grid{min-width:0;max-width:100%}
.hero-inner,.hero-visual{min-width:0}
.shop-shell>.shop-main,.product-grid>.product-card{min-width:0}
.hero-gallery-stage,.hero-gallery-thumbs{max-width:100%}
.hero-gallery-thumbs{touch-action:pan-x}
.hero-gallery-arrow,.hero-gallery-arrow:hover,.hero-gallery-arrow:focus-visible{
 border:0;background:transparent;box-shadow:none;backdrop-filter:none;
 border-radius:0;color:#fff;font-weight:700;text-shadow:0 2px 8px #0d291e,0 1px 2px #000
}
.hero-gallery-count{border:0;background:transparent;box-shadow:none;color:#fff;text-shadow:0 2px 8px #0c251c,0 1px 2px #000;font-weight:900;padding:0}
.hero-gallery-zoom{background:transparent;color:#fff;text-shadow:0 2px 8px #0c251c;box-shadow:none;padding:0}
.picker-prices .discount[hidden]{display:none!important}
@media(max-width:820px){
 .hero,.shop-shell,.shop-main,.hero-visual,.product-grid,.product-card,.checkout{max-width:100%}
 .hero-inner{width:100%;max-width:100%}
 .product-pricing{min-width:0}
}

/* Keep the photo itself as the focus: no decorative overlays or arrow boxes */
.hero-gallery-stage>.hero-sticker{display:none}
.hero-lightbox-arrow,.hero-lightbox-arrow:hover,.hero-lightbox-arrow:focus-visible{border:0;background:transparent;box-shadow:none;border-radius:0;text-shadow:0 2px 9px #000}


/* Video slide 1: keep existing photo gallery frame/controls; preserve entire video
   and its phone number caption near the TOP of the video (never object-fit: cover). */
.hero-gallery-stage.has-video{background:#071d17}
.hero-gallery-video{display:block;width:100%;height:100%;object-fit:contain;
  object-position:center center;background:#071d17;position:absolute;inset:0;
  border-radius:0;max-width:none;filter:none}
.hero-gallery-stage .hero-gallery-main[hidden],
.hero-gallery-stage .hero-gallery-video[hidden],
.hero-lightbox-figure img[hidden],
.hero-lightbox-figure video[hidden]{display:none!important}
.hero-gallery-thumb.is-video{position:relative}
.hero-thumb-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  color:#fff;background:rgba(7,35,27,.72);border:1px solid rgba(255,255,255,.85);
  border-radius:50%;width:29px;height:29px;display:grid;place-items:center;
  text-shadow:0 1px 3px #000;font-size:14px;padding-left:2px;pointer-events:none}
.hero-lightbox-figure video{display:block;width:auto;height:auto;max-width:100%;
  max-height:calc(100dvh - 110px);object-fit:contain;object-position:center;
  background:#061b15;border-radius:11px}
.hero-gallery-stage.has-video .hero-gallery-zoom{display:none}
@media(max-width:820px){
  .hero-gallery-video{width:100%;height:100%;object-fit:contain}
  .hero-lightbox-figure video{max-width:100%;max-height:calc(100dvh - 105px)}
}

/* New two-line intro text; keep existing hero spacing and typography. */
.hero-intro-secondary{display:block;margin-top:4px}

/* Separate the trust/benefits strip from the hero instead of visually touching it. */
.trustbar{margin-top:24px}
.noel-footer-address{font-size:13px;font-style:normal;line-height:1.6;margin-top:13px;color:#fff5df}
.noel-footer-ship{font-size:13px;font-weight:900;line-height:1.55;letter-spacing:.02em;color:#ffdc88;margin:7px 0 0}
@media(max-width:820px){
 .trustbar{margin-top:22px;margin-bottom:24px}
 .noel-footer-address{font-size:12px;margin-top:10px}
 .noel-footer-ship{font-size:12px}
}


/* 2026-11-13: desktop tree portraits shown uncropped; mobile portraits also complete. */
.photo-pair{display:flex;justify-content:center;align-items:stretch;gap:clamp(10px,2vw,20px);margin-top:18px}
.photo-pair .tree-showcase{flex:0 1 305px;max-width:46%;min-width:0;margin:0;padding:8px 8px 10px;background:#faf7ee;border:1px solid #e3d8ba;border-radius:15px;box-shadow:0 6px 16px #31432213}
.photo-pair .tree-showcase img{display:block;width:100%;height:auto;aspect-ratio:850/1133;object-fit:contain;object-position:center;background:#f1e8db;border-radius:10px}
.photo-pair figcaption{text-align:center;font-size:12px;font-weight:800;color:#295740;padding:8px 4px 0}

/* Compact order form, preserving all inputs and existing server validation. */
.shop-shell{grid-template-columns:minmax(0,1fr) 360px}
.checkout-head{padding:11px 13px;gap:9px}
.checkout-head span{font-size:24px}
.checkout-head strong{font-size:16px}
.checkout-head small{font-size:10px}
.checkout form{padding:11px 12px 12px;gap:6px}
.checkout-contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:8px;row-gap:8px}
.checkout-field{min-width:0;display:flex;flex-direction:column;gap:3px}
.checkout-field label{font-size:11px;margin:0}
.checkout-field input{min-height:39px;padding:8px 9px;font-size:12px}
.checkout-address{grid-column:1/-1}
.checkout-address input{font-size:13px}
.cart-head{margin-top:5px;padding:4px 0;font-size:12px}
.cart-head span{padding:4px 7px}
.cart-items{max-height:133px;gap:4px}
.cart-empty{padding:8px 10px;margin:2px 0;font-size:11px}
.cart-line{padding:5px 0}
.cart-line img{height:44px}
.add-more{padding:8px 10px;font-size:11px}
.delivery-note{font-size:10px;line-height:1.35}
.checkout-extra{border:1px solid #e9dec9;border-radius:9px;background:#fffcf4;overflow:hidden}
.checkout-extra summary{cursor:pointer;list-style:none;user-select:none;padding:8px 10px;font-size:11px;font-weight:750;color:#466b55}
.checkout-extra summary::-webkit-details-marker{display:none}
.checkout-extra summary:after{content:'＋';float:right;font-size:14px;font-weight:900;line-height:1}
.checkout-extra[open] summary:after{content:'−'}
.checkout-extra[open] summary{border-bottom:1px solid #eee1c9}
.checkout-extra-body{padding:3px 10px 9px}
.checkout-extra-body label{display:block;margin:5px 0;font-size:11px}
.checkout-extra-body textarea{min-height:59px;max-height:120px;font-size:12px;padding:9px}
.totals{margin-top:3px;padding-top:6px}
.totals div{padding:2px 0;font-size:11px}
.totals strong{font-size:12px}
.totals .grand{margin-top:3px;padding-top:6px;font-size:12px}
.grand strong{font-size:20px}
.submit{min-height:43px;font-size:15px}
.secure-note{font-size:9px;line-height:1.35}
@media(min-width:1100px) and (max-height:820px){
 .checkout{top:74px}
 .checkout-head{padding-block:9px}
 .checkout form{gap:4px;padding-block:9px}
 .checkout-field input{min-height:35px;padding-block:6px}
 .cart-items{max-height:108px}
}
@media(max-width:1090px){
 .shop-shell{grid-template-columns:minmax(0,1fr) 326px}
}
@media(max-width:820px){
 .shop-shell{display:flex;flex-direction:column}
 .photo-pair{gap:10px;align-items:stretch}
 .photo-pair .tree-showcase{max-width:calc(50% - 5px);flex:1 1 0;padding:5px 5px 7px;border-radius:12px}
 .photo-pair .tree-showcase img{aspect-ratio:850/1133;height:auto;width:100%;object-fit:contain}
 .photo-pair figcaption{font-size:10px;line-height:1.25;padding:6px 2px 0}
 .checkout{position:relative;top:auto;width:100%;margin-bottom:22px}
 .checkout form{padding:12px;gap:6px}
 .checkout-field input{min-height:42px;font-size:13px}
 .checkout-head strong{font-size:17px}
 .cart-items{max-height:170px}
 .submit{min-height:47px;font-size:15px}
}
@media(max-width:350px){
 .checkout-contact{grid-template-columns:1fr;row-gap:5px}
 .checkout-address{grid-column:auto}
}


/* 2026-11-13 / 8 Noel models:
   Full-height portrait photo from tree star to foot, no destructive card crop.
   Desktop 4 in a row; responsive three/two when a sidebar makes cards narrow.
   Keep the original product click target and checkout flow unchanged. */
.product-grid{
 grid-template-columns:repeat(4,minmax(0,1fr));
 gap:13px;
 align-items:stretch;
}
.product-card{
 min-width:0;
 border-radius:16px;
}
.product-visual{
 position:relative;
 display:block;
 width:100%;
 aspect-ratio:3/4;
 height:auto;
 min-height:0;
 background:#f5f0e6;
 overflow:hidden;
}
.product-visual img{
 position:absolute;
 inset:0;
 width:100%;
 height:100%;
 max-height:none;
 object-fit:contain;
 object-position:center center;
 background:#f5f0e6;
 border-radius:0;
}
.product-badge{
 z-index:1;
 top:8px;
 left:8px;
 font-size:11px;
 padding:5px 7px;
}
.product-body{
 padding:11px 11px 12px;
 gap:6px;
 min-width:0;
 min-height:174px;
}
.product-title{
 font-size:13px;
 line-height:1.34;
 min-height:2.68em;
}
.product-subtitle{
 font-size:10px;
 line-height:1.35;
 color:#67786c;
}
.product-pricing{
 margin-top:auto;
 align-items:baseline;
 gap:5px;
}
.product-pricing strong{font-size:18px}
.product-pricing del{font-size:10px}
.product-perks{font-size:10px}
.buy-card{
 margin-top:0;
 padding:9px 5px;
 font-size:11px;
 line-height:1.35;
 min-height:35px;
}
/* Leave enough width for the cards and the unchanged sticky order form. */
@media (min-width:821px) and (max-width:1319px){
 .product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
}
@media (min-width:821px) and (max-width:1040px){
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
}
@media (max-width:820px){
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .product-card{border-radius:14px}
 .product-visual{aspect-ratio:3/4;height:auto}
 .product-visual img{
  position:absolute;
  width:100%;
  height:100%;
  max-height:none;
  object-fit:contain;
  object-position:center;
 }
 .product-body{padding:9px;gap:5px;min-height:173px}
 .product-title{font-size:13px;min-height:2.6em}
 .product-subtitle{font-size:10px}
 .product-pricing strong{font-size:18px}
 .buy-card{font-size:11px;min-height:36px}
}
@media (max-width:390px){
 .product-visual{aspect-ratio:3/4;height:auto}
 .product-visual img{height:100%;object-fit:contain}
 .product-title{font-size:12px}
 .product-pricing strong{font-size:16px}
 .product-pricing del{font-size:9px}
 .product-body{min-height:171px}
}


/* PHỤ KIỆN ROYAL CITY | branded horizontal logo, approved image, desktop & mobile.
   Light ivory plaque ensures emerald lettering stays legible over dark header. */
.site-head .head-inner{gap:clamp(10px,1.3vw,18px);padding-block:7px}
.site-head a.logo.brand-royalcity{
 display:inline-flex;align-items:center;justify-content:center;
 min-width:0;flex:0 0 auto;white-space:normal;
 padding:5px 11px;border:1px solid #d8b870;border-radius:14px;
 background:linear-gradient(180deg,#fffdf4 0%,#f5edd9 100%);
 box-shadow:0 2px 13px #0e241847, inset 0 1px 0 #fff;
 text-decoration:none;
}
.site-head .brand-royalcity img{
 display:block;object-fit:contain;object-position:center;
 width:clamp(218px,24vw,318px);height:auto;max-width:100%;
 filter:none;
}
.site-head nav{margin-left:auto}
@media(max-width:1090px){
 .site-head .brand-royalcity img{width:clamp(196px,23vw,259px)}
 .site-head .head-inner{gap:10px}
}
@media(max-width:820px){
 html{scroll-padding-top:82px}
 .site-head .head-inner{gap:8px;padding:7px 10px}
 .site-head a.logo.brand-royalcity{padding:4px 6px;border-radius:10px;flex-shrink:1}
 .site-head .brand-royalcity img{width:clamp(149px,48vw,215px);max-width:100%}
 .site-head .nav-cart{margin-left:auto;padding:7px 10px}
 .site-head .nav-toggle{flex:0 0 auto;margin-left:0}
}
@media(max-width:360px){
 .site-head .brand-royalcity img{width:clamp(134px,44vw,165px)}
 .site-head .nav-cart{padding:7px}
 .site-head .head-inner{gap:5px;padding-inline:7px}
}
