/* Keep reference visual rules unchanged. These rules only aid focus visibility. */
a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:4px}
/* Only the final Hero scroll segment is pinned. Existing Tilda artwork and its
   entrance animation keep their original styles and stacking order. */
#allrecords:has(.olive-hero-pin){overflow-x:clip!important;overflow-y:visible!important}
.olive-hero-pin{position:relative;height:calc(var(--olive-hero-height,100vh) + var(--olive-flight-length,1600px))}
.olive-hero-pin>#rec850209104{position:sticky;top:0;z-index:1}
.olive-hero-pin #rec850209104 [data-elem-id="1720391091773"]{z-index:5!important}
.olive-hero-flight{position:absolute;z-index:4;width:0;height:0;pointer-events:none}
.olive-hero-flight__card{position:absolute;top:0;left:0;width:clamp(157px,17.5vw,232px);height:auto;max-width:none;filter:drop-shadow(0 20px 22px rgba(31,21,16,.3));transform:translate3d(calc(-50% + var(--flight-x,0px)),calc(-50% + var(--flight-y,0px)),0) rotate(var(--flight-rotation,0deg));transform-origin:center;backface-visibility:hidden;will-change:transform}
.olive-hero-flight__card--2{width:clamp(157px,17.1vw,227px)}
@media(max-width:767px),(prefers-reduced-motion:reduce){.olive-hero-pin{height:auto!important}.olive-hero-pin>#rec850209104{position:relative;top:auto}.olive-hero-flight{display:none}}
:root{--t-text-font:'Be Vietnam Pro',Arial,sans-serif;--t-heading-font:'Cormorant Garamond',Georgia,serif}
body,#allrecords,.t-text,.t-descr,.t-btn,.t-btnflex,.t668__title,.tn-elem[data-elem-type="text"] .tn-atom,.tn-elem[data-elem-type="button"] .tn-atom{font-family:'Be Vietnam Pro',Arial,sans-serif!important}
.tn-elem[data-elem-type="text"] .tn-atom *,.t-descr *,.t-btnflex *{font-family:inherit!important}
.t668__text{line-height:1.6!important}

/* The collection gallery replaces the former “Dấu ấn” panel below the hero. */
:root{--olive-accent:#913d39;--olive-accent-text:#f9ecd4;--olive-accent-texture:linear-gradient(rgba(83,24,22,.08),rgba(83,24,22,.08)),url('./assets/cdab9d5d1d8cf782.jpg') center/cover}
.olive-collection{position:relative;z-index:2;isolation:isolate;background:#f3ead7 url('./assets/72b7c804488ec52b.png') center top/100% 100% no-repeat;color:#292a25;padding:clamp(270px,24vw,400px) clamp(20px,4vw,58px) calc(clamp(88px,9vw,132px) + 90px);overflow:visible}
.olive-collection{--olive-card-sage:#eadbd4;--olive-card-olive:#e9d8d2}
.olive-collection__legacy-anchor{display:block;position:relative;top:-24px;height:0;visibility:hidden}
.olive-collection::before{position:absolute;z-index:-1;inset:0;content:"";pointer-events:none;background:radial-gradient(ellipse at 10% 12%,rgba(145,61,57,.045),transparent 34%),radial-gradient(ellipse at 92% 72%,rgba(142,82,70,.055),transparent 32%)}
.olive-collection__sky{position:fixed;z-index:9999;top:0;left:0;width:100vw;height:0;overflow:visible;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .6s cubic-bezier(0.16,1,0.3,1),visibility .6s}
.olive-collection__sky.is-visible{visibility:visible;opacity:1}
.olive-collection__clouds{position:absolute;height:auto;max-width:none;animation:olive-cloud-drift 34s ease-in-out infinite alternate}
.olive-collection__clouds--back{z-index:1;top:-30px;left:-31%;width:164%;opacity:.58;filter:blur(1.5px);animation-duration:43s}
.olive-collection__clouds--front{z-index:2;top:48px;left:-39%;width:178%;opacity:.97}
.olive-collection__angel{position:fixed;z-index:3;top:var(--angel-top,56vh);left:0;width:clamp(200px,24vw,460px);height:auto;opacity:0;visibility:hidden;filter:drop-shadow(0 5px 8px rgba(91,70,46,.12));transform:translate3d(var(--angel-x,-460px),var(--angel-y,0px),0) rotate(var(--angel-rot,-8deg));pointer-events:none;transition:opacity .18s,visibility .18s}
.olive-collection__angel.is-visible{opacity:.9;visibility:visible;will-change:transform,opacity}
@keyframes olive-cloud-drift{from{transform:translateX(-1.8%)}to{transform:translateX(1.8%)}}
.olive-collection__inner{position:relative;z-index:1;max-width:1480px;margin:0 auto}
.olive-collection__header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:0 0 38px}
.olive-collection__eyebrow{margin:0 0 13px;color:var(--olive-accent);font:500 10px/1.4 'Be Vietnam Pro',sans-serif;letter-spacing:.2em;text-transform:uppercase}
.olive-collection__header h2{margin:0;color:#332e28;font:400 clamp(42px,5.4vw,74px)/.98 'Cormorant Garamond',Georgia,serif;letter-spacing:-.035em}
.olive-collection__subtitle{margin:13px 0 0;color:#79776d;font:400 clamp(14px,1.3vw,17px)/1.7 'Cormorant Garamond',Georgia,serif;letter-spacing:.015em}
.olive-collection__saved{flex:none;display:flex;align-items:center;gap:8px;border:1px solid rgba(145,61,57,.38);border-radius:2px;background:transparent;color:var(--olive-accent);padding:11px 15px;font:400 11px 'Be Vietnam Pro',sans-serif;cursor:pointer;transition:background .25s,border-color .25s,color .25s}
.olive-collection__saved>span{font:24px/1 Georgia,serif}.olive-collection__saved b{font-weight:500}.olive-collection__saved:hover,.olive-collection__saved[aria-pressed="true"]{border-color:var(--olive-accent);background:var(--olive-accent-texture);color:var(--olive-accent-text)}
.olive-collection__filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 29px}
.olive-collection__filters button{border:1px solid #d8d5cb;border-radius:30px;background:transparent;color:#4a4941;padding:10px 18px;font:400 11px 'Be Vietnam Pro',sans-serif;cursor:pointer;transition:background .25s,color .25s,border-color .25s,transform .25s}
.olive-collection__filters button:hover{transform:translateY(-2px);border-color:var(--olive-accent)}.olive-collection__filters button[aria-pressed="true"]{border-color:var(--olive-accent);background:var(--olive-accent-texture);color:var(--olive-accent-text)}
.olive-collection__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px;row-gap:36px}
.olive-card{min-width:0;animation:olive-card-in .65s both;animation-delay:calc(var(--card-index)*45ms)}
@keyframes olive-card-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.olive-card[hidden]{display:none}
.olive-card__media{position:relative;isolation:isolate;display:grid;place-items:center;aspect-ratio:1.02;border-radius:4px;overflow:hidden;background:var(--card-tone,#e7e7dc);transition:box-shadow .35s,transform .35s}
.olive-card__open{position:absolute;z-index:2;inset:0;display:block;color:transparent}
.olive-card__open:focus-visible{outline:3px solid var(--olive-accent);outline-offset:-5px}
.olive-card__title-row h3 a{color:#781d22!important;text-decoration:none;transition:color .2s}.olive-card__title-row h3 a:hover{color:#4d0f12!important}
.olive-card__media::after{position:absolute;z-index:-1;inset:10%;border:1px solid rgba(255,255,255,.36);content:"";pointer-events:none}
.olive-card:hover .olive-card__media{box-shadow:0 18px 38px rgba(47,45,37,.11);transform:translateY(-3px)}
.olive-card__badge{position:absolute;z-index:3;top:11px;left:11px;max-width:calc(100% - 60px);overflow:hidden;border-radius:1px;background:var(--olive-accent-texture);color:var(--olive-accent-text);padding:5px 8px;font:500 8px/1.2 'Be Vietnam Pro',sans-serif;letter-spacing:.12em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}
.olive-card__favorite{position:absolute;z-index:4;top:10px;right:10px;display:grid;place-items:center;width:31px;height:31px;border:0;border-radius:50%;background:rgba(250,249,244,.94);color:var(--olive-accent);cursor:pointer;transition:transform .2s,background .2s,color .2s}
.olive-card__favorite:hover{transform:scale(1.08)}.olive-card__favorite svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.olive-card__favorite[aria-pressed="true"]{background:var(--olive-accent-texture);color:#fff}.olive-card__favorite[aria-pressed="true"] svg{fill:currentColor}
.olive-card__art{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.olive-card[data-category*="nation"] .olive-card__art,
.olive-card[data-category*="washi"] .olive-card__art{transform:scale(0.74);transform-origin:center center}
.olive-card__art img{position:absolute;bottom:8%;height:81%;width:43%;object-fit:contain;filter:drop-shadow(0 13px 11px rgba(35,34,29,.2));transition:transform .5s cubic-bezier(.2,.8,.2,1),filter .4s}
.olive-card__hero{right:16%;z-index:1;transform:rotate(5deg) translateY(4px)}
.olive-card__phone{left:16%;z-index:2;transform:rotate(-4deg) translateY(-2px)}
.olive-card:hover .olive-card__hero{transform:rotate(2deg) translate(3px,-5px)}.olive-card:hover .olive-card__phone{transform:rotate(-1deg) translate(-4px,-8px);filter:drop-shadow(0 20px 14px rgba(35,34,29,.22))}
.olive-card__details{padding:14px 1px 0}
.olive-card__title-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.olive-card__title-row h3{margin:0;color:#781d22!important;font:500 clamp(18px,1.6vw,22px)/1.05 'Cormorant Garamond',Georgia,serif}
.olive-card__title-row span{flex:none;color:#8c4e50!important;font:400 7px/1.5 'Be Vietnam Pro',sans-serif;letter-spacing:.13em;text-align:right;text-transform:uppercase}
.olive-card__details p{margin:9px 0 0;color:#5e383a!important;font:400 11px/1.7 'Be Vietnam Pro',sans-serif}
.olive-collection__empty{margin:30px 0;color:#77756d;font:400 13px/1.7 'Be Vietnam Pro',sans-serif}
.olive-pricing{position:relative;isolation:isolate;overflow:hidden;background:#f3ead7 url('./assets/72b7c804488ec52b.png') center/cover;color:#302a26;padding:clamp(84px,9vw,136px) clamp(20px,5vw,72px) 72px}
.olive-pricing::before{position:absolute;z-index:-1;inset:0;content:"";pointer-events:none;background:linear-gradient(135deg,rgba(251,247,235,.72),rgba(242,229,208,.78)),url('./assets/72b7c804488ec52b.png') center/cover;opacity:.9}
.olive-pricing__inner{max-width:1480px;margin:0 auto}
.olive-pricing__header{text-align:center;margin:0 auto clamp(44px,6vw,82px)}
.olive-pricing__eyebrow{margin:0 0 24px;color:#8c5145;font:500 11px/1.4 'Be Vietnam Pro',sans-serif;letter-spacing:.24em;text-transform:uppercase}
.olive-pricing__header h2{margin:0;color:#873a36;font:400 clamp(48px,6vw,82px)/.98 'Cormorant Garamond',Georgia,serif;letter-spacing:-.035em}
.olive-pricing__header>p:last-child{margin:22px 0 0;color:#77736b;font:400 clamp(15px,1.5vw,20px)/1.6 'Be Vietnam Pro',sans-serif}
.olive-pricing__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:clamp(18px,2vw,30px)}
.olive-price-card{position:relative;display:flex;flex-direction:column;min-width:0;border:1px solid rgba(136,78,66,.2);border-radius:15px;background:linear-gradient(rgba(255,253,247,.88),rgba(255,253,247,.88)),url('./assets/72b7c804488ec52b.png') center/cover;padding:clamp(25px,2.5vw,40px);box-shadow:0 12px 36px rgba(79,51,39,.055);animation:olive-card-in .65s both;animation-delay:calc(var(--price-index)*90ms)}
.olive-price-card--featured{border-color:rgba(142,61,55,.5);background:linear-gradient(rgba(246,232,216,.9),rgba(246,232,216,.9)),url('./assets/72b7c804488ec52b.png') center/cover;box-shadow:0 18px 48px rgba(115,55,46,.11);transform:translateY(-10px)}
.olive-price-card__ribbon{position:absolute;top:-14px;left:50%;transform:translateX(-50%);border-radius:30px;background:var(--olive-accent-texture);color:#fff7e9;padding:9px 20px;font:500 9px/1 'Be Vietnam Pro',sans-serif;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.olive-price-card__eyebrow{margin:2px 0 38px;color:#8a6654;font:500 10px/1.4 'Be Vietnam Pro',sans-serif;letter-spacing:.17em;text-transform:uppercase}
.olive-price-card h3{margin:0;color:#873a36;font:400 clamp(32px,3vw,46px)/1.05 'Cormorant Garamond',Georgia,serif}
.olive-price-card__description{min-height:3.4em;margin:17px 0 0;color:#77736b;font:400 14px/1.7 'Be Vietnam Pro',sans-serif}
.olive-price-card__price{margin:27px 0 0;color:#873a36;font:500 clamp(29px,3vw,42px)/1.1 'Cormorant Garamond',Georgia,serif;letter-spacing:.015em}
.olive-price-card__price span{font-size:.64em}
.olive-price-card__unit{margin:5px 0 22px;color:#898378;font:400 11px/1.5 'Be Vietnam Pro',sans-serif}
.olive-price-card ul{list-style:none;margin:0 0 30px;padding:0;border-top:1px solid rgba(132,92,71,.19)}
.olive-price-card li{display:grid;grid-template-columns:18px 1fr;align-items:start;gap:11px;border-bottom:1px solid rgba(132,92,71,.16);padding:13px 0;color:#39332f;font:400 13px/1.6 'Be Vietnam Pro',sans-serif}
.olive-price-card li svg{width:17px;height:17px;margin-top:1px;fill:none;stroke:#923f39;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.olive-price-card__cta{display:flex;align-items:center;justify-content:center;gap:13px;width:100%;margin-top:auto;border:1px solid #873a36;border-radius:4px;background:var(--olive-accent-texture);color:#fff6e7;padding:17px 14px;font:500 10px/1.3 'Be Vietnam Pro',sans-serif;letter-spacing:.11em;text-align:center;text-decoration:none;text-transform:uppercase;transition:transform .25s,box-shadow .25s,filter .25s}
.olive-price-card__cta:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(116,48,43,.18);filter:saturate(1.08)}
.olive-price-card__cta span{font-size:17px;line-height:1}
.olive-pricing__note{margin:32px 0 0;color:#827b70;font:400 12px/1.6 'Be Vietnam Pro',sans-serif;text-align:center}
#rec850209107 .tn-elem[data-elem-id="1720393349562"] .tn-atom__img{transform:scale(.252);transform-origin:bottom left}
#rec850209107 .tn-elem[data-elem-id="1720394149267"] .tn-atom__img{transform:scale(.252);transform-origin:bottom right}
/* Keep the compact footer navigation labels on one line; Vietnamese labels
   otherwise wrap into the fixed-height Tilda text boxes and collide below. */
#rec850209130 .tn-elem[data-elem-type="text"] .tn-atom,
#rec850209130 .tn-elem[data-elem-type="button"] .tn-atom{white-space:nowrap!important;line-height:1.35!important}
.olive-comparison{position:relative;z-index:1;isolation:isolate;overflow:hidden;background:#f3ead7 url('./assets/72b7c804488ec52b.png') center/cover;color:#332e28;padding:clamp(68px,8vw,112px) clamp(18px,5vw,72px)}
/* Keep the fixed texture behind content; only the torn-paper edge bridges sections. */
#rec850209097 .tn-elem[data-elem-id="1720401590107"]{z-index:0!important}
#rec850209120 .t396__artboard{z-index:auto!important}
#rec850209120 .tn-elem{z-index:0!important}
#rec850209120 .tn-elem[data-elem-id="1720711394793"]{z-index:2!important}
#rec850209120 .tn-elem[data-elem-id="1770639637959"],#rec850209120 .tn-elem[data-elem-id="1720708348035"],#rec850209120 .tn-elem[data-elem-id="1720708421589"],#rec850209120 .tn-elem[data-elem-id="1736797624411"],#rec850209120 .tn-elem[data-elem-id="1720708462066"],#rec850209120 .tn-elem[data-elem-id="1720710461593"],#rec850209120 .tn-elem[data-elem-id="1720709132096"]{z-index:3!important}
.olive-comparison::before{position:absolute;z-index:-1;inset:0;content:"";pointer-events:none;background:radial-gradient(ellipse at 88% 12%,rgba(145,61,57,.075),transparent 36%),linear-gradient(rgba(249,236,212,.45),rgba(249,236,212,.45))}
.olive-comparison__inner{max-width:1480px;margin:0 auto}
.olive-comparison__eyebrow{margin:0 0 12px;color:#8d2b2a;font:500 10px/1.4 'Be Vietnam Pro',sans-serif;letter-spacing:.2em;text-transform:uppercase}
.olive-comparison h2{margin:0 0 clamp(24px,3vw,40px);color:#873a36;font:400 clamp(38px,5vw,64px)/1.05 'Cormorant Garamond',Georgia,serif;letter-spacing:-.025em}
.olive-comparison__scroll{overflow-x:auto;border:1px solid rgba(135,58,54,.2);background:linear-gradient(rgba(255,251,241,.74),rgba(255,251,241,.74)),url('./assets/72b7c804488ec52b.png') center/cover;box-shadow:0 14px 38px rgba(90,54,39,.07);scrollbar-color:#9b5750 rgba(135,58,54,.1);scrollbar-width:thin}
.olive-comparison__scroll:focus-visible{outline:2px solid #8d2b2a;outline-offset:4px}
.olive-comparison table{width:100%;min-width:760px;border-collapse:collapse;text-align:left}
.olive-comparison th,.olive-comparison td{padding:17px clamp(14px,2vw,28px);border-bottom:1px solid rgba(115,91,65,.2);font:400 14px/1.55 'Be Vietnam Pro',sans-serif;vertical-align:middle}
.olive-comparison thead th{color:#754c35;font-weight:500;letter-spacing:.015em}
.olive-comparison thead th:first-child{width:37%}
.olive-comparison tbody th{color:#302a26;font-weight:450}
.olive-comparison tbody td{color:#5e5145}
.olive-comparison thead .is-featured,.olive-comparison tbody td:nth-child(3){background:linear-gradient(rgba(120,35,34,.84),rgba(120,35,34,.84)),url('./assets/cdab9d5d1d8cf782.jpg') center/cover;color:#fff4df}
.olive-comparison thead .is-signature,.olive-comparison tbody td:nth-child(4){background:linear-gradient(rgba(120,35,34,.9),rgba(120,35,34,.9)),url('./assets/cdab9d5d1d8cf782.jpg') center/cover;color:#fff4df}
.olive-comparison tbody tr:last-child th,.olive-comparison tbody tr:last-child td{border-bottom:0}
.olive-comparison__check{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:rgba(141,43,42,.09);color:#8d2b2a;font-size:17px;line-height:1}
.olive-comparison tbody td:nth-child(n+3) .olive-comparison__check{background:rgba(255,244,223,.18);color:#fff4df}
@media(max-width:640px){.olive-comparison{padding:64px 18px 72px}.olive-comparison__eyebrow{font-size:9px}.olive-comparison h2{font-size:43px}.olive-comparison th,.olive-comparison td{padding:14px 16px;font-size:12px}.olive-comparison table{min-width:700px}}
@media(max-width:1100px){.olive-collection__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 20px}}
@media(max-width:780px){.olive-collection{padding:72px 22px 176px}.olive-collection__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 16px}.olive-collection__header{align-items:flex-start}.olive-card__title-row{align-items:flex-start;flex-direction:column;gap:4px}.olive-card__title-row span{text-align:left}}
@media(max-width:900px){.olive-pricing__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}.olive-price-card--featured{transform:none}.olive-price-card:last-child{grid-column:1/-1;max-width:calc(50% - 13px);width:100%;justify-self:center}}
@media(max-width:600px){.olive-pricing{padding:76px 17px 60px}.olive-pricing__header{margin-bottom:44px}.olive-pricing__header h2{font-size:52px}.olive-pricing__header>p:last-child{max-width:32ch;margin:17px auto 0}.olive-pricing__grid{grid-template-columns:1fr;gap:28px}.olive-price-card{padding:26px 22px}.olive-price-card:last-child{grid-column:auto;max-width:none}.olive-price-card__eyebrow{margin-bottom:27px}.olive-price-card__description{min-height:0}.olive-price-card__price{margin-top:21px}}
@media(prefers-reduced-motion:reduce){.olive-price-card{animation:none}.olive-price-card__cta{transition:none}}
@media(max-width:520px){.olive-collection{padding:62px 17px 166px}.olive-collection__header{gap:16px;flex-direction:column;margin-bottom:26px}.olive-collection__header h2{font-size:49px}.olive-collection__saved{align-self:flex-start}.olive-collection__filters{gap:7px;margin-bottom:22px}.olive-collection__filters button{padding:9px 12px;font-size:10px}.olive-collection__grid{grid-template-columns:1fr;gap:24px}.olive-card__media{aspect-ratio:1.08}.olive-card__details{padding-top:12px}.olive-card__title-row{align-items:baseline;flex-direction:row}.olive-card__title-row h3{font-size:25px}.olive-card__title-row span{text-align:right}.olive-card__details p{font-size:12px}}
@media(max-width:600px){.olive-collection{padding-top:230px}.olive-collection__clouds--back{top:-16px;left:-44%;width:190%}.olive-collection__clouds--front{top:47px;left:-56%;width:212%}.olive-collection__angel{width:clamp(120px,38vw,190px)}}
@media(prefers-reduced-motion:reduce){.olive-card{animation:none}.olive-card__media,.olive-card__art img,.olive-collection__filters button,.olive-card__favorite{transition:none}.olive-collection__clouds{animation:none}.olive-collection__angel{display:none}}

/* Local product detail pages, adapted to the invitation collection's paper-and-oxblood palette. */
.olive-product-page{--product-ink:#342c28;--product-muted:#817a71;--product-red:#913d39;--product-line:rgba(90,56,48,.18);margin:0;padding-bottom:90px;background:#f7f3e9 url('./assets/72b7c804488ec52b.png') center/cover fixed;color:var(--product-ink);font-family:'Be Vietnam Pro',Arial,sans-serif}
.olive-product__top{height:66px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(20px,4vw,64px);background:rgba(250,247,238,.9);border-bottom:1px solid var(--product-line)}
.olive-product__top a{color:inherit;text-decoration:none}.olive-product__back,.olive-product__contact{font-size:12px}.olive-product__contact{justify-self:end}.olive-product__brand{font:500 9px 'Be Vietnam Pro',sans-serif;letter-spacing:.28em;color:#786d5a!important}
.olive-product__breadcrumb{display:flex;gap:13px;align-items:center;padding:18px clamp(20px,4vw,64px);font-size:12px;color:var(--product-muted)}.olive-product__breadcrumb a{color:inherit;text-decoration:none}
.olive-product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(400px,.95fr);align-items:start;max-width:1680px;margin:0 auto}
.olive-product__gallery{min-height:calc(100vh - 170px);padding:40px clamp(22px,5vw,80px);background:rgba(235,232,220,.82)}
.olive-product__gallery-inner{position:sticky;top:30px;display:flex;min-height:calc(100vh - 220px);flex-direction:column;align-items:center;justify-content:center;gap:24px}
.olive-product__phone{position:relative;width:min(290px,44vh);aspect-ratio:9/19.5;height:auto;max-height:none;padding:6px;border:5px solid #292725;border-radius:42px;background:#292725;box-shadow:0 22px 50px rgba(55,47,37,.25);overflow:hidden;margin:0 auto}
.olive-product__phone img,.olive-product__phone iframe{position:absolute;inset:0;width:100%;height:100%;display:block;border:0;border-radius:32px;object-fit:cover;background:transparent}.olive-product__phone [hidden]{display:none!important}
.olive-product__phone-island{position:absolute;z-index:2;top:11px;left:50%;width:76px;height:15px;transform:translateX(-50%);border-radius:12px;background:#171716}
.olive-product__gallery-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px}.olive-product__gallery-actions [role=group]{display:flex;gap:7px}
.olive-product__gallery-actions button{min-height:42px;border:1px solid var(--product-line);background:rgba(255,253,247,.75);color:#5b514b;padding:10px 14px;font:500 10px 'Be Vietnam Pro',sans-serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.olive-product__gallery-actions button.is-active,.olive-product__gallery-actions button:hover{border-color:var(--product-red);background:var(--olive-accent-texture);color:#fff5e4}
.olive-product__counter{padding:0 4px;color:var(--product-muted);font-size:12px}
.olive-product__purchase{padding:48px clamp(24px,5vw,82px) 55px;background:rgba(255,253,247,.68)}
.olive-product__badge{display:inline-flex;align-items:center;border:1px solid var(--product-line);border-radius:24px;padding:9px 14px;color:#746447;text-decoration:none;font-size:11px}
.olive-product__eyebrow{margin:23px 0 9px;color:var(--product-muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.olive-product__title{display:flex;align-items:center;justify-content:space-between;gap:20px}.olive-product__title h1{margin:0;font:400 clamp(34px,3vw,48px)/1.1 'Cormorant Garamond',Georgia,serif;color:#332e28}
.olive-product__title button{width:40px;height:40px;border:0;background:transparent;color:var(--product-red);font-size:27px;cursor:pointer}.olive-product__title button[aria-pressed=true]{color:var(--product-red)}
.olive-product__description{margin:12px 0 23px;color:var(--product-muted);font:400 15px/1.7 'Be Vietnam Pro',sans-serif}
.olive-product__price{margin:0 0 32px;color:var(--product-ink);font:500 24px 'Cormorant Garamond',Georgia,serif}
.olive-product__plans h2{display:flex;align-items:center;justify-content:space-between;margin:0 0 7px;color:var(--product-red);font:400 25px 'Cormorant Garamond',Georgia,serif}
.olive-product__plan-intro{margin:0 0 17px;color:var(--product-muted);font:italic 13px/1.6 'Cormorant Garamond',Georgia,serif}
.olive-product__plan-list{display:grid;gap:9px}.olive-product__plan{position:relative;display:grid;grid-template-columns:18px 16px minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px 15px;border:1px solid rgba(105,70,58,.19);border-radius:13px;background:rgba(255,255,255,.48);cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}
.olive-product__plan.is-selected{border-color:var(--product-red);background:rgba(255,250,239,.83);box-shadow:0 4px 18px rgba(121,55,49,.08)}
.olive-product__plan input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.olive-product__plan:focus-within{outline:2px solid var(--product-red);outline-offset:2px}
.olive-product__radio{width:17px;height:17px;border:2px solid #a29277;border-radius:50%;background:#fffaf0}.olive-product__plan.is-selected .olive-product__radio{border-color:var(--product-red);box-shadow:inset 0 0 0 4px #fffaf0;background:var(--product-red)}
.olive-product__swatch{width:14px;height:14px;border-radius:50%;border:1px solid rgba(70,50,40,.18)}.olive-product__swatch--rose{background:#c98787}.olive-product__swatch--gold{background:#d5ae61}.olive-product__swatch--pearl{background:#e7dfd7}
.olive-product__plan-copy{display:grid;gap:6px}.olive-product__plan-copy strong{font-size:13px;font-weight:500}.olive-product__plan-copy small{color:var(--product-muted);font:400 11px/1.6 'Be Vietnam Pro',sans-serif}.olive-product__plan-price{font-size:13px;white-space:nowrap}
.olive-product__note{margin:16px 0 0;color:var(--product-muted);font:italic 12px/1.7 'Cormorant Garamond',Georgia,serif}
.olive-product__features{display:grid;gap:10px;margin:22px 0;padding:18px 0 0;border-top:1px solid var(--product-line);list-style:none}.olive-product__features li{position:relative;padding-left:20px;color:#675f56;font-size:12px;line-height:1.65}.olive-product__features li::before{position:absolute;left:0;color:var(--product-red);content:'✓'}
.olive-product__story-link,.olive-product__story>a{color:var(--product-red);font-size:12px;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px}
.olive-product__story{grid-column:1/-1;display:grid;justify-items:center;gap:16px;padding:74px 24px 105px;text-align:center;background:linear-gradient(rgba(248,242,230,.85),rgba(248,242,230,.85)),url('./assets/72b7c804488ec52b.png') center/cover}
.olive-product__story .olive-product__eyebrow{margin:0;color:var(--product-red)}.olive-product__story h2{max-width:700px;margin:0;color:#492f2a;font:400 clamp(34px,5vw,58px)/1.1 'Cormorant Garamond',Georgia,serif}.olive-product__story>p{max-width:600px;color:var(--product-muted);font-size:13px;line-height:1.8}
.olive-product__bar{position:fixed;z-index:20;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px max(24px,calc((100vw - 1420px)/2));border-top:1px solid var(--product-line);background:rgba(250,247,239,.96);backdrop-filter:blur(12px)}
.olive-product__bar>div{display:grid;gap:3px}.olive-product__bar small{color:var(--product-muted);font-size:9px;letter-spacing:.1em;text-transform:uppercase}.olive-product__bar strong{font-size:13px;font-weight:500}
.olive-product__bar>a{min-width:min(350px,45vw);padding:15px 24px;background:var(--olive-accent-texture);color:#fff6e4;text-align:center;text-decoration:none;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.olive-product__dialog{position:fixed;max-width:min(90vw,850px);max-height:90vh;padding:12px;border:1px solid var(--product-line);border-radius:8px;background:#f7f0e3}.olive-product__dialog::backdrop{background:rgba(29,23,20,.82);backdrop-filter:blur(5px)}.olive-product__dialog iframe{display:block;width:min(90vw,850px);height:min(84vh,920px);border:0}.olive-product__dialog button{position:absolute;z-index:2;top:15px;right:15px;width:40px;height:40px;border:0;border-radius:50%;background:#fff9;color:#302a26;font-size:27px;cursor:pointer}
@keyframes olive-product-view-in{from{opacity:0;transform:translateY(10px) scale(.985);filter:blur(2px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
.olive-product__phone [data-preview-image]:not([hidden]),.olive-product__phone iframe[data-live-frame]:not([hidden]){animation:olive-product-view-in .48s cubic-bezier(.22,.68,0,1) both}
.olive-product__gallery-actions button{transition:color .22s,border-color .22s,background-color .22s,transform .22s}
.olive-product__gallery-actions button:hover{transform:translateY(-1px)}
.olive-product__gallery-actions button:focus-visible,.olive-product__dialog button:focus-visible{outline:2px solid var(--product-red);outline-offset:3px}
.olive-product__dialog[open]{animation:olive-product-dialog-in .28s cubic-bezier(.22,.68,0,1) both}
.olive-product__dialog[open]::backdrop{animation:olive-product-backdrop-in .28s ease both}
@keyframes olive-product-dialog-in{from{opacity:0;transform:translateY(12px) scale(.975)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes olive-product-backdrop-in{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.olive-product__phone [data-preview-image]:not([hidden]),.olive-product__phone iframe[data-live-frame]:not([hidden]),.olive-product__dialog[open],.olive-product__dialog[open]::backdrop{animation:none}.olive-product__gallery-actions button{transition:none}.olive-product__gallery-actions button:hover{transform:none}}
@media(max-width:820px){.olive-product{grid-template-columns:1fr}.olive-product__gallery{min-height:auto;padding:35px 18px 30px}.olive-product__gallery-inner{position:static;min-height:0}.olive-product__phone{width:min(240px,62vw);aspect-ratio:9/19.5;height:auto;max-height:none;margin:0 auto}.olive-product__purchase{padding:36px 24px 48px}.olive-product__story{padding:55px 22px 80px}}
@media(max-width:520px){.olive-product-page{padding-bottom:84px;background-attachment:scroll}.olive-product__top{height:56px;padding:0 16px}.olive-product__brand{font-size:8px;letter-spacing:.16em}.olive-product__back,.olive-product__contact{font-size:10px}.olive-product__breadcrumb{padding:14px 18px;font-size:11px}.olive-product__gallery{padding:25px 14px}.olive-product__gallery-actions{gap:5px}.olive-product__gallery-actions button{min-height:38px;padding:8px 10px;font-size:8px}.olive-product__phone{width:min(220px,64vw);aspect-ratio:9/19.5;height:auto;max-height:none;border-radius:36px;margin:0 auto}.olive-product__phone img,.olive-product__phone iframe{border-radius:28px}.olive-product__purchase{padding:28px 18px 38px}.olive-product__badge{font-size:9px}.olive-product__title h1{font-size:37px}.olive-product__description{font-size:13px}.olive-product__plan{grid-template-columns:16px 13px minmax(0,1fr);gap:9px;padding:13px 10px}.olive-product__plan-price{grid-column:3;font-size:12px}.olive-product__plan-copy small{font-size:10px}.olive-product__bar{padding:9px 12px;gap:8px}.olive-product__bar strong{font-size:11px}.olive-product__bar>a{min-width:48%;padding:14px 8px;font-size:9px}}


/* Language Switcher Toggle Button */
.olive-lang-toggle {
  position: relative;
  margin: 40px auto 30px;
  width: fit-content;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 100;
  background: rgba(120, 29, 34, 0.94);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(249, 236, 212, 0.38);
  box-shadow: 0 10px 36px rgba(40, 10, 12, 0.32), 0 2px 8px rgba(0, 0, 0, 0.15);
  border-radius: 40px;
  padding: 4px 6px;
  transition: transform 0.3s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.3s ease;
}
.olive-lang-toggle:hover {
  transform: translateY(-2px) scale(1.02);
  box-shadow: 0 14px 42px rgba(40, 10, 12, 0.4);
}
.olive-lang-toggle__inner {
  display: flex;
  align-items: center;
  gap: 3px;
}
.olive-lang-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 15px;
  border-radius: 30px;
  color: #f9ecd4 !important;
  text-decoration: none !important;
  font: 500 12px/1.2 'Be Vietnam Pro', sans-serif;
  letter-spacing: 0.03em;
  transition: background 0.25s ease, color 0.25s ease, transform 0.2s ease;
  cursor: pointer;
}
.olive-lang-btn:hover {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.18);
}
.olive-lang-btn.is-active {
  background: #f9ecd4 !important;
  color: #781d22 !important;
  font-weight: 600;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.18);
}
.olive-lang-flag {
  font-size: 14px;
  line-height: 1;
}
.olive-lang-divider {
  color: rgba(249, 236, 212, 0.35);
  font-size: 12px;
  user-select: none;
}
@media (max-width: 600px) {
  .olive-lang-toggle {
    margin: 30px auto 20px;
    padding: 3px 4px;
  }
  .olive-lang-btn {
    padding: 6px 11px;
    font-size: 11px;
  }
}

/* ==========================================================================
   Collections Catalog & View All Design Suite Styles
   ========================================================================== */

/* Homepage Collection Header & Footer Action */
.olive-collection__view-all-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  border-radius: 30px;
  background: var(--olive-accent-texture);
  color: var(--olive-accent-text) !important;
  text-decoration: none !important;
  font: 500 11px/1.2 'Be Vietnam Pro', sans-serif;
  letter-spacing: .06em;
  text-transform: uppercase;
  box-shadow: 0 4px 14px rgba(120, 29, 34, 0.2);
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
  white-space: nowrap;
}
.olive-collection__view-all-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(120, 29, 34, 0.32);
  filter: saturate(1.1);
}
.olive-collection__header-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.olive-collection__footer-action {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 52px;
  text-align: center;
}
.olive-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 16px 36px;
  border-radius: 40px;
  background: var(--olive-accent-texture);
  color: #fff6e4 !important;
  text-decoration: none !important;
  font: 500 12px/1.2 'Be Vietnam Pro', sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
  box-shadow: 0 10px 30px rgba(120, 29, 34, 0.25);
  transition: transform .3s ease, box-shadow .3s ease, filter .3s ease;
}
.olive-btn-primary:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 16px 40px rgba(120, 29, 34, 0.36);
}
.olive-btn-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  border-radius: 30px;
  border: 1px solid rgba(145, 61, 57, 0.4);
  background: rgba(255, 255, 255, 0.6);
  color: var(--olive-accent);
  font: 500 11px/1.2 'Be Vietnam Pro', sans-serif;
  letter-spacing: .06em;
  text-transform: uppercase;
  cursor: pointer;
  transition: all .25s ease;
}
.olive-btn-secondary:hover {
  background: var(--olive-accent-texture);
  color: #fff;
  border-color: transparent;
}

/* Dedicated Catalog Subpage (.olive-catalog-page) */
.olive-catalog-page {
  margin: 0;
  padding: 0;
  background: #f3ead7 url('./assets/72b7c804488ec52b.png') center top/100% 100% no-repeat;
  color: #2c2925;
  font-family: 'Be Vietnam Pro', Arial, sans-serif;
  min-height: 100vh;
}

/* Top Navbar */
.olive-catalog-nav {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(247, 241, 230, 0.94);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(135, 58, 54, 0.15);
  transition: all .3s ease;
}
.olive-catalog-nav__inner {
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 clamp(20px, 4vw, 58px);
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.olive-catalog-nav__back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #781d22 !important;
  text-decoration: none !important;
  font: 500 12px/1 'Be Vietnam Pro', sans-serif;
  letter-spacing: .04em;
  transition: transform .2s ease;
}
.olive-catalog-nav__back:hover {
  transform: translateX(-3px);
}
.olive-catalog-nav__brand {
  font: 500 clamp(10px, 1.1vw, 12px)/1 'Be Vietnam Pro', sans-serif;
  letter-spacing: .28em;
  color: #4a3e3d !important;
  text-decoration: none !important;
  text-transform: uppercase;
}
.olive-catalog-nav__right {
  display: flex;
  align-items: center;
  gap: 16px;
}
.olive-catalog-nav__lang {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 20px;
  border: 1px solid rgba(120, 29, 34, 0.2);
  color: #781d22 !important;
  text-decoration: none !important;
  font: 500 11px/1 'Be Vietnam Pro', sans-serif;
  transition: background .2s ease;
}
.olive-catalog-nav__lang:hover {
  background: rgba(120, 29, 34, 0.08);
}
.olive-catalog-nav__cta {
  display: inline-flex;
  align-items: center;
  padding: 8px 18px;
  border-radius: 20px;
  background: var(--olive-accent-texture);
  color: #fff6e4 !important;
  text-decoration: none !important;
  font: 500 11px/1 'Be Vietnam Pro', sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: transform .2s ease, box-shadow .2s ease;
}
.olive-catalog-nav__cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 14px rgba(120, 29, 34, 0.25);
}

/* Hero Header */
.olive-catalog-hero {
  position: relative;
  padding: clamp(60px, 7vw, 100px) clamp(20px, 4vw, 58px) clamp(30px, 4vw, 50px);
  text-align: center;
}
.olive-catalog-hero__inner {
  max-width: 960px;
  margin: 0 auto;
}
.olive-catalog-hero__eyebrow {
  margin: 0 0 16px;
  color: var(--olive-accent);
  font: 500 11px/1.4 'Be Vietnam Pro', sans-serif;
  letter-spacing: .24em;
  text-transform: uppercase;
}
.olive-catalog-hero__title {
  margin: 0;
  color: #332e28;
  font: 400 clamp(44px, 5.8vw, 76px)/1.02 'Cormorant Garamond', Georgia, serif;
  letter-spacing: -.03em;
}
.olive-catalog-hero__subtitle {
  margin: 20px auto 0;
  max-width: 720px;
  color: #6d695e;
  font: 400 clamp(15px, 1.4vw, 18px)/1.7 'Cormorant Garamond', Georgia, serif;
}

/* Sticky Controls (Search & Category Tabs) */
.olive-catalog-controls {
  position: sticky;
  top: 68px;
  z-index: 950;
  background: rgba(243, 234, 215, 0.95);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-top: 1px solid rgba(135, 58, 54, 0.1);
  border-bottom: 1px solid rgba(135, 58, 54, 0.15);
  padding: 14px 0;
  box-shadow: 0 8px 24px rgba(60, 30, 20, 0.04);
}
.olive-catalog-controls__inner {
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 clamp(20px, 4vw, 58px);
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.olive-catalog-search {
  position: relative;
  max-width: 600px;
  width: 100%;
  margin: 0 auto;
}
.olive-catalog-search svg {
  position: absolute;
  top: 50%;
  left: 16px;
  transform: translateY(-50%);
  color: #8c4e50;
  pointer-events: none;
}
.olive-catalog-search input {
  width: 100%;
  box-sizing: border-box;
  padding: 12px 42px 12px 44px;
  border-radius: 30px;
  border: 1px solid rgba(135, 58, 54, 0.28);
  background: rgba(255, 255, 255, 0.85);
  font: 400 13px 'Be Vietnam Pro', sans-serif;
  color: #332e28;
  outline: none;
  transition: all .25s ease;
  box-shadow: 0 2px 8px rgba(0,0,0,0.03);
}
.olive-catalog-search input:focus {
  border-color: #781d22;
  background: #ffffff;
  box-shadow: 0 4px 18px rgba(120, 29, 34, 0.15);
}
.olive-catalog-search__clear {
  position: absolute;
  top: 50%;
  right: 14px;
  transform: translateY(-50%);
  border: 0;
  background: none;
  font-size: 20px;
  color: #781d22;
  cursor: pointer;
  padding: 0;
  line-height: 1;
}
.olive-catalog-tabs {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
}
.olive-catalog-tab {
  border: 1px solid rgba(135, 58, 54, 0.22);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.55);
  color: #4a453f;
  padding: 8px 16px;
  font: 500 11px/1.2 'Be Vietnam Pro', sans-serif;
  cursor: pointer;
  transition: all .25s ease;
  white-space: nowrap;
}
.olive-catalog-tab:hover {
  transform: translateY(-2px);
  border-color: var(--olive-accent);
  color: var(--olive-accent);
}
.olive-catalog-tab.is-active {
  border-color: var(--olive-accent);
  background: var(--olive-accent-texture);
  color: var(--olive-accent-text);
  box-shadow: 0 4px 12px rgba(120, 29, 34, 0.18);
}

/* Main Catalog Layout */
.olive-catalog-main {
  max-width: 1480px;
  margin: 0 auto;
  padding: 36px clamp(20px, 4vw, 58px) 100px;
}
.olive-catalog-status-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(135, 58, 54, 0.15);
}
.olive-catalog-status-count {
  font: 400 13px/1.4 'Be Vietnam Pro', sans-serif;
  color: #6d665e;
}
.olive-catalog-status-count b {
  color: #781d22;
  font-weight: 600;
}
.olive-catalog-status-count em {
  font-style: normal;
  color: #781d22;
  font-weight: 600;
}

/* Unified 3-Column Catalog Grid */
.olive-catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(24px, 2.5vw, 36px);
}
@media (max-width: 1080px) {
  .olive-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
}
@media (max-width: 640px) {
  .olive-catalog-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

/* Catalog Card Specifics */
.olive-card--catalog {
  background: rgba(255, 255, 255, 0.45);
  border: 1px solid rgba(135, 58, 54, 0.14);
  border-radius: 8px;
  padding: 12px;
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.olive-card--catalog:hover {
  transform: translateY(-4px);
  border-color: rgba(135, 58, 54, 0.35);
  box-shadow: 0 18px 40px rgba(60, 30, 20, 0.08);
}
.olive-card__venue-line {
  margin: 6px 0 0;
  color: #8c4e50 !important;
  font: 500 11px/1.4 'Be Vietnam Pro', sans-serif;
  letter-spacing: .02em;
}
.olive-card__desc-line {
  margin: 8px 0 16px;
  color: #5e383a !important;
  font: 400 12px/1.65 'Be Vietnam Pro', sans-serif;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.olive-card__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding-top: 12px;
  border-top: 1px solid rgba(135, 58, 54, 0.12);
}
.olive-card__btn-detail {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 8px;
  border-radius: 4px;
  background: var(--olive-accent-texture);
  color: #fff6e4 !important;
  text-decoration: none !important;
  font: 500 10px/1.2 'Be Vietnam Pro', sans-serif;
  letter-spacing: .06em;
  text-transform: uppercase;
  text-align: center;
  transition: transform .2s ease, filter .2s ease;
}
.olive-card__btn-detail:hover {
  transform: translateY(-1px);
  filter: saturate(1.15);
}
.olive-card__btn-live {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 8px;
  border-radius: 4px;
  border: 1px solid rgba(135, 58, 54, 0.28);
  background: rgba(255, 255, 255, 0.85);
  color: #781d22;
  font: 500 10px/1.2 'Be Vietnam Pro', sans-serif;
  letter-spacing: .06em;
  text-transform: uppercase;
  cursor: pointer;
  transition: all .2s ease;
}
.olive-card__btn-live:hover {
  background: #781d22;
  color: #fff6e4;
  border-color: #781d22;
}

/* Coming Soon Card State */
.olive-card--coming-soon {
  position: relative;
  background: rgba(245, 238, 226, 0.55);
}
.olive-card--coming-soon .olive-card__media {
  cursor: not-allowed;
}
.olive-card__disabled-title {
  color: #554f4a;
  cursor: not-allowed;
}
.olive-card__badge--coming-soon {
  background: rgba(36, 26, 25, 0.88) !important;
  color: #ffc4c2 !important;
  border: 1px solid rgba(255, 196, 194, 0.35);
  letter-spacing: .08em;
}
.olive-card__coming-soon-overlay {
  position: absolute;
  inset: 0;
  z-index: 4;
  background: rgba(18, 14, 13, 0.62);
  backdrop-filter: blur(2.5px);
  -webkit-backdrop-filter: blur(2.5px);
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: all;
  cursor: not-allowed;
  user-select: none;
}
.olive-card__coming-soon-banner {
  width: 100%;
  padding: 11px 0;
  background: repeating-linear-gradient(
    -45deg,
    #781d22,
    #781d22 14px,
    #4a1013 14px,
    #4a1013 28px
  );
  border-top: 1.5px solid rgba(247, 236, 213, 0.55);
  border-bottom: 1.5px solid rgba(247, 236, 213, 0.55);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.45);
  display: flex;
  align-items: center;
  justify-content: center;
}
.olive-card__coming-soon-text {
  color: #fff6e4;
  font: 700 12px/1 'Be Vietnam Pro', sans-serif;
  letter-spacing: .28em;
  text-transform: uppercase;
  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.7);
}
.olive-card__btn-coming-soon {
  grid-column: 1 / -1;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 9px 12px;
  border-radius: 4px;
  border: 1px dashed rgba(135, 58, 54, 0.35);
  background: rgba(135, 58, 54, 0.08);
  color: #8c4e50;
  font: 600 10px/1.2 'Be Vietnam Pro', sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
  cursor: not-allowed;
  user-select: none;
  pointer-events: none;
}

/* No results state */
.olive-catalog-no-results {
  text-align: center;
  padding: 80px 20px;
  background: rgba(255, 255, 255, 0.5);
  border-radius: 12px;
  border: 1px dashed rgba(135, 58, 54, 0.25);
  margin: 40px auto;
  max-width: 600px;
}
.olive-catalog-no-results__icon {
  font-size: 40px;
  margin-bottom: 12px;
}
.olive-catalog-no-results h3 {
  margin: 0 0 8px;
  font: 500 24px/1.2 'Cormorant Garamond', Georgia, serif;
  color: #781d22;
}
.olive-catalog-no-results p {
  margin: 0 0 24px;
  color: #77736b;
  font-size: 13px;
}

/* Bespoke Commission Custom Banner */
.olive-catalog-custom-banner {
  margin-top: 60px;
  padding: clamp(48px, 6vw, 72px) clamp(24px, 4vw, 64px);
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(253, 248, 238, 0.95), rgba(246, 234, 218, 0.95)), url('./assets/72b7c804488ec52b.png') center/cover;
  border: 1px solid rgba(135, 58, 54, 0.25);
  box-shadow: 0 16px 44px rgba(79, 51, 39, 0.08);
  text-align: center;
}
.olive-catalog-custom-banner__inner {
  max-width: 800px;
  margin: 0 auto;
}
.olive-catalog-custom-banner__eyebrow {
  margin: 0 0 14px;
  color: var(--olive-accent);
  font: 500 10px/1.4 'Be Vietnam Pro', sans-serif;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.olive-catalog-custom-banner h2 {
  margin: 0 0 16px;
  color: #781d22;
  font: 400 clamp(32px, 3.8vw, 48px)/1.1 'Cormorant Garamond', Georgia, serif;
}
.olive-catalog-custom-banner__desc {
  margin: 0 auto 28px;
  color: #6e675d;
  font: 400 clamp(13px, 1.2vw, 15px)/1.7 'Be Vietnam Pro', sans-serif;
  max-width: 680px;
}
.olive-catalog-custom-banner__btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 16px 36px;
  border-radius: 40px;
  background: var(--olive-accent-texture);
  color: #fff6e4 !important;
  text-decoration: none !important;
  font: 500 12px/1.2 'Be Vietnam Pro', sans-serif;
  letter-spacing: .1em;
  text-transform: uppercase;
  box-shadow: 0 8px 24px rgba(120, 29, 34, 0.25);
  transition: transform .25s ease, box-shadow .25s ease;
}
.olive-catalog-custom-banner__btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(120, 29, 34, 0.36);
}

/* Modal Live Demo Dialog */
.olive-catalog-modal {
  position: fixed;
  inset: 0;
  max-width: min(94vw, 480px);
  width: 100%;
  max-height: 92vh;
  margin: auto;
  padding: 0;
  border: 1px solid rgba(135, 58, 54, 0.25);
  border-radius: 16px;
  background: #f7f1e4;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.35);
  overflow: hidden;
}
.olive-catalog-modal::backdrop {
  background: rgba(28, 20, 18, 0.82);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.olive-catalog-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 20px;
  background: #eee4d0;
  border-bottom: 1px solid rgba(135, 58, 54, 0.18);
}
.olive-catalog-modal__header h3 {
  margin: 0;
  color: #781d22;
  font: 500 18px 'Cormorant Garamond', Georgia, serif;
}
.olive-catalog-modal__header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.olive-catalog-modal__btn-new {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 12px;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.7);
  color: #781d22 !important;
  text-decoration: none !important;
  font: 500 10px 'Be Vietnam Pro', sans-serif;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.olive-catalog-modal__close {
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.8);
  color: #332e28;
  font-size: 22px;
  cursor: pointer;
  display: grid;
  place-items: center;
  line-height: 1;
}
.olive-catalog-modal__body {
  padding: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.olive-catalog-modal__phone-frame {
  position: relative;
  width: min(340px, 80vw);
  height: min(650px, 72vh);
  border: 6px solid #292725;
  border-radius: 36px;
  background: #292725;
  box-shadow: 0 16px 40px rgba(0,0,0,0.22);
  overflow: hidden;
}
.olive-catalog-modal__phone-frame iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
.olive-catalog-modal__island {
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translateX(-50%);
  width: 70px;
  height: 12px;
  background: #171716;
  border-radius: 10px;
  pointer-events: none;
}

/* Footer */
.olive-catalog-footer {
  background: #231d1b;
  color: #f7ecd5;
  padding: 60px clamp(20px, 4vw, 58px) 40px;
  text-align: center;
}
.olive-catalog-footer__inner {
  max-width: 900px;
  margin: 0 auto;
}
.olive-catalog-footer__brand {
  font: 500 13px/1 'Be Vietnam Pro', sans-serif;
  letter-spacing: .28em;
  color: #f7ecd5 !important;
  text-decoration: none !important;
  text-transform: uppercase;
}
.olive-catalog-footer__tagline {
  margin: 12px 0 24px;
  color: #baa494;
  font: italic 14px 'Cormorant Garamond', Georgia, serif;
}
.olive-catalog-footer__links {
  display: flex;
  justify-content: center;
  gap: clamp(14px, 2.5vw, 28px);
  flex-wrap: wrap;
  margin-bottom: 28px;
}
.olive-catalog-footer__links a {
  color: #f7ecd5 !important;
  text-decoration: none !important;
  font: 400 12px 'Be Vietnam Pro', sans-serif;
  transition: color .2s ease;
}
.olive-catalog-footer__links a:hover {
  color: #e59d9a !important;
}
.olive-catalog-footer__copy {
  margin: 0;
  color: #7d726b;
  font-size: 11px;
}

/* Responsive adjustments */
@media (max-width: 780px) {
  .olive-catalog-controls {
    top: 56px;
    padding: 10px 0;
  }
  .olive-catalog-nav__inner {
    height: 56px;
  }
  .olive-catalog-tabs {
    overflow-x: auto;
    justify-content: flex-start;
    padding-bottom: 4px;
    scrollbar-width: none;
  }
  .olive-catalog-tabs::-webkit-scrollbar {
    display: none;
  }
}
@media (max-width: 520px) {
  .olive-card__actions {
    grid-template-columns: 1fr;
  }
  .olive-catalog-nav__lang span:last-child {
    display: none;
  }
}

