/* Heritage home page — maroon, antique gold & ivory. Loaded only when Admin → Settings → Home page design = Heritage. */
/* Heritage fonts are loaded by index.html (lib/themes.js HERITAGE_FONTS) without blocking the page */
.hh{--maroon:#4B1013;--maroon2:#330A0D;--maroon3:#5E1A1C;--gold:#C8A24A;--gold2:#E3C98A;--gold3:#8E6F2A;--ivory:#F6EFE2;--ivory2:#EFE5D2;--paper:#FBF7EE;--ink:#2A1A14;--muted:#76665A;
  --display:'Cormorant Garamond',Garamond,'Times New Roman',serif;--caps:'Marcellus','Cormorant Garamond',serif;--tel:'Gurajada','Noto Serif Telugu','Noto Sans Telugu',serif;--body:'Mulish',system-ui,sans-serif;
  --gut:max(20px,calc((100% - 1200px)/2));
  background:var(--ivory);color:var(--ink);font-family:var(--body);line-height:1.6;overflow-x:clip}
.hh *{box-sizing:border-box}
.hh h1,.hh h2,.hh h3{font-family:var(--display);font-weight:500;text-wrap:balance;margin:0}
.hh a{color:inherit}
.hh :focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.hh .w{padding-inline:var(--gut)}
.hh .caps{font-family:var(--caps);text-transform:uppercase;letter-spacing:.22em;font-size:12px}
.hh .tel{font-family:var(--tel);letter-spacing:0}
.hh .btn-h{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-family:var(--caps);font-size:12px;letter-spacing:.24em;text-transform:uppercase;padding:18px 30px;border:1px solid var(--gold);color:var(--gold2);background:transparent;position:relative;overflow:hidden;cursor:pointer;transition:color .5s;isolation:isolate}
.hh .btn-h::before{content:"";position:absolute;inset:0;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.7,0,.2,1);z-index:-1}
.hh .btn-h:hover{color:var(--maroon2)}
.hh .btn-h:hover::before{transform:scaleX(1)}
.hh .btn-h.dark{color:var(--maroon);border-color:var(--maroon)}
.hh .btn-h.dark::before{background:var(--maroon)}
.hh .btn-h.dark:hover{color:var(--gold2)}
@keyframes hh-fade{from{opacity:0;transform:translateY(12px)}}
@keyframes hh-draw{to{stroke-dashoffset:0}}
@keyframes hh-dot{to{opacity:.9}}

/* hero */
.hh-hero{position:relative;background:radial-gradient(ellipse 80% 90% at 70% 40%,var(--maroon3),var(--maroon) 50%,var(--maroon2));color:var(--ivory);overflow:hidden;isolation:isolate}
.hh-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.07;background-image:var(--tile);background-size:120px 120px}
.hh-hgrid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px;align-items:center;padding-block:72px 96px}
.hh-hero .eyebrow{color:var(--gold2);display:flex;align-items:center;gap:14px}
.hh-hero .eyebrow::before{content:"";width:48px;height:1px;background:var(--gold)}
.hh-hero h1{font-size:clamp(44px,6.2vw,90px);line-height:.98;margin-top:22px;color:var(--ivory);animation:hh-fade 1.4s cubic-bezier(.2,.8,.2,1) both .2s}
.hh-hero h1 em{font-style:italic;color:var(--gold2)}
.hh-hero .tline{font-size:clamp(24px,3vw,38px);color:var(--gold);margin-top:18px;display:block;animation:hh-fade 1.6s ease both .7s}
.hh-hero p{max-width:44ch;color:rgba(246,239,226,.8);font-size:17px;margin:18px 0 34px;animation:hh-fade 1.6s ease both .9s}
.hh-hero .ctas{display:flex;gap:16px;flex-wrap:wrap;animation:hh-fade 1.6s ease both 1.1s}
.hh-arch{position:relative;aspect-ratio:3/4;width:min(100%,460px);justify-self:center;isolation:isolate}
.hh-arch svg.frame{position:absolute;inset:-6%;width:112%;height:112%;overflow:visible}
.hh-arch .frame path{fill:none;stroke:var(--gold);stroke-width:1.4}
.hh-arch .frame .draw{stroke-dasharray:3000;stroke-dashoffset:3000;animation:hh-draw 3.2s cubic-bezier(.6,0,.2,1) forwards .3s}
.hh-arch .frame .draw2{stroke-dasharray:3000;stroke-dashoffset:3000;animation:hh-draw 3.6s cubic-bezier(.6,0,.2,1) forwards .7s;opacity:.6}
.hh-arch .frame .dots circle{fill:var(--gold);opacity:0;animation:hh-dot .5s forwards}
.hh-arch .img{position:absolute;inset:0;clip-path:url(#hhArchClip);overflow:hidden;background:var(--maroon2)}
.hh-arch .img{animation:hh-unveil 2.4s cubic-bezier(.2,.8,.2,1) both .6s}
.hh-arch .hh-slide{position:absolute;inset:0;display:block;opacity:0;transition:opacity 1.6s ease;text-decoration:none}
.hh-arch .hh-slide.on{opacity:1;z-index:1}
.hh-arch .hh-slide img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.04)}
.hh-arch .hh-slide.on img{animation:hh-kb 7s ease-out forwards}
@keyframes hh-kb{from{transform:scale(1.14)}to{transform:scale(1.02)}}
.hh-arch .hh-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(51,10,13,0) 50%,rgba(51,10,13,.7));pointer-events:none}
.hh-arch .hh-slide .cap{position:absolute;left:50%;bottom:7%;transform:translate(-50%,10px);text-align:center;width:84%;color:#F6EFE2;z-index:2;opacity:0;transition:opacity 1s ease .5s,transform 1s ease .5s}
.hh-arch .hh-slide.on .cap{opacity:1;transform:translate(-50%,0)}
.hh-arch .hh-slide .cap b{font-family:var(--display);font-size:26px;font-weight:500;display:block;line-height:1.1}
.hh-arch .hh-slide .cap .caps{font-size:10px;color:rgba(246,239,226,.85)}
.hh-dots{position:absolute;left:0;right:0;bottom:-38px;display:flex;justify-content:center;gap:10px;z-index:3}
.hh-dots button{width:8px;height:8px;border-radius:50%;border:1px solid var(--gold);background:transparent;padding:0;cursor:pointer;transition:background .4s,transform .4s}
.hh-dots button.on{background:var(--gold);transform:scale(1.3)}
.hh-dots button[hidden]{display:none}
@keyframes hh-unveil{from{transform:scale(1.3);opacity:0}}
.hh-arch .cap{position:absolute;left:50%;bottom:7%;transform:translateX(-50%);text-align:center;width:84%;color:var(--ivory);animation:hh-fade 1.4s ease both 1.8s}
.hh-arch .cap b{font-family:var(--display);font-size:24px;font-weight:500;display:block;line-height:1.1}
.hh-arch .cap .caps{font-size:10px;color:rgba(246,239,226,.8)}
.hh-leaf{position:absolute;width:46%;bottom:-4%;z-index:-1;opacity:.55;transform-origin:50% 100%;animation:hh-sway 7s ease-in-out infinite alternate;left:-34%;transform:rotate(-24deg)}
.hh-leaf.r{left:auto;right:-34%;animation-delay:-3s;transform:rotate(24deg)}
.hh-leaf path{fill:none;stroke:var(--gold);stroke-width:1.2}
@keyframes hh-sway{from{rotate:-3deg}to{rotate:3deg}}
.hh-paisley{position:absolute;width:var(--s);will-change:transform;pointer-events:none}
.hh-paisley path{fill:none;stroke:var(--gold);stroke-width:1.2}
.hh-band{height:28px;background-image:var(--band);background-size:56px 28px;background-repeat:repeat-x}
.hh-band.m{background-color:var(--maroon)}
.hh-band.i{background-color:var(--ivory)}

/* section heads + reveal */
.hh section.s{padding-block:100px}
.hh .sh{text-align:center;max-width:740px;margin:0 auto 56px}
.hh .sh .caps{color:var(--gold3)}
.hh .sh h2{font-size:clamp(36px,4.6vw,62px);line-height:1.04;margin-top:14px;color:var(--maroon)}
.hh .sh h2 em{font-style:italic;color:var(--gold3)}
.hh .sh .tel{display:block;font-size:24px;color:var(--gold3);margin-top:10px}
.hh .sh p{color:var(--muted);margin:14px auto 0;max-width:54ch}
.hh .rv{transition:opacity 1.1s ease,transform 1.2s cubic-bezier(.2,.8,.2,1)}
.hh.js .rv:not(.in){opacity:.001;transform:translateY(40px)}

/* collections */
.hh-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,260px));justify-content:center;gap:26px}
.hh-col{text-decoration:none;display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px}
.hh-col .arch{position:relative;width:100%;aspect-ratio:3/4.2;max-width:100%;border-radius:999px 999px 0 0;overflow:hidden;background:var(--maroon)}
.hh-col .arch::before{content:"";position:absolute;inset:8px;border:1px solid rgba(227,201,138,.75);border-radius:999px 999px 0 0;z-index:2;transition:inset .6s cubic-bezier(.2,.8,.2,1)}
.hh-col:hover .arch::before{inset:14px}
.hh-col .arch img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.6s cubic-bezier(.2,.8,.2,1)}
.hh-col:hover .arch img{transform:scale(1.08)}
.hh-col b{font-family:var(--display);font-size:26px;font-weight:500;color:var(--maroon);display:block;line-height:1.1}
.hh-col small{color:var(--muted);font-size:14px}
.hh-col .more{font-family:var(--caps);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold3);border-bottom:1px solid currentColor;padding-bottom:2px}

/* ritual */
.hh-ritual{background:var(--paper);border-block:1px solid rgba(200,162,74,.3)}
.hh-rgrid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px;align-items:start}
.hh-rimg{position:sticky;top:120px;aspect-ratio:3/4;border-radius:999px 999px 0 0;overflow:hidden;max-width:100%;outline:1px solid var(--gold);outline-offset:12px}
.hh-rimg img{width:100%;height:100%;object-fit:cover;display:block}
.hh-steps{position:relative;padding-left:56px}
.hh-steps::before{content:"";position:absolute;left:18px;top:8px;bottom:8px;width:1px;background:rgba(200,162,74,.35)}
.hh-steps .bar{position:absolute;left:18px;top:8px;width:1px;height:calc(var(--p,0) * (100% - 16px));background:var(--gold)}
.hh-step{position:relative;padding-bottom:60px}
.hh-step:last-child{padding-bottom:0}
.hh-step .num{position:absolute;left:-56px;top:0;width:37px;height:37px;border-radius:50%;border:1px solid var(--gold);background:var(--paper);display:grid;place-items:center;font-family:var(--display);font-style:italic;font-size:18px;color:var(--gold3);transition:background .5s,color .5s}
.hh-step.on .num{background:var(--maroon);color:var(--gold2);border-color:var(--maroon)}
.hh-step .caps{color:var(--gold3);font-size:11px}
.hh-step h3{font-size:clamp(26px,3vw,38px);color:var(--maroon);line-height:1.08;margin:6px 0 8px}
.hh-step p{color:var(--muted);max-width:46ch;margin:0}
.hh-step .tel{color:var(--gold3);font-size:20px}

/* journey with uploaded bullock cart photo */
.hh-journey{background:var(--ivory);overflow:hidden}
.hh-road{position:relative;height:clamp(300px,34vw,440px)}
.hh-road::before{content:"";position:absolute;left:0;right:0;bottom:30px;height:46px;background:linear-gradient(180deg,rgba(200,162,74,0) 0,rgba(184,150,96,.28) 30%,rgba(166,132,84,.35) 70%,rgba(200,162,74,0));border-top:1px solid rgba(200,162,74,.55)}
.hh-road::after{content:"";position:absolute;left:0;right:0;bottom:52px;height:1px;background:repeating-linear-gradient(90deg,rgba(142,111,42,.5) 0 14px,transparent 14px 30px)}
.hh-cart{position:absolute;bottom:40px;left:0;height:calc(100% - 50px);width:auto;max-width:78vw;transform:translateX(var(--cx,-100%));will-change:transform;mix-blend-mode:multiply}
.hh-cart::after{content:"";position:absolute;left:8%;right:8%;bottom:-6px;height:18px;border-radius:50%;background:radial-gradient(ellipse,rgba(51,10,13,.32),rgba(51,10,13,0) 70%);z-index:-1}
.hh-cart img{height:100%;width:auto;max-width:none;display:block;filter:saturate(.95) contrast(1.03)}
.hh-cart.flip img{transform:scaleX(-1)}
.hh-journey.walking .hh-cart{animation:hh-bob .34s ease-in-out infinite alternate}
@keyframes hh-bob{to{translate:0 -2px}}
.hh-dust{position:absolute;bottom:46px;width:12px;height:12px;border-radius:50%;background:rgba(200,162,74,.35);pointer-events:none;animation:hh-dust 1s ease-out forwards}
@keyframes hh-dust{to{transform:translate(-40px,-24px) scale(3);opacity:0}}
.hh-miles{position:absolute;left:0;right:0;bottom:0;height:46px}
.hh-mile{position:absolute;bottom:-2px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;width:140px}
.hh-mile i{width:13px;height:13px;border-radius:50%;border:1px solid var(--gold);background:var(--ivory);transition:background .5s,transform .5s;margin-top:-58px}
.hh-mile b{font-family:var(--caps);font-weight:400;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);transition:color .5s}
.hh-mile .tel{font-size:16px;color:var(--gold3);opacity:.5;transition:opacity .5s}
.hh-mile.on i{background:var(--maroon);border-color:var(--maroon);transform:scale(1.3)}
.hh-mile.on b{color:var(--maroon)}
.hh-mile.on .tel{opacity:1}

/* banana leaf feast */
.hh-feast{background:radial-gradient(ellipse at 50% 30%,#24442F,#14281C 70%);color:var(--ivory)}
.hh-feast .sh h2{color:var(--ivory)}
.hh-feast .sh h2 em,.hh-feast .sh .caps,.hh-feast .sh .tel{color:var(--gold2)}
.hh-feast .sh p{color:rgba(246,239,226,.72)}
.hh-stage{position:relative;width:100%;max-width:1100px;margin:0 auto;aspect-ratio:1000/430}
.hh-stage svg.bl,.hh-stage .bl-photo{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 40px 40px rgba(0,0,0,.5))}
.hh-stage .bl-photo{object-fit:cover;border-radius:40px 24px 24px 90px;border:2px solid var(--gold)}
.hh-stage svg.bl.v{display:none}
.hh-kat{position:absolute;left:calc(var(--x)*1%);top:calc(var(--y)*1%);width:calc(var(--s)*1%);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;display:block;background:radial-gradient(circle at 35% 30%,#F3DDA0,#C8A24A 45%,#7A5A1E 80%);box-shadow:0 14px 20px -10px rgba(0,0,0,.7),inset 0 0 0 2px rgba(255,240,200,.5);transition:transform .5s cubic-bezier(.3,1.5,.5,1),opacity .6s}
.hh-kat img{position:absolute;inset:11%;width:78%;height:78%;border-radius:50%;object-fit:cover}
.hh-kat:hover,.hh-kat:focus-visible{transform:translate(-50%,-50%) scale(1.12);z-index:3}
.hh-kat .nm{position:absolute;left:50%;top:104%;transform:translateX(-50%);white-space:nowrap;font-family:var(--caps);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold2);background:rgba(20,40,28,.92);padding:4px 10px;opacity:0;transition:opacity .3s;pointer-events:none}
.hh-kat:hover .nm,.hh-kat:focus-visible .nm{opacity:1}
.hh-kat.wait{opacity:0;transform:translate(-50%,-160%) scale(.5)}
.hh-rice{position:absolute;left:52%;top:62%;width:22%;transform:translate(-50%,-50%);pointer-events:none;transition:opacity 1s}
.hh-rice.wait{opacity:0}
.hh-steam{position:absolute;width:28px;height:28px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.55),rgba(255,255,255,0) 70%);animation:hh-stm 3.2s ease-out infinite;opacity:0;pointer-events:none}
@keyframes hh-stm{20%{opacity:.8}100%{transform:translate(8px,-110px) scale(2.8);opacity:0}}
.hh-feast .cta{display:flex;justify-content:center;margin-top:44px}

/* signature pieces */
.hh-tabs{display:flex;justify-content:center;gap:8px 28px;flex-wrap:wrap;margin:-24px 0 42px}
.hh-tabs button{border:0;background:none;cursor:pointer;font-family:var(--caps);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);padding:6px 0;position:relative}
.hh-tabs button[aria-pressed="true"]{color:var(--maroon)}
.hh-tabs button[aria-pressed="true"]::after{content:"";position:absolute;left:50%;bottom:-4px;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--gold)}
.hh-sig{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px}
.hh-pc{display:flex;flex-direction:column;gap:10px;text-align:center}
.hh-pc[hidden]{display:none}
.hh-pc .ph{position:relative;aspect-ratio:4/5;background:var(--ivory2);overflow:hidden;display:block;max-width:100%}
.hh-pc .ph::after{content:"";position:absolute;inset:10px;border:1px solid transparent;transition:border-color .6s,inset .6s}
.hh-pc:hover .ph::after{border-color:rgba(200,162,74,.9);inset:14px}
.hh-pc .ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.4s cubic-bezier(.2,.8,.2,1)}
.hh-pc:hover .ph img{transform:scale(1.06)}
.hh-pc .badge{position:absolute;top:14px;left:14px;z-index:2;background:var(--maroon);color:var(--gold2);font-family:var(--caps);font-size:9px;letter-spacing:.2em;text-transform:uppercase;padding:6px 10px}
.hh-pc .k{font-family:var(--caps);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold3)}
.hh-pc h3{font-size:23px;color:var(--maroon);line-height:1.12}
.hh-pc h3 a{text-decoration:none}
.hh-pc .pr{font-family:var(--display);font-size:20px;font-weight:600}
.hh-pc .pr s{color:var(--muted);font-weight:500;font-size:16px;margin-left:6px}
.hh-pc .add{align-self:center;border:0;background:none;cursor:pointer;font-family:var(--caps);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--maroon);padding:6px 0;border-bottom:1px solid currentColor}
.hh-pc .add[disabled]{opacity:.45;cursor:default}
.hh .center{text-align:center;margin-top:44px}

/* combo offers */
.hh-combos{background:var(--paper);border-block:1px solid rgba(200,162,74,.3)}
.hh-combo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,340px));justify-content:center;gap:28px}
.hh-cb{background:var(--ivory);border:1px solid rgba(200,162,74,.45);position:relative;display:flex;flex-direction:column}
.hh-cb::before{content:"";position:absolute;inset:7px;border:1px solid rgba(200,162,74,.25);pointer-events:none;z-index:2}
.hh-cb .ph{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:var(--ivory2)}
.hh-cb .ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.4s cubic-bezier(.2,.8,.2,1)}
.hh-cb:hover .ph img{transform:scale(1.06)}
.hh-cb .save{position:absolute;top:16px;right:16px;background:var(--maroon);color:var(--gold2);font-family:var(--caps);font-size:10px;letter-spacing:.18em;text-transform:uppercase;padding:7px 12px}
.hh-cb .bd{padding:18px 22px 22px;display:flex;flex-direction:column;gap:6px;text-align:center}
.hh-cb .k{font-family:var(--caps);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold3)}
.hh-cb h3{font-size:26px;color:var(--maroon);line-height:1.1}
.hh-cb h3 a{text-decoration:none}
.hh-cb .pr{font-family:var(--display);font-size:22px;font-weight:600}
.hh-cb .pr s{color:var(--muted);font-weight:500;font-size:17px;margin-left:8px}
.hh-cb .row{display:flex;justify-content:center;gap:22px;margin-top:6px}
.hh-cb .more,.hh-cb .add{font-family:var(--caps);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--maroon);text-decoration:none;border:0;border-bottom:1px solid currentColor;background:none;padding:4px 0;cursor:pointer}

/* kitchens + perks */
.hh-kit{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:26px}
.hh-kc{background:var(--paper);border:1px solid rgba(200,162,74,.4);padding:32px 26px;text-align:center;position:relative;text-decoration:none;transition:transform .6s cubic-bezier(.2,.8,.2,1),box-shadow .6s}
.hh-kc:hover{transform:translateY(-6px);box-shadow:0 30px 50px -36px rgba(75,16,19,.6)}
.hh-kc::before{content:"";position:absolute;inset:8px;border:1px solid rgba(200,162,74,.25);pointer-events:none}
.hh-kc img,.hh-kc .ini{display:block;width:88px;height:88px;border-radius:50%;object-fit:cover;border:1px solid var(--gold);margin:0 auto 14px;background:#fff}
.hh-kc .ini{display:flex;align-items:center;justify-content:center;background:var(--maroon,#4B1013);color:var(--gold2,#E3C98A);font-family:var(--display,serif);font-size:38px;line-height:1}
.hh-kc .caps{color:var(--gold3);font-size:10px;display:block}
.hh-kc h3{font-size:27px;color:var(--maroon);margin:6px 0 4px}
.hh-kc p{color:var(--muted);font-size:15px;margin:8px 0 0}
.hh-perks{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;border-top:1px solid rgba(200,162,74,.4);padding-top:44px;margin-top:70px}
.hh-perks div{text-align:center}
.hh-perks b{display:block;font-family:var(--display);font-size:22px;font-weight:500;color:var(--maroon)}
.hh-perks span{color:var(--muted);font-size:14px}

@media (max-width:960px){
  .hh-hgrid,.hh-rgrid{grid-template-columns:minmax(0,1fr)}
  .hh-hgrid{padding-block:44px 80px;gap:56px}
  .hh-arch{width:min(78%,380px)}
  .hh-sig{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}
  .hh-rimg{position:relative;top:0;max-width:340px;margin:0 auto}
  .hh section.s{padding-block:76px}
  .hh-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hh-road{height:clamp(220px,58vw,320px)}
  .hh-mile{width:90px}.hh-mile .tel{display:none}.hh-mile b{font-size:9px;letter-spacing:.1em}
  .hh-stage{aspect-ratio:430/1000;max-width:420px}
  .hh-stage svg.bl.h{display:none}.hh-stage svg.bl.v{display:block}
  .hh-stage .bl-photo{border-radius:90px 24px 24px 40px}
  .hh-kat{left:calc(var(--mx)*1%);top:calc(var(--my)*1%);width:calc(var(--s)*2.2%)}
  .hh-rice{left:38%;top:52%;width:46%}
  .hh-leaf{width:40%}
}
@media (prefers-reduced-motion:reduce){
  .hh *,.hh *::before,.hh *::after{animation:none!important;transition:none!important}
  .hh-arch .frame .draw,.hh-arch .frame .draw2{stroke-dashoffset:0}.hh-arch .frame .dots circle{opacity:.9}
  .hh.js .rv:not(.in){opacity:1;transform:none}
  .hh-kat.wait,.hh-rice.wait{opacity:1;transform:translate(-50%,-50%)}
}

/* offers — banners from Admin → Marketing → Banners & offers */
.hh-offers{background:var(--paper);padding:56px 0 8px;scroll-margin-top:120px}
.hh-ban{position:relative;overflow:hidden;border-radius:28px;box-shadow:0 30px 60px -30px rgba(51,10,13,.55)}
.hh-ban .track{display:flex;transition:transform .8s cubic-bezier(.7,0,.2,1)}
.hh-ban .hh-bslide{flex:0 0 100%;display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:30px;padding:44px 84px;min-height:280px;text-decoration:none;color:var(--ivory);position:relative;isolation:isolate}
.hh-ban .hh-bslide::before{content:"";position:absolute;inset:12px;border:1px solid rgba(227,201,138,.55);border-radius:20px;pointer-events:none}
.hh-ban .hh-bslide::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.08;background-image:var(--tile);background-size:110px}
.t-maroon{background:radial-gradient(ellipse 80% 120% at 80% 50%,var(--maroon3),var(--maroon) 55%,var(--maroon2))}
.t-green{background:radial-gradient(ellipse 80% 120% at 80% 50%,#2c5235,#1d3a25 55%,#122617)}
.t-saffron{background:radial-gradient(ellipse 80% 120% at 80% 50%,#9a5c18,#7a4310 55%,#5a300a)}
.t-dark{background:radial-gradient(ellipse 80% 120% at 80% 50%,#3a2a22,#241913 55%,#160f0b)}
.hh-ban .badge{color:var(--gold2);display:inline-flex;align-items:center;gap:12px}
.hh-ban .badge::before{content:"";width:34px;height:1px;background:var(--gold)}
.hh-ban h2{font-size:clamp(30px,4vw,54px);line-height:1.02;margin:12px 0 10px;color:var(--ivory)}
.hh-ban p{color:rgba(246,239,226,.82);max-width:46ch;margin:0 0 22px}
.hh-ban .acts,.hh-ocard .acts{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hh-ban .btn-h{padding:14px 24px}
.hh-ban .art{justify-self:center;width:min(240px,100%);aspect-ratio:4/5;border-radius:999px 999px 18px 18px;overflow:hidden;border:2px solid var(--gold);box-shadow:0 0 0 6px rgba(200,162,74,.18)}
.hh-ban .art img{width:100%;height:100%;object-fit:cover;display:block}
.hh-ban .art.seal{border:0;box-shadow:none;opacity:.55}
.hh-ban .art.seal svg{width:100%;height:100%}
.hh-ban .nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid var(--gold);background:rgba(51,10,13,.5);color:var(--gold2);font-size:24px;line-height:1;cursor:pointer;z-index:2}
.hh-ban .prev{left:18px}.hh-ban .next{right:18px}
.hh-ban .hh-dots{position:absolute;left:0;right:0;bottom:22px;display:flex;justify-content:center;gap:8px;z-index:2}
.hh-ban .hh-dots button{width:8px;height:8px;border-radius:50%;border:1px solid var(--gold2);background:transparent;padding:0;cursor:pointer}
.hh-ban .hh-dots button.on{background:var(--gold2);width:22px;border-radius:6px}
.hh-code{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1.5px dashed var(--gold);border-radius:10px;background:rgba(200,162,74,.12);color:inherit;font:inherit;font-size:14px;cursor:pointer}
.hh-code b{font-family:var(--caps);letter-spacing:.14em;color:var(--gold2)}
.hh-code span{font-size:11px;opacity:.7;white-space:nowrap}
.hh-code{white-space:nowrap}
.hh-ocards-wrap{padding-top:56px;padding-bottom:40px}
.hh-ocards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,300px));justify-content:center;gap:28px;margin-top:38px}
.hh-ocard{background:var(--ivory2);border:1px solid rgba(200,162,74,.6);border-radius:999px 999px 22px 22px;padding:14px 14px 22px;text-align:center;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;align-items:center;gap:8px;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s}
.hh-ocard:hover{transform:translateY(-6px);box-shadow:0 24px 40px -24px rgba(51,10,13,.45)}
.hh-ocard .arch{width:100%;aspect-ratio:1/1;border-radius:999px 999px 14px 14px;overflow:hidden;display:block;border:1px solid var(--gold)}
.hh-ocard .arch img{width:100%;height:100%;object-fit:cover;display:block}
.hh-ocard .arch.plain{display:flex;align-items:center;justify-content:center;color:var(--gold2);font-family:var(--display);font-size:clamp(30px,3vw,40px);font-style:italic;padding:20px;text-align:center;line-height:1.05}
.hh-ocard .badge{color:var(--gold3);margin-top:6px}
.hh-ocard h3{font-size:26px;color:var(--maroon);line-height:1.1;padding:0 8px}
.hh-ocard p{color:var(--muted);font-size:14.5px;margin:0;padding:0 10px}
.hh-ocard .acts{justify-content:center;margin-top:6px}
.hh-ocard .hh-code{color:var(--maroon)}
.hh-ocard .hh-code b{color:var(--maroon)}
.hh-ocard .more{font-family:var(--caps);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold3);border-bottom:1px solid var(--gold)}
@media (max-width:760px){
  .hh-offers{padding-top:28px}
  .hh-ban{border-radius:20px}
  .hh-ban .hh-bslide{grid-template-columns:1fr;padding:30px 24px 52px;min-height:0;gap:18px}
  .hh-ban .art{width:150px;order:-1;justify-self:start}
  .hh-ban .art.seal{display:none}
  .hh-ban .nav{display:none}
  .hh-ocards{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin:26px calc(-1 * var(--gut)) 0;padding:4px var(--gut) 14px;scrollbar-width:none}
  .hh-ocards::-webkit-scrollbar{display:none}
  .hh-ocard{flex:0 0 68%;scroll-snap-align:center;opacity:1!important;transform:none!important}
  .hh-ocard h3{font-size:21px}
  .hh-ocard .hh-code span{display:none}
}
.hh-fest{background:linear-gradient(180deg,#fbf1dc,#f4e2bd)}
.hh-pc a.add{text-decoration:none}
.hh-pack{display:block;font-size:12.5px;color:var(--muted,#7a6a5a);margin:2px 0 4px;letter-spacing:.02em}
/* Compact top banner + promise strip (Admin → Settings → Home page → "Compact top banner") */
.hh-compact .hh-hgrid{padding-block:34px 38px;gap:32px;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}
.hh-compact .hh-hero h1{font-size:clamp(32px,3.9vw,56px);margin-top:12px}
.hh-compact .hh-hero .tline{font-size:clamp(20px,2.2vw,28px);margin-top:10px}
.hh-compact .hh-hero p{font-size:15.5px;margin:12px 0 20px}
.hh-compact .hh-arch{width:min(100%,270px)}
.hh-trust{background:#fbf6ec;border-bottom:1px solid #e3cf9f;border-top:3px solid var(--gold,#c8a24a)}
.hh-trust .w{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.hh-trust .it{display:flex;align-items:center;gap:12px;padding:16px 18px;border-right:1px solid #ead9b4}
.hh-trust .it:last-child{border-right:0}
.hh-trust .ic{width:42px;height:42px;flex:none;border-radius:50%;background:var(--maroon,#4B1013);color:var(--gold2,#E3C98A);display:flex;align-items:center;justify-content:center;font-size:20px}
.hh-trust b{display:block;font-family:var(--display,serif);font-size:19px;color:var(--maroon,#4B1013);font-weight:600;line-height:1.15}
.hh-trust span{font-size:13px;color:#7a6a5e}
@media (max-width:960px){ .hh-compact .hh-hgrid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);padding-block:26px 28px;gap:18px} .hh-compact .hh-arch{width:100%} }
@media (max-width:760px){
  .hh-compact .hh-hgrid{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);padding-block:18px 20px;gap:12px}
  .hh-compact .hh-hero .eyebrow{font-size:9px;letter-spacing:2px} .hh-compact .hh-hero .eyebrow::before{width:20px}
  .hh-compact .hh-hero h1{font-size:25px;line-height:1.05;margin-top:8px}
  .hh-compact .hh-hero .tline{font-size:15px;margin-top:6px}
  .hh-compact .hh-hero p{display:none}
  .hh-compact .hh-hero .ctas{margin-top:12px} .hh-compact .hh-hero .ctas .btn-h{padding:9px 12px;font-size:10px;letter-spacing:2px}
  .hh-compact .hh-hero .hh-dots{display:none}
  .hh-compact .hh-arch .hh-slide .cap b{font-size:13px}
  .hh-trust .w{grid-template-columns:repeat(4,1fr);padding-inline:6px}
  .hh-trust .it{flex-direction:column;text-align:center;padding:10px 4px;gap:5px;border-right:1px solid #ead9b4}
  .hh-trust .ic{width:34px;height:34px;font-size:16px}
  .hh-trust b{font-family:inherit;font-size:11.5px;font-weight:700;line-height:1.2} .hh-trust span{display:none}
}
.hh-trust.end{margin-top:0;border-top:3px solid var(--gold,#c8a24a);border-bottom:0}
body:has(.hh-trust.end) footer.site{margin-top:0}
