*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
:root{--pad:96px;--wrap:1180px;--r:18px;--gap:18px}
[data-theme=aurora]{--bg:#0a0b1e;--bg2:#12143a;--ink:#eef0ff;--mut:#9da3d6;--acc:#7c5cff;--acc2:#22d3ee;--card:rgba(255,255,255,.06);--line:rgba(255,255,255,.14);--fh:'Syne',sans-serif;--fb:'Inter',sans-serif;--btn-ink:#fff;--grad:linear-gradient(120deg,var(--acc),var(--acc2))}
[data-theme=gilded]{--bg:#090806;--bg2:#15110a;--ink:#f4ead6;--mut:#a89a7c;--acc:#d4af37;--acc2:#8a6d1d;--card:#14110b;--line:rgba(212,175,55,.3);--fh:'Playfair Display',serif;--fb:'Inter',sans-serif;--btn-ink:#120e04;--grad:linear-gradient(120deg,#f1d77a,#b8901f)}
[data-theme=editorial]{--bg:#efe9dd;--bg2:#e4dccb;--ink:#1d1a16;--mut:#6b6355;--acc:#2f4bff;--acc2:#ff5a36;--card:#fbf8f1;--line:#1d1a16;--fh:'Fraunces',serif;--fb:'Bricolage Grotesque',sans-serif;--btn-ink:#fff;--grad:#2f4bff}
[data-theme=volt]{--bg:#06080a;--bg2:#0d1217;--ink:#e8fff3;--mut:#7fa090;--acc:#c6ff3d;--acc2:#00e5ff;--card:#0d1217;--line:#1d2a24;--fh:'Space Grotesk',sans-serif;--fb:'Space Grotesk',sans-serif;--btn-ink:#06080a;--grad:linear-gradient(120deg,#c6ff3d,#00e5ff)}
[data-theme=sunset]{--bg:#fff4ec;--bg2:#ffe3d1;--ink:#3a1c2e;--mut:#8a5a6b;--acc:#ff5e62;--acc2:#ffb347;--card:#fff;--line:rgba(58,28,46,.12);--fh:'Bricolage Grotesque',sans-serif;--fb:'Inter',sans-serif;--btn-ink:#fff;--grad:linear-gradient(120deg,#ff5e62,#ffb347)}
[data-theme=racing]{--bg:#0e0e10;--bg2:#17171a;--ink:#f5f5f5;--mut:#a1a1aa;--acc:#ff6a00;--acc2:#ffb000;--card:#1a1a1e;--line:rgba(255,255,255,.12);--fh:'Chakra Petch',sans-serif;--fb:'Inter',sans-serif;--btn-ink:#1a0f05;--grad:linear-gradient(120deg,#ff6a00,#ff9a1f)}
[data-theme=ember]{--bg:#140a06;--bg2:#1f0f08;--ink:#fff1e8;--mut:#c49a85;--acc:#ff5a1f;--acc2:#ff9d00;--card:#231009;--line:rgba(255,140,60,.25);--fh:'Saira Condensed',sans-serif;--fb:'DM Sans',sans-serif;--btn-ink:#1a0a04;--grad:linear-gradient(120deg,#ff3d00,#ffa000)}
[data-theme=slate]{--bg:#0f1620;--bg2:#162130;--ink:#eaf0f8;--mut:#8fa1b8;--acc:#ff6a00;--acc2:#38bdf8;--card:#182435;--line:rgba(255,255,255,.1);--fh:'Exo 2',sans-serif;--fb:'Inter',sans-serif;--btn-ink:#1a0f05;--grad:linear-gradient(120deg,#ff6a00,#ff8a3d)}
[data-theme=paper]{--bg:#fff;--bg2:#fff3e8;--ink:#1c1c1e;--mut:#6b6b72;--acc:#ff6a00;--acc2:#ffb000;--card:#fff;--line:rgba(0,0,0,.1);--fh:'Chakra Petch',sans-serif;--fb:'Inter',sans-serif;--btn-ink:#1a0f05;--grad:linear-gradient(120deg,#ff6a00,#ff8f1f)}
[data-theme=clean]{--bg:#f5f7fa;--bg2:#e9eef5;--ink:#14213d;--mut:#5c6b82;--acc:#ff6a00;--acc2:#14213d;--card:#fff;--line:rgba(20,33,61,.12);--fh:'Archivo',sans-serif;--fb:'Inter',sans-serif;--btn-ink:#14213d;--grad:linear-gradient(120deg,#ff6a00,#ff8a3d)}
[data-theme=sand]{--bg:#f7f1e8;--bg2:#efe5d6;--ink:#2b2118;--mut:#7a6a58;--acc:#e8590c;--acc2:#f59f00;--card:#fffaf2;--line:rgba(43,33,24,.14);--fh:'Montserrat',sans-serif;--fb:'Inter',sans-serif;--btn-ink:#1f1309;--grad:linear-gradient(120deg,#f0680f,#f59f00)}
[data-theme=hardhat]{--bg:#121212;--bg2:#1c1c1c;--ink:#f4f4f0;--mut:#a8a89c;--acc:#ffc400;--acc2:#ff6a00;--card:#1e1e1e;--line:rgba(255,255,255,.12);--fh:'Oswald',sans-serif;--fb:'DM Sans',sans-serif;--btn-ink:#111;--grad:linear-gradient(120deg,#ffc400,#ff9f00)}
[data-theme=blueprint]{--bg:#0b2a5b;--bg2:#0e3470;--ink:#eaf3ff;--mut:#9fbbe6;--acc:#ffd23f;--acc2:#5ec8ff;--card:#0f3a7a;--line:rgba(255,255,255,.22);--fh:'Rajdhani',sans-serif;--fb:'Inter',sans-serif;--btn-ink:#0b2a5b;--grad:linear-gradient(120deg,#ffd23f,#ff9f1c)}
[data-theme=concrete]{--bg:#e8e8e6;--bg2:#d9d9d6;--ink:#1a1a1a;--mut:#5e5e5a;--acc:#f5b700;--acc2:#1a1a1a;--card:#f4f4f2;--line:rgba(0,0,0,.16);--fh:'Archivo',sans-serif;--fb:'Inter',sans-serif;--btn-ink:#111;--grad:linear-gradient(120deg,#f5b700,#ffd23f)}
body{background:var(--bg);color:var(--ink);font:16px/1.6 var(--fb)}
.wrap{max-width:var(--wrap);margin:auto;padding:0 24px}.narrow{max-width:640px}
h1,h2{font-family:var(--fh);line-height:1.05;letter-spacing:-.02em}
h1{font-size:clamp(2.6rem,7.5vw,6rem);font-weight:800}h2{font-size:clamp(1.8rem,4vw,3rem);margin-bottom:18px}
p{color:var(--mut);max-width:62ch}
.nav{position:fixed;inset:0 0 auto;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:14px 28px;backdrop-filter:blur(16px);background:color-mix(in srgb,var(--bg) 70%,transparent);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font:800 1.1rem var(--fh)}.brand img{height:34px;border-radius:6px}
.nav nav{display:flex;gap:22px;align-items:center}.nav nav a{color:var(--ink);text-decoration:none;font-size:.95rem}
.btn{display:inline-block;border:0;cursor:pointer;background:var(--grad);color:var(--btn-ink)!important;padding:14px 28px;border-radius:999px;font:600 1rem var(--fb);text-decoration:none;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px -8px var(--acc)}.btn.sm{padding:8px 18px}.btn.ghost{background:none;color:var(--ink)!important;border:1px solid var(--line)}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px}
.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;background:var(--bg) var(--banner) center/cover}
.hero:has(.mesh)::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,color-mix(in srgb,var(--bg) 55%,transparent),var(--bg))}
.mesh{position:absolute;inset:0;--mx:30%;--my:30%;background:radial-gradient(500px circle at var(--mx) var(--my),color-mix(in srgb,var(--acc) 45%,transparent),transparent 70%),radial-gradient(600px circle at 85% 80%,color-mix(in srgb,var(--acc2) 35%,transparent),transparent 70%);transition:background .3s}
.hero-in{position:relative;padding-top:120px;padding-bottom:90px}.hero p{font-size:1.2rem;margin:24px 0 32px;color:var(--ink);opacity:.8}.cta{display:flex;gap:14px;flex-wrap:wrap}
.marquee{position:absolute;bottom:0;left:0;right:0;overflow:hidden;border-top:1px solid var(--line);padding:14px 0;background:color-mix(in srgb,var(--bg) 60%,transparent)}
.marquee div{display:flex;gap:56px;width:max-content;animation:mq 30s linear infinite}.marquee span{font:700 1.1rem var(--fh);opacity:.7;white-space:nowrap}
@keyframes mq{to{transform:translateX(-50%)}}
.sec{padding:var(--pad) 0}.sec:nth-of-type(even){background:var(--bg2)}
.stats .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:24px}.stats b{display:block;font:800 clamp(2.6rem,6vw,4.5rem) var(--fh);background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}[data-theme=editorial] .stats b{color:var(--acc);background:none}
.stats span{color:var(--mut)}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 30px}.chips button{border:1px solid var(--line);background:none;color:var(--ink);padding:8px 18px;border-radius:999px;cursor:pointer;font:inherit}.chips .on{background:var(--grad);color:var(--btn-ink);border-color:transparent}
.empty{padding:40px 0}
.mem{position:relative;border-radius:var(--r);overflow:hidden;background:var(--card);border:1px solid var(--line)}.mem[hidden]{display:none}
.mem img{width:100%;display:block;cursor:zoom-in}
figcaption{padding:14px 16px;display:grid;gap:2px}figcaption b{font:700 1rem var(--fh)}figcaption span{font-size:.85rem;color:var(--mut)}figcaption em{font-size:.9rem;font-style:normal;color:var(--acc)}
.wall{--cols:3}
.l-masonry .wall{columns:var(--cols);column-gap:var(--gap)}.l-masonry .mem{break-inside:avoid;margin-bottom:var(--gap)}
.l-grid .wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--gap)}.l-grid .mem img{aspect-ratio:1;object-fit:cover}
.l-grid .mem{border:0}.l-grid figcaption{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,rgba(0,0,0,.85));color:#fff}.l-grid figcaption span{color:#ddd}
.l-polaroid .wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:calc(var(--gap)*1.6);padding:20px}
.l-polaroid .mem{background:#fff;color:#222;padding:12px 12px 0;border-radius:4px;transform:rotate(calc((var(--i) - 3)*1.6deg));box-shadow:0 18px 40px -16px rgba(0,0,0,.6);transition:transform .3s}
.l-polaroid .mem:hover{transform:rotate(0) scale(1.04);z-index:2}.l-polaroid .mem img{aspect-ratio:1;object-fit:cover;border-radius:2px}.l-polaroid figcaption span{color:#666}
.l-film .wall{display:flex;gap:var(--gap);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:20px}.l-film .mem{flex:0 0 min(320px,80vw);scroll-snap-align:start}.l-film .mem img{aspect-ratio:3/4;object-fit:cover}
.l-mag .wall{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-flow:dense;gap:var(--gap)}.l-mag .mem img{height:100%;min-height:220px;aspect-ratio:1;object-fit:cover}
.l-mag .mem:nth-child(5n+1){grid-column:span 2;grid-row:span 2}.l-mag .mem:nth-child(5n+1) img{aspect-ratio:auto}
.l-mag figcaption{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,rgba(0,0,0,.85));color:#fff}.l-mag figcaption span{color:#ddd}
.sitegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--gap)}
.site{padding:26px;border:1px solid var(--line);border-radius:var(--r);background:var(--card);display:grid;gap:4px}.site b{font:700 1.3rem var(--fh)}.site span{color:var(--mut)}
[data-theme=editorial] .site,[data-theme=editorial] .mem{border-width:2px;box-shadow:6px 6px 0 var(--ink)}
[data-theme=volt] .site,[data-theme=volt] .mem{border-radius:4px}
.form{display:grid;gap:16px;margin-top:20px}label{display:grid;gap:6px;font-weight:500}
input,select,textarea{width:100%;padding:14px 16px;border-radius:calc(var(--r)*.6);border:1px solid var(--line);background:var(--card);color:var(--ink);font:inherit}
.drop span{padding:30px;border:2px dashed var(--line);border-radius:var(--r);text-align:center;color:var(--mut)}.drop input{position:absolute;opacity:0;width:1px;height:1px}
.hp{position:absolute;left:-9999px}.note{padding:14px 18px;border-radius:12px;margin-top:14px}.ok{background:#12b76a22;border:1px solid #12b76a}.bad{background:#f0443822;border:1px solid #f04438}
footer{padding:40px 0;border-top:1px solid var(--line);color:var(--mut);text-align:center}
#lb{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.92);display:none;flex-direction:column;align-items:center;justify-content:center;padding:20px;cursor:zoom-out}#lb.on{display:flex}#lb img{max-width:94vw;max-height:80vh;border-radius:10px}#lb p{color:#fff;margin-top:14px}
@media(max-width:800px){.wall{--cols:2}.l-mag .wall{grid-template-columns:repeat(2,1fr)}.nav nav a:not(.btn){display:none}}
@media(max-width:480px){.wall{--cols:1}}
@media(prefers-reduced-motion){*{animation:none!important;transition:none!important}}

/* light-theme depth + brand-slanted buttons */
[data-theme=paper] .mem,[data-theme=paper] .site,[data-theme=clean] .mem,[data-theme=clean] .site,[data-theme=sand] .mem,[data-theme=sand] .site,[data-theme=sunset] .mem,[data-theme=sunset] .site{box-shadow:0 14px 34px -18px rgba(30,20,10,.35)}
[data-theme=racing] .btn,[data-theme=ember] .btn,[data-theme=slate] .btn,[data-theme=paper] .btn,[data-theme=clean] .btn{border-radius:0;clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%);padding-inline:34px}
[data-theme=racing] .btn.ghost,[data-theme=ember] .btn.ghost,[data-theme=slate] .btn.ghost,[data-theme=paper] .btn.ghost,[data-theme=clean] .btn.ghost{background:var(--line)}
[data-theme=racing] .hero::after,[data-theme=ember] .hero::after,[data-theme=slate] .hero::after,[data-theme=paper] .hero::after,[data-theme=clean] .hero::after{content:"";position:absolute;top:0;bottom:0;right:7%;width:70px;background:var(--grad);transform:skewX(-18deg);opacity:.2;box-shadow:-110px 0 0 -30px var(--acc);pointer-events:none}
.hero-in,.marquee{z-index:1}
.brand img{height:34px;width:auto}

/* construction vibe */
.haz{display:none;height:14px;background:repeating-linear-gradient(-45deg,var(--acc) 0 14px,#111 14px 28px)}.vibe .haz{display:block}
.vibe h2::after{content:"";display:block;width:76px;height:8px;margin-top:12px;background:repeating-linear-gradient(-45deg,var(--acc) 0 8px,#111 8px 16px)}
.vibe .mesh{background:linear-gradient(color-mix(in srgb,var(--ink) 7%,transparent) 1px,transparent 1px) 0 0/48px 48px,linear-gradient(90deg,color-mix(in srgb,var(--ink) 7%,transparent) 1px,transparent 1px) 0 0/48px 48px,radial-gradient(500px circle at var(--mx) var(--my),color-mix(in srgb,var(--acc) 40%,transparent),transparent 70%),radial-gradient(600px circle at 85% 80%,color-mix(in srgb,var(--acc2) 30%,transparent),transparent 70%)}
:is([data-theme=hardhat],[data-theme=blueprint],[data-theme=concrete]) .btn{border-radius:0;clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%);padding-inline:34px}
:is([data-theme=hardhat],[data-theme=blueprint],[data-theme=concrete]) .btn.ghost{background:var(--line)}
[data-theme=concrete] .mem,[data-theme=concrete] .site{box-shadow:0 14px 34px -18px rgba(0,0,0,.4)}
/* memory cards */
.mem{cursor:pointer}
.story{font-size:.92rem;color:var(--mut);margin-top:8px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;max-width:none}
.l-polaroid .story{color:#555}
.l-grid .story,.l-mag .story,.l-bento .story{display:none}
.nopic{min-height:200px;display:flex;align-items:flex-end;overflow:hidden}
.nopic::before{content:"\201C";position:absolute;top:6px;left:16px;font:800 4.5rem/1 var(--fh);color:var(--acc);opacity:.55}
.nopic figcaption{position:static!important;background:none!important;color:var(--ink)!important;padding-top:56px;flex:1}
.nopic figcaption span{color:var(--mut)!important}.nopic .story{display:-webkit-box!important}
.l-polaroid .nopic figcaption{color:#222!important}.l-polaroid .nopic figcaption span{color:#666!important}
textarea{resize:vertical}
/* extra wall styles */
.l-timeline .wall{position:relative;display:grid;gap:calc(var(--gap)*2);padding:10px 0}
.l-timeline .wall::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:8px;transform:translateX(-50%);background:repeating-linear-gradient(-45deg,var(--acc) 0 8px,#111 8px 16px)}
.l-timeline .mem{width:46%}.l-timeline .mem:nth-child(odd){justify-self:start}.l-timeline .mem:nth-child(even){justify-self:end}
.l-timeline .mem::after{content:"";position:absolute;top:26px;width:20px;height:20px;border-radius:50%;background:var(--acc);border:4px solid var(--bg)}
.l-timeline .mem:nth-child(odd)::after{right:calc(-8.7% - 12px)}.l-timeline .mem:nth-child(even)::after{left:calc(-8.7% - 12px)}
.l-timeline .mem img{max-height:380px;object-fit:cover}
.l-bento .wall{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;grid-auto-flow:dense;gap:var(--gap)}
.l-bento .mem{height:100%}.l-bento .mem img{height:100%;object-fit:cover}
.l-bento .mem:nth-child(6n+1){grid-column:span 2;grid-row:span 2}.l-bento .mem:nth-child(6n+4){grid-column:span 2}
.l-bento figcaption{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,rgba(0,0,0,.85));color:#fff}.l-bento figcaption span{color:#ddd}
.l-badge .wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:calc(var(--gap)*1.4)}
.l-badge .mem{padding-top:30px}
.l-badge .mem::before{content:"";position:absolute;top:0;left:0;right:0;height:22px;background:repeating-linear-gradient(-45deg,var(--acc) 0 10px,#111 10px 20px)}
.l-badge .mem::after{content:"";position:absolute;top:6px;left:50%;width:56px;height:10px;margin-left:-28px;border-radius:99px;background:var(--bg);box-shadow:inset 0 1px 3px rgba(0,0,0,.5)}
.l-badge .mem img{aspect-ratio:4/3;object-fit:cover}.l-badge figcaption b{font-size:1.2rem}.l-badge figcaption em{border-top:2px dashed var(--line);margin-top:8px;padding-top:8px}
.l-journal .wall{display:grid;gap:var(--gap)}
.l-journal .mem{display:grid;grid-template-columns:minmax(0,340px) 1fr}.l-journal .mem img{height:100%;min-height:220px;object-fit:cover}
.l-journal figcaption{padding:26px 30px;align-content:center;gap:6px}.l-journal figcaption b{font-size:1.4rem}.l-journal .story{-webkit-line-clamp:7;font-size:1rem}
.l-journal .nopic{display:grid;grid-template-columns:1fr}
.l-sheet .wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:calc(var(--gap)*1.3)}
.l-sheet .mem{border:2px solid color-mix(in srgb,var(--ink) 55%,transparent);border-radius:0;padding:12px;background:transparent}
.l-sheet .mem::before{content:"";position:absolute;inset:5px;border:1px dashed var(--line);pointer-events:none}
.l-sheet .mem img{aspect-ratio:4/3;object-fit:cover;border-radius:0}
.l-sheet figcaption{margin-top:10px;border-top:2px solid color-mix(in srgb,var(--ink) 55%,transparent);padding:10px 2px 2px}
@media(max-width:800px){.l-bento .wall{grid-template-columns:repeat(2,1fr)}.l-timeline .wall::before{left:8px}.l-timeline .mem{width:calc(100% - 36px)!important;justify-self:end!important}.l-timeline .mem::after{left:-36px!important;right:auto!important}}
@media(max-width:700px){.l-journal .mem{grid-template-columns:1fr}}
/* lightbox with story */
#lb{padding:16px}#lb .box{max-width:min(92vw,720px);max-height:92vh;overflow:auto;background:var(--card);color:var(--ink);border-radius:var(--r);cursor:default}
#lb img{max-width:100%;max-height:60vh;width:100%;object-fit:contain;border-radius:0;background:#000;display:block}
#lb .t{padding:18px 22px;display:grid;gap:4px}#lb .t b{font:700 1.3rem var(--fh)}#lb .t span{color:var(--mut)}#lb .t em{font-style:normal;color:var(--acc)}
#lb .story{display:block;-webkit-line-clamp:unset;color:var(--ink);margin-top:10px;font-size:1rem}

/* owners */
.og{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:calc(var(--gap)*2);margin-top:30px}
.owner{position:relative;display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:start;padding:28px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.owner .ph{width:150px;aspect-ratio:4/5;object-fit:cover;clip-path:polygon(14% 0,100% 0,86% 100%,0 100%)}
.owner .ini{display:grid;place-items:center;background:var(--grad);color:var(--btn-ink);font:800 3rem var(--fh)}
.owner blockquote{font-size:1.05rem;line-height:1.65;color:var(--ink);margin-bottom:18px}.owner blockquote::before{content:"\201C";display:block;font:800 3rem/.8 var(--fh);color:var(--acc)}
.owner b{display:block;font:700 1.25rem var(--fh)}.owner span{color:var(--acc);font-size:.92rem}
.vibe .owner::before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:repeating-linear-gradient(-45deg,var(--acc) 0 8px,#111 8px 16px)}
@media(max-width:560px){.og{grid-template-columns:1fr}.owner{grid-template-columns:1fr}}

/* gift campaign */
.pill{display:inline-block;margin-bottom:20px;padding:7px 18px;border:1px solid var(--acc);color:var(--acc);border-radius:99px;text-decoration:none;font-weight:600;font-size:.92rem;background:color-mix(in srgb,var(--bg) 60%,transparent)}
.gift-in{position:relative;display:grid;grid-template-columns:minmax(0,260px) 1fr;gap:40px;align-items:center;padding:44px;border:2px solid var(--acc);border-radius:var(--r);background:var(--card);overflow:hidden}
.vibe .gift-in::before{content:"";position:absolute;top:0;left:0;right:0;height:10px;background:repeating-linear-gradient(-45deg,var(--acc) 0 10px,#111 10px 20px)}
.gimg img,.gimg svg{width:100%;aspect-ratio:1;object-fit:cover;border-radius:calc(var(--r)*.7);display:block}
.gift .prize{margin:12px 0;color:var(--ink)}.gift .prize b{color:var(--acc)}
.cd{display:flex;gap:10px;margin:18px 0 24px;flex-wrap:wrap}.cd span{display:grid;text-align:center;min-width:72px;padding:10px 8px;border:1px solid var(--line);border-radius:10px;color:var(--mut);font-size:.8rem}.cd b{font:800 1.9rem/1.1 var(--fh);color:var(--ink)}
.rules{display:block;margin-top:16px;color:var(--mut)}
@media(max-width:700px){.gift-in{grid-template-columns:1fr;padding:28px}.gimg{max-width:180px}}

/* reactions */
.react{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
.rb{display:inline-flex;gap:5px;align-items:center;border:1px solid var(--line);background:color-mix(in srgb,var(--ink) 6%,transparent);color:inherit;border-radius:99px;padding:3px 10px;cursor:pointer;font:inherit;font-size:.85rem;transition:transform .15s}
.rb:hover{transform:translateY(-2px)}.rb.on{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 25%,transparent)}.rb i{font-style:normal;min-width:.5em}
.l-grid .rb,.l-mag .rb,.l-bento .rb{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.3)}
.l-polaroid .rb{background:#f3f3f3;color:#222;border-color:#ddd}.l-polaroid .rb.on{background:#ffe4cc;border-color:var(--acc)}
