:root{--lift:0.6rem} /* footer logo height: bigger number lifts the logo further above the line */
:root{--c:#d83067;--cream:#fff5f4;--ink:#1b1b1b;--line:#ecd9d8}
*{-webkit-tap-highlight-color:transparent}
body{font-family:'General Sans',system-ui,sans-serif;background:var(--cream);color:var(--ink);line-height:1.55}
a{color:inherit}
:focus-visible{outline:3px solid var(--c);outline-offset:2px}
.hdr{border-bottom:1px solid var(--line)}
.hdr img{height:26px}
.hdr .nav a{text-decoration:none;font-weight:500;margin-left:1.1rem}
.hdr .nav a:hover{color:var(--c)}
.region{font-size:.85rem;background:#fff;border:1px solid var(--line);border-radius:99px;padding:.3rem .8rem;text-decoration:none;white-space:nowrap}
.region b{color:var(--c)}
.btn-p{background:var(--c);color:#fff;border:0;border-radius:99px;padding:.75rem 1.6rem;font-weight:600;text-decoration:none;display:inline-block}
.btn-p:hover{background:#b8244f;color:#fff}
.btn-o{border:2px solid var(--ink);border-radius:99px;padding:.65rem 1.5rem;font-weight:600;text-decoration:none;display:inline-block;background:transparent}
.btn-o:hover{background:var(--ink);color:var(--cream)}
h1,h2{font-weight:700;letter-spacing:-.02em}
.hero h1{font-size:clamp(2.2rem,6vw,3.8rem);line-height:1.05}
.search{max-width:520px;border:2px solid var(--ink);border-radius:99px;background:#fff;padding:.7rem 1.2rem;width:100%;font-size:1rem}
.search:focus{outline:3px solid var(--c);outline-offset:2px}
.chips{display:flex;gap:.5rem;overflow-x:auto;padding:.3rem 0 .6rem;scrollbar-width:none}
.chip{flex:none;border:1.5px solid var(--ink);background:transparent;border-radius:99px;padding:.3rem .95rem;font-size:.92rem;text-transform:capitalize;color:var(--ink)}
.chip.on{background:var(--c);border-color:var(--c);color:#fff}
.ph{display:block;position:relative;border-radius:16px;overflow:hidden;background:#e4e2e2;aspect-ratio:1}
.ph img{width:100%;height:100%;object-fit:cover;display:block}
.tagb{position:absolute;top:.6rem;left:.6rem;background:var(--ink);color:#fff;font-size:.75rem;font-weight:600;padding:.15rem .6rem;border-radius:99px}
.tagb.nw{background:var(--c)}
.meta{display:flex;justify-content:space-between;align-items:center;padding:.55rem .2rem 0;gap:.5rem}
.nm{text-decoration:none;font-weight:600;text-transform:capitalize}
.nm:hover{color:var(--c)}
.dot{width:20px;height:20px;border-radius:50%;border:2px solid var(--line);padding:0;margin-left:.3rem}
.dot.b{background:#111}.dot.w{background:#fff}.dot.on{border-color:var(--c)}
.dots{flex:none}
.sec{padding-top:3.5rem;padding-bottom:3.5rem}
.steps{counter-reset:s;list-style:none;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.steps li{counter-increment:s;background:#fff;border-radius:16px;padding:1.3rem}
.steps li:before{content:counter(s);display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--c);color:#fff;font-weight:700;margin-bottom:.6rem}
.rev{background:#fff;border-radius:16px;padding:1.3rem;height:100%}
.av{width:46px;height:46px;border-radius:50%;background:var(--c);color:#fff;display:grid;place-items:center;font-weight:700;overflow:hidden}
.av img{width:100%;height:100%;object-fit:cover}
.band{background:var(--ink);color:var(--cream);border-radius:20px;padding:2rem}
.accordion{--bs-accordion-bg:transparent;--bs-accordion-btn-bg:transparent;--bs-accordion-active-bg:#fff;--bs-accordion-active-color:var(--ink);--bs-accordion-btn-focus-box-shadow:none;--bs-accordion-border-color:var(--line)}
.accordion-button{font-weight:600}
.ftr{border-top:1px solid var(--line);font-size:.9rem}
.pick{min-height:100vh;display:grid;place-items:center;text-align:center;padding:2rem 1rem}
.pick select{appearance:none;-webkit-appearance:none;border:2px solid var(--ink);border-radius:99px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%231b1b1b' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 1.3rem center/14px;padding:.7rem 3.2rem .7rem 1.5rem;font-size:1rem;width:100%;max-width:340px;text-align:left}


.ann{background:var(--c);color:#fff;text-align:center;font-size:.85rem;padding:.4rem 1rem}
.hero .art{position:relative;height:440px}
.tee{position:absolute;width:46%;border-radius:18px;box-shadow:0 16px 34px rgba(27,27,27,.18);transform:rotate(var(--r))}
.tee.a{left:0;top:30px;--r:-6deg}.tee.b{right:0;top:0;--r:5deg;z-index:2}.tee.c{left:27%;bottom:0;--r:-1.5deg;z-index:3}
.mq{overflow:hidden;background:var(--ink);color:var(--cream);padding:.8rem 0;white-space:nowrap;font-weight:600;font-size:1.1rem}
.mq div{display:inline-block}.mq span{margin:0 1.4rem}.mq i{color:var(--c);font-style:normal}
.tile{position:relative;display:block;border-radius:18px;overflow:hidden;aspect-ratio:3/2;background:#e4e2e2}
.tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.tile span{position:absolute;left:.8rem;bottom:.8rem;background:var(--cream);padding:.3rem 1rem;border-radius:99px;font-weight:600;text-transform:capitalize}
.rev{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);background:#fff;border-radius:18px;overflow:hidden;height:100%}
.rev img{width:100%;height:100%;min-height:320px;object-fit:cover;object-position:top}
.rev.nop{grid-template-columns:1fr}
@media(max-width:600px){.rev{grid-template-columns:1fr}.rev img{height:340px}.hero .art{height:340px}}
.ft{background:var(--ink);color:var(--cream);margin-top:4rem;overflow:hidden}
.ft a{text-decoration:none}.ft .links{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;justify-content:center}.ft .links a{white-space:nowrap}@media(min-width:768px){.ft .links{justify-content:flex-end}}.ft .links a:hover{color:var(--c)}
.soc a{width:44px;height:44px;border:1px solid rgba(255,245,244,.4);border-radius:50%;display:inline-grid;place-items:center;transition:background .25s,border-color .25s,transform .25s}
.soc a:hover{background:var(--c);border-color:var(--c);transform:translateY(-3px)}
.ft .container{container-type:inline-size}
.wm{width:min(100%,1000px);aspect-ratio:787/161;margin:clamp(3.5rem,9vw,7rem) auto var(--lift);position:relative;z-index:2}.wm img{position:absolute;left:0;top:0;width:100%;display:block}
.bar-in{padding:calc(min(100cqw,1000px)*.0635 - var(--lift) + .9rem) 0 1rem}
.ft .art{width:100%;display:block}
.ft .bar{border-top:1px solid rgba(255,245,244,.2);font-size:.9rem}
@media(prefers-reduced-motion:no-preference){
.btn-p,.btn-o{transition:transform .2s,background .2s,color .2s}.btn-p:hover,.btn-o:hover{transform:translateY(-2px)}
.pc img,.tile:hover img{transition:transform .5s}.pc:hover .ph img,.tile:hover img{transform:scale(1.05)}
.up{opacity:0;animation:up .9s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--d,0)*1s)}
@keyframes up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.tee{animation:fl 6s ease-in-out infinite}.tee.b{animation-delay:-2s}.tee.c{animation-delay:-4s}
@keyframes fl{0%,100%{transform:translateY(0) rotate(var(--r))}50%{transform:translateY(-14px) rotate(var(--r))}}
.mq div{animation:mq 30s linear infinite}@keyframes mq{to{transform:translateX(-50%)}}
.js .rv{opacity:0;transform:translateY(26px);transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1)}.js .rv.in{opacity:1;transform:none}
.steps li{transition:transform .25s}.steps li:hover{transform:translateY(-4px)}
.pick>div>*{opacity:0;animation:up .8s cubic-bezier(.2,.7,.2,1) forwards}.pick>div>*:nth-child(2){animation-delay:.1s}.pick>div>*:nth-child(3){animation-delay:.2s}.pick>div>*:nth-child(n+4){animation-delay:.3s}
}
.vb{color:var(--c);font-size:.85rem;font-weight:600;margin-left:.6rem;white-space:nowrap}.ann a{color:#fff;font-weight:700;text-decoration:underline}
.fsel{appearance:none;-webkit-appearance:none;border:2px solid var(--ink);border-radius:99px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%231b1b1b' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 1rem center/12px;padding:.6rem 2.6rem .6rem 1.2rem;font-size:.95rem;width:100%;color:var(--ink);font-family:inherit}
.soc{display:inline-flex;gap:.5rem}
@media(max-width:575px){.hdr.py-3{padding-top:.55rem!important;padding-bottom:.55rem!important}.hdr img{height:19px}.region{font-size:.72rem;padding:.2rem .65rem}}
.banner{position:relative;border-radius:22px;overflow:hidden;min-height:clamp(460px,48vw,600px);display:grid;place-items:center;color:var(--cream);background-color:var(--c);background-image:url(../img/hero.webp);background-size:cover;background-position:center;background-repeat:no-repeat}
.banner-in{position:relative;z-index:1;padding:3rem 1.2rem}
.banner h1{font-size:clamp(2.1rem,6vw,4.2rem);line-height:1.05;max-width:16ch;margin:0 auto 1rem;text-wrap:balance}
.banner p{font-size:clamp(1rem,2vw,1.25rem);max-width:520px;margin:0 auto 1.6rem}
.banner .btn-p{background:var(--cream);color:var(--ink)}.banner .btn-p:hover{background:var(--c);color:#fff}
.banner .btn-o{border-color:var(--cream);color:var(--cream)}.banner .btn-o:hover{background:var(--cream);color:var(--ink)}
.banner{margin-bottom:clamp(1.5rem,4vw,3rem)}.tile img{object-position:center 40%}.accordion-body a{color:var(--c);font-weight:500}
#hdr{position:sticky;top:0;z-index:1030;background:var(--cream)}
html{scroll-padding-top:72px}
.burger{border:0;background:transparent;color:var(--ink);padding:.2rem .3rem;line-height:0}
.mnav{display:none;border-top:1px solid var(--line);background:var(--cream)}.mnav.open{display:block}
.mnav a{padding:.6rem 0;font-weight:500;text-decoration:none}.mnav .region{display:inline-block;width:fit-content;margin:.3rem 0 .4rem;padding:.35rem .9rem;font-size:.85rem}
.totop{position:fixed;right:1rem;bottom:1rem;width:48px;height:48px;border-radius:50%;border:0;background:var(--c);display:grid;place-items:center;box-shadow:0 8px 20px rgba(27,27,27,.25);opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .3s,transform .3s,background .2s;z-index:1040}
.totop.show{opacity:1;pointer-events:auto;transform:none}.totop:hover{background:#b8244f}
@media(max-width:575px){.meta{flex-direction:column;align-items:flex-start;gap:.35rem}.dots .dot{margin-left:0;margin-right:.35rem}}


.banner:before{content:"";position:absolute;inset:0;background:rgba(27,27,27,0.03)}