/* Lucian UX/UI Prompt #045 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#045 */
/* Lucian UX/UI Prompt #039 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#039 */
/* Lucian UX/UI Prompt #293 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#293 */
/* Lucian UX/UI Prompt #061 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#061 */
/* Lucian UX/UI Prompt #044 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#044 */
/* Lucian UX/UI Prompt #295 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#295 */
/* Lucian UX/UI Prompt #070 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#070 */
/* Lucian UX/UI Prompt #012 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#012 */
/* Lucian UX/UI Prompt #343 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#343 */

/* Native Lucian tokens, mapped to the site's forest / ivory / walnut palette. */
:root{
  --ux-page:#f5f3ec;--ux-surface:#fffef9;--ux-surface-2:#eeeee4;--ux-surface-3:#e1e4d7;
  --ux-ink:#203a2d;--ux-ink-2:#526151;--ux-ink-3:#697466;
  --ux-line:rgba(32,58,45,.13);--ux-line-2:rgba(32,58,45,.25);
  --ux-accent:#315b42;--ux-accent-2:#8c754e;--ux-accent-soft:rgba(49,91,66,.12);--ux-accent-ink:#fffef9;
  --ux-mint:#3a7457;--ux-warn:#9a641f;--ux-danger:#b13d39;
  --ux-glass:rgba(255,254,249,.7);--ux-glass-line:rgba(255,254,249,.85);
  --ux-shadow:rgba(27,47,34,.14);--ux-shadow-strong:rgba(27,47,34,.3);
  --ux-grad:linear-gradient(120deg,#52755b,#9aab7b 55%,#b9ac88);
  --ux-ease:cubic-bezier(.2,.8,.2,1);--ux-spring:cubic-bezier(.34,1.45,.64,1);
}
html[data-theme="dark"]{
  --ux-page:#111d16;--ux-surface:#1b2b20;--ux-surface-2:#26392a;--ux-surface-3:#344936;
  --ux-ink:#f1f0e5;--ux-ink-2:#c2cbb9;--ux-ink-3:#a3b09c;
  --ux-line:rgba(226,234,211,.13);--ux-line-2:rgba(226,234,211,.26);
  --ux-accent:#bdce94;--ux-accent-2:#c4ae83;--ux-accent-soft:rgba(189,206,148,.15);--ux-accent-ink:#162319;
  --ux-mint:#a1c8a7;--ux-warn:#e7b46c;--ux-danger:#f49b8f;
  --ux-glass:rgba(27,43,32,.82);--ux-glass-line:rgba(226,234,211,.18);
  --ux-shadow:rgba(0,0,0,.35);--ux-shadow-strong:rgba(0,0,0,.62);
  --ux-grad:linear-gradient(120deg,#c3d59d,#9cbaa1 55%,#d3c4a3);
}
.ux,.ux *,.ux *::before,.ux *::after{box-sizing:border-box}
.ux{font-family:inherit;color:var(--ux-ink);-webkit-font-smoothing:antialiased;letter-spacing:-.01em;-webkit-tap-highlight-color:transparent;word-break:normal;overflow-wrap:break-word}
:where(.ux) :is(button,input,textarea,select){font:inherit;color:inherit}
:where(.ux) button{cursor:pointer}
.ux :focus-visible{outline:2px solid var(--ux-accent);outline-offset:3px}
.ux [hidden]{display:none!important}


.u045{position:relative;width:340px;height:520px;border-radius:34px;overflow:hidden;isolation:isolate;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),0 30px 60px -36px var(--ux-shadow-strong)}
.u045-page{position:absolute;inset:0;padding:78px 20px 20px;transform-origin:50% 0;transition:transform .7s var(--ux-ease),filter .7s var(--ux-ease)}
.u045.is-open .u045-page{transform:scale(.92) translateY(14px);filter:blur(3px)}
.u045-hero{position:relative;height:200px;border-radius:24px;overflow:hidden;background:linear-gradient(150deg,#b4a27a,#9a755b 45%,#4d725b)}
.u045-hero::before{content:"";position:absolute;width:190px;height:190px;right:-40px;top:-50px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.6),transparent 65%)}
.u045-hero::after{content:"";position:absolute;left:-30px;right:-30px;bottom:-60px;height:130px;border-radius:50%;background:rgba(20,10,40,.28);filter:blur(10px)}
.u045-hero b{position:absolute;left:18px;bottom:16px;z-index:1;font-size:12px;font-weight:800;letter-spacing:.08em;color:#fff}
.u045-page h3{margin:18px 0 6px;font-size:25px;line-height:1.18;font-weight:800;letter-spacing:-.045em}
.u045-page p{margin:0;font-size:13.5px;line-height:1.55;color:var(--ux-ink-3)}
.u045-row{display:flex;gap:8px;margin-top:16px}
.u045-row i{flex:1;height:64px;border-radius:16px;background:var(--ux-surface-2)}
.u045-top{position:absolute;left:0;right:0;top:0;height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 14px 0 22px;z-index:3;color:var(--ux-ink);transition:color .4s}
.u045.is-open .u045-top{color:#F4F0E8}
.u045-logo{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:800;letter-spacing:-.03em}
.u045-logo i{width:20px;height:20px;border-radius:7px;background:var(--ux-grad)}
.u045-ham{position:relative;width:46px;height:46px;border:0;padding:0;border-radius:50%;background:var(--ux-surface-2);color:inherit;transition:transform .4s var(--ux-spring),background-color .4s}
.u045.is-open .u045-ham{background:rgba(255,255,255,.12)}
.u045-ham:hover{transform:scale(1.06)}
.u045-ham:active{transform:scale(.9)}
.u045-ham:focus-visible{outline:2px solid var(--ux-accent);outline-offset:3px}
.u045-ham i{position:absolute;left:50%;top:50%;width:18px;height:2px;margin:-1px 0 0 -9px;border-radius:2px;background:currentColor;transition:transform .55s var(--ux-spring),opacity .25s,width .4s var(--ux-ease)}
.u045-ham i:nth-child(1){transform:translateY(-6px)}
.u045-ham i:nth-child(2){width:12px;margin-left:-3px}
.u045-ham i:nth-child(3){transform:translateY(6px)}
.u045.is-open .u045-ham i:nth-child(1){transform:rotate(45deg)}
.u045.is-open .u045-ham i:nth-child(2){opacity:0;transform:translateX(8px)}
.u045.is-open .u045-ham i:nth-child(3){transform:rotate(-45deg)}
.u045-sheet{position:absolute;inset:0;z-index:2;padding:96px 26px 26px;display:flex;flex-direction:column;background:radial-gradient(120% 70% at 100% 0%,#294c40,transparent 60%),radial-gradient(90% 60% at 0% 100%,#527565,transparent 65%),#14291f;color:#F4F0E8;clip-path:circle(0 at var(--cx,300px) var(--cy,34px));visibility:hidden;transition:clip-path .7s var(--ux-ease),visibility 0s .7s}
.u045.is-open .u045-sheet{clip-path:circle(640px at var(--cx,300px) var(--cy,34px));visibility:visible;transition:clip-path .8s var(--ux-ease),visibility 0s}
.u045-sheet small{font-size:11.5px;font-weight:700;letter-spacing:.14em;color:rgba(244,240,232,.45)}
.u045-nav{margin:12px 0 0;padding:0;list-style:none}
.u045-ln{display:flex;align-items:baseline;gap:12px;padding:7px 0;font-size:34px;font-weight:800;letter-spacing:-.05em;color:inherit;text-decoration:none;opacity:0;transform:translateY(26px);transition:opacity .25s,transform .3s var(--ux-ease)}
.u045-ln em{font-style:normal;font-size:12px;font-weight:700;letter-spacing:0;color:rgba(244,240,232,.4);font-variant-numeric:tabular-nums}
.u045-ln span{background:linear-gradient(90deg,#c8d5aa,#9cbda7 55%,#d5dfc4) no-repeat 0 100%/0 3px;padding-bottom:2px;transition:background-size .45s var(--ux-ease)}
.u045-ln:hover span,.u045-ln:focus-visible span{background-size:100% 3px}
.u045-ln:focus-visible{outline:none}
.u045-ln[aria-current="page"] em{color:#d5dfc4}
.u045.is-open .u045-ln{opacity:1;transform:none;transition:opacity .4s var(--ux-ease) calc(.22s + var(--i) * 60ms),transform .7s var(--ux-spring) calc(.22s + var(--i) * 60ms)}
.u045-foot{margin-top:auto;display:flex;align-items:center;gap:8px;opacity:0;transform:translateY(14px);transition:opacity .25s,transform .3s}
.u045.is-open .u045-foot{opacity:1;transform:none;transition:opacity .4s .5s,transform .6s var(--ux-spring) .5s}
.u045-foot a{height:44px;padding:0 16px;border-radius:999px;display:inline-flex;align-items:center;font-size:13.5px;font-weight:700;color:inherit;text-decoration:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);transition:background-color .3s}
.u045-foot a:hover{background:rgba(255,255,255,.08)}
.u045-foot a.go{margin-left:auto;background:#F4F0E8;color:#14291f;box-shadow:none}
.u045-foot a:focus-visible{outline:2px solid #c8d5aa;outline-offset:2px}


.u039{position:relative;width:340px;height:380px}
.u039-tabs{position:relative;display:flex;padding:5px;border-radius:999px;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line)}
.u039-pill{position:absolute;left:0;top:5px;bottom:5px;width:var(--w,80px);border-radius:999px;background:var(--ux-ink);transform:translateX(var(--x,5px));box-shadow:0 8px 16px -10px var(--ux-shadow-strong);transition:transform .5s var(--ux-spring),width .5s var(--ux-spring)}
.u039-tab{position:relative;flex:1;height:42px;border:0;padding:0;border-radius:999px;background:none;font-size:14px;font-weight:680;color:var(--ux-ink-2);white-space:nowrap;transition:color .35s var(--ux-ease)}
.u039-tab[aria-selected="true"]{color:var(--ux-page)}
.u039-tab:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}
.u039-panel{position:relative;height:312px;margin-top:14px;overflow:hidden;border-radius:22px}
.u039-list{position:absolute;inset:0;margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.u039-row{display:flex;align-items:center;gap:12px;padding:10px;border-radius:18px;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line);transition:transform .55s var(--ux-spring),opacity .35s var(--ux-ease)}
.u039-art{position:relative;width:52px;height:52px;flex:none;border-radius:14px;background:var(--g);overflow:hidden}
.u039-art::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.45),transparent 55%)}
.u039-row b{display:block;font-size:15px;font-weight:700;letter-spacing:-.02em}
.u039-row small{display:block;margin-top:3px;font-size:12.5px;color:var(--ux-ink-3)}
.u039-row em{margin-left:auto;font-style:normal;font-size:12.5px;font-weight:650;color:var(--ux-ink-3);font-variant-numeric:tabular-nums}
.u039-badge{margin-left:6px;padding:2px 6px;border-radius:6px;font-size:10.5px;font-weight:800;background:var(--ux-accent-soft);color:var(--ux-accent);vertical-align:2px}


.u293{position:relative;width:340px;height:340px;border-radius:30px;overflow:hidden;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),0 30px 60px -36px var(--ux-shadow-strong);color:var(--ux-ink)}
.u293-hd{position:absolute;left:20px;top:18px;font-size:16px;font-weight:900;letter-spacing:-.03em}
.u293-gd{position:absolute;left:14px;right:14px;top:52px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.u293-pd{position:relative;padding:8px;border-radius:14px;background:var(--ux-surface-2);box-shadow:inset 0 0 0 1px var(--ux-line);transition:box-shadow .2s}
.u293-pd.is-on{box-shadow:inset 0 0 0 2px var(--ux-accent)}
.u293-im{position:relative;height:50px;border-radius:10px;display:grid;place-items:center}
.u293-im i{width:50px;height:30px;border-radius:5px 5px 2px 2px;background:#334b3f;box-shadow:0 0 0 3px rgba(255,255,255,.75);position:relative}
.u293-im i::after{content:"";position:absolute;left:-10px;right:-10px;bottom:-7px;height:5px;border-radius:0 0 4px 4px;background:rgba(255,255,255,.85)}
.u293-pd b{display:block;margin-top:6px;font-size:11.5px;font-weight:850}
.u293-pd small{font-size:10px;font-weight:750;color:var(--ux-ink-3);font-variant-numeric:tabular-nums}
.u293-ck{position:absolute;right:6px;top:6px;display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 7px 0 5px;border:0;border-radius:999px;background:rgba(255,255,255,.85);color:#334b3f;font:inherit;font-size:9.5px;font-weight:850;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.u293-ck i{width:12px;height:12px;border-radius:4px;box-shadow:inset 0 0 0 1.5px #8e9c8d;display:grid;place-items:center;transition:background .2s,box-shadow .2s}
.u293-ck[aria-pressed="true"] i{background:var(--ux-accent);box-shadow:none}
.u293-ck[aria-pressed="true"] i::after{content:"";width:3px;height:6px;margin-top:-2px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
.u293-tr{position:absolute;left:10px;right:10px;bottom:10px;display:flex;align-items:center;gap:6px;height:58px;padding:0 8px;border-radius:18px;background:var(--ux-ink);color:var(--ux-surface);transform:translateY(120%);transition:transform .45s cubic-bezier(.3,1.3,.5,1)}
.u293.is-tray .u293-tr{transform:none}
.u293-tr.is-shake{animation:u293-sh .45s}
@keyframes u293-sh{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.u293-sl{flex:none;width:40px;height:40px;border-radius:11px;border:1.5px dashed color-mix(in srgb,var(--ux-surface) 35%,transparent);display:grid;place-items:center;overflow:hidden}
.u293-sl i{width:28px;height:17px;border-radius:3px;background:#334b3f;box-shadow:0 0 0 2px rgba(255,255,255,.8);transform:scale(.2);opacity:0;transition:transform .4s cubic-bezier(.3,1.7,.5,1),opacity .2s}
.u293-sl.is-on{border-style:solid;border-color:transparent}
.u293-sl.is-on i{transform:none;opacity:1}
.u293-tx{flex:1;min-width:0;font-size:10px;font-weight:750;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.u293-go{flex:none;height:38px;padding:0 13px;border:0;border-radius:11px;background:var(--ux-accent);color:#fff;font:inherit;font-size:11.5px;font-weight:850;cursor:pointer;transition:opacity .2s}
.u293-go:disabled{opacity:.35;cursor:not-allowed}
.u293-cm{position:absolute;inset:0;padding:18px 16px;background:var(--ux-surface);transform:translateY(102%);transition:transform .5s cubic-bezier(.3,1,.3,1);display:flex;flex-direction:column}
.u293.is-cmp .u293-cm{transform:none}
.u293-ch{display:flex;align-items:center;justify-content:space-between;font-size:15px;font-weight:900}
.u293-bk{width:30px;height:30px;border:0;border-radius:50%;background:var(--ux-surface-2);color:var(--ux-ink-2);display:grid;place-items:center;cursor:pointer}
.u293-bk svg{width:11px;height:11px}
.u293-tb{margin-top:14px;display:grid;gap:0}
.u293-r{display:grid;align-items:center;min-height:46px;border-bottom:1px solid var(--ux-line);font-size:11.5px;font-weight:800;text-align:center;font-variant-numeric:tabular-nums;opacity:0;transform:translateY(10px);transition:opacity .35s,transform .45s cubic-bezier(.3,1.3,.5,1)}
.u293.is-cmp .u293-r{opacity:1;transform:none}
.u293-r>span:first-child{text-align:left;font-size:10.5px;color:var(--ux-ink-3)}
.u293-r.is-h{font-size:12px;font-weight:900}
.u293-best{position:relative}
.u293-best::after{content:attr(data-b);display:block;width:max-content;margin:3px auto 0;padding:1px 6px;border-radius:999px;background:#48705d;color:#fff;font-size:8.5px;font-weight:850;transform:scale(0);transition:transform .4s cubic-bezier(.3,1.7,.5,1) .5s}
.u293.is-cmp .u293-best::after{transform:none}
.u293 button:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}
@media (prefers-reduced-motion: reduce){.u293-tr,.u293-cm,.u293-r,.u293-sl i,.u293-best::after{transition:none}.u293-tr.is-shake{animation:none}}


.u061{position:relative;width:340px;height:480px;border-radius:30px;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),0 30px 60px -36px var(--ux-shadow-strong);overflow:hidden;isolation:isolate}
.u061-head{display:flex;align-items:baseline;justify-content:space-between;padding:20px 20px 12px}
.u061-head b{font-size:19px;font-weight:800;letter-spacing:-.04em}
.u061-head small{font-size:12.5px;font-weight:700;color:var(--ux-ink-3)}
.u061-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:92px;gap:8px;padding:0 14px}
.u061-th{position:relative;border:0;padding:0;border-radius:18px;overflow:hidden;background:var(--ux-surface-2);transition:transform .35s var(--ux-spring),opacity .2s}
.u061-th:nth-child(1){grid-row:span 2}
.u061-th:nth-child(4),.u061-th:nth-child(5){grid-row:span 2}
.u061-th:hover{transform:scale(.97)}
.u061-th:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}
.u061-th.away{opacity:0}
.u061-th svg,.u061-img svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.u061-scrim{position:absolute;inset:0;z-index:5;background:#0b1511;opacity:0;pointer-events:none;transition:opacity .45s}
.u061.is-open .u061-scrim{opacity:var(--so,1);pointer-events:auto}
.u061-view{position:absolute;z-index:6;left:0;top:0;width:100%;height:100%;overflow:hidden;visibility:hidden;touch-action:none}
.u061.is-open .u061-view{visibility:visible}
.u061-img{position:absolute;inset:0;transform-origin:0 0;transition:transform .45s var(--ux-ease)}
.u061-img.now{transition:none}
.u061-ui{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .3s}
.u061.is-open.is-ready .u061-ui{opacity:1}
.u061-x{position:absolute;right:14px;top:14px;width:42px;height:42px;border:0;padding:0;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.4);color:#fff;pointer-events:auto;transition:transform .3s var(--ux-spring)}
.u061-x:active{transform:scale(.88)}
.u061-x:focus-visible{outline:2px solid #fff;outline-offset:2px}
.u061-x svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.u061-cap{position:absolute;left:18px;right:18px;bottom:18px;display:flex;align-items:flex-end;justify-content:space-between;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.4)}
.u061-cap b{display:block;font-size:19px;font-weight:800;letter-spacing:-.035em}
.u061-cap small{font-size:12.5px;font-weight:650;opacity:.85}
.u061-cap em{font-style:normal;font-size:12.5px;font-weight:800;font-variant-numeric:tabular-nums;padding:5px 9px;border-radius:999px;background:rgba(0,0,0,.35)}
.u061-zoom{position:absolute;left:50%;top:16px;transform:translateX(-50%);height:28px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;background:rgba(0,0,0,.4);color:#fff;font-size:12px;font-weight:800;opacity:0;transition:opacity .3s}
.u061.is-zoom .u061-zoom{opacity:1}


.u044{position:relative;width:350px;height:400px;display:flex;flex-direction:column;gap:8px}
.u044-it{position:relative;border-radius:20px;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line);transition:background-color .4s var(--ux-ease),box-shadow .5s var(--ux-ease),transform .5s var(--ux-spring)}
.u044-it.open{box-shadow:0 0 0 1px var(--ux-line-2),0 22px 40px -22px var(--ux-shadow-strong);transform:translateY(-2px)}
.u044-q{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:58px;padding:0 14px 0 16px;border:0;border-radius:20px;background:none;font-size:14.5px;font-weight:680;letter-spacing:-.02em;color:var(--ux-ink);text-align:left}
.u044-q:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}
.u044-n{font-size:12px;font-weight:800;color:var(--ux-ink-3);font-variant-numeric:tabular-nums;transition:color .3s}
.u044-it.open .u044-n{color:var(--ux-accent)}
.u044-t{flex:1}
.u044-pm{position:relative;width:30px;height:30px;flex:none;border-radius:50%;background:var(--ux-surface-2);box-shadow:none;transition:background-color .35s var(--ux-ease),box-shadow .35s,transform .45s var(--ux-spring)}
.u044-q:hover .u044-pm{transform:scale(1.1)}
.u044-q:active .u044-pm{transform:scale(.9)}
.u044-pm::before,.u044-pm::after{content:"";position:absolute;left:50%;top:50%;width:11px;height:2px;margin:-1px 0 0 -5.5px;border-radius:2px;background:var(--ux-ink);transition:transform .5s var(--ux-spring),background-color .3s}
.u044-pm::after{transform:rotate(90deg)}
.u044-it.open .u044-pm{background:var(--ux-ink);box-shadow:none}
.u044-it.open .u044-pm::before,.u044-it.open .u044-pm::after{background:var(--ux-page)}
.u044-it.open .u044-pm::after{transform:rotate(180deg)}
.u044-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ux-ease)}
.u044-it.open .u044-body{grid-template-rows:1fr}
.u044-body>div{overflow:hidden;min-height:0}
.u044-a{padding:0 18px 16px 42px;opacity:0;transform:translateY(-8px);transition:opacity .25s var(--ux-ease),transform .45s var(--ux-spring)}
.u044-it.open .u044-a{opacity:1;transform:none;transition-delay:.12s}
.u044-a p{margin:0;font-size:13.5px;line-height:1.62;color:var(--ux-ink-2)}
.u044-a a{display:inline-flex;align-items:center;gap:4px;margin-top:10px;font-size:13px;font-weight:700;color:var(--ux-accent);text-decoration:none}
.u044-a a:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px;border-radius:4px}
.u044-a a i{font-style:normal;transition:transform .3s var(--ux-spring)}
.u044-a a:hover i{transform:translateX(3px)}


.u295{position:relative;width:300px;height:480px;border-radius:32px;overflow:hidden;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),0 30px 60px -36px var(--ux-shadow-strong);color:var(--ux-ink)}
.u295-fm{position:absolute;inset:0;padding:24px 18px 18px;display:flex;flex-direction:column;transition:opacity .3s,transform .4s}
.u295.is-sent .u295-fm{opacity:0;transform:scale(.97);pointer-events:none}
.u295 h3{margin:0;font-size:20px;font-weight:900;letter-spacing:-.035em}
.u295-fm>p{margin:3px 0 0;font-size:10.5px;font-weight:650;color:var(--ux-ink-3)}
.u295-sg{position:relative;display:flex;margin-top:14px;padding:3px;border-radius:12px;background:var(--ux-surface-2);box-shadow:inset 0 0 0 1px var(--ux-line)}
.u295-pl{position:absolute;left:3px;top:3px;bottom:3px;width:calc((100% - 6px) / 3);border-radius:9px;background:var(--ux-surface);box-shadow:0 1px 4px -1px var(--ux-shadow-strong),0 0 0 1px var(--ux-line);transition:transform .35s cubic-bezier(.3,1.3,.5,1)}
.u295-tp{position:relative;flex:1;height:30px;border:0;border-radius:9px;background:none;color:var(--ux-ink-3);font:inherit;font-size:11px;font-weight:850;cursor:pointer;white-space:nowrap;transition:color .2s}
.u295-tp[aria-checked="true"]{color:var(--ux-ink)}
.u295-dy{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .4s cubic-bezier(.3,1,.4,1),opacity .25s}
.u295-dy>div{min-height:0;overflow:hidden}
.u295-dy.is-on{grid-template-rows:1fr;opacity:1;transition-delay:.12s}
.u295 label,.u295-lb{display:block;margin-top:12px;font-size:10.5px;font-weight:800;color:var(--ux-ink-2)}
.u295-ip{width:100%;height:38px;margin-top:5px;padding:0 11px;border:0;border-radius:10px;background:var(--ux-surface-2);box-shadow:inset 0 0 0 1.5px var(--ux-line);color:var(--ux-ink);font:inherit;font-size:12px;font-weight:700;outline:none;box-sizing:border-box}
.u295-ip:focus,.u295-tx:focus{box-shadow:inset 0 0 0 2px var(--ux-accent)}
.u295-ch{display:flex;gap:5px;margin-top:5px;flex-wrap:wrap}
.u295-ch button{height:30px;padding:0 10px;border:0;border-radius:999px;background:var(--ux-surface-2);box-shadow:inset 0 0 0 1px var(--ux-line);color:var(--ux-ink-2);font:inherit;font-size:11px;font-weight:800;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s}
.u295-ch button[aria-pressed="true"]{background:var(--ux-ink);color:var(--ux-surface);box-shadow:none}
.u295-at{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:38px;margin-top:8px;border:1.5px dashed var(--ux-line);border-radius:10px;background:none;color:var(--ux-ink-2);font:inherit;font-size:11px;font-weight:800;cursor:pointer}
.u295-at svg{width:13px;height:13px}
.u295-fl{display:none;align-items:center;gap:8px;margin-top:8px;padding:7px 8px 7px 10px;border-radius:10px;background:var(--ux-surface-2);font-size:10.5px;font-weight:750;animation:u295-in .35s cubic-bezier(.3,1.4,.5,1)}
.u295-fl.is-on{display:flex}
.u295.is-file .u295-at{display:none}
@keyframes u295-in{from{opacity:0;transform:scale(.92)}}
.u295-fl i{flex:none;width:24px;height:24px;border-radius:6px;background:linear-gradient(135deg,#a2b99b,#d3c1a1)}
.u295-fl div{flex:1;min-width:0}
.u295-fl small{display:block;font-size:9px;color:var(--ux-ink-3);font-variant-numeric:tabular-nums}
.u295-fl em{display:block;height:3px;margin-top:3px;border-radius:2px;background:var(--ux-surface-3);overflow:hidden}
.u295-fl em b{display:block;height:100%;width:0;background:var(--ux-accent);transition:width 1s cubic-bezier(.3,.8,.3,1)}
.u295-fl button{flex:none;width:22px;height:22px;border:0;border-radius:6px;background:none;color:var(--ux-ink-3);cursor:pointer;display:grid;place-items:center}
.u295-fl button svg{width:9px;height:9px}
.u295-mw{position:relative;margin-top:5px}
.u295-tx{display:block;width:100%;height:76px;padding:9px 40px 9px 11px;border:0;border-radius:10px;background:var(--ux-surface-2);box-shadow:inset 0 0 0 1.5px var(--ux-line);color:var(--ux-ink);font:inherit;font-size:12px;line-height:1.45;font-weight:650;outline:none;resize:none;box-sizing:border-box}
.u295-rg{position:absolute;right:9px;bottom:9px;width:22px;height:22px;transform:rotate(-90deg)}
.u295-rg circle{fill:none;stroke-width:3}
.u295-rg .t{stroke:var(--ux-surface-3)}
.u295-rg .f{stroke:var(--ux-accent);stroke-linecap:round;stroke-dasharray:56.5;stroke-dashoffset:56.5;transition:stroke-dashoffset .2s,stroke .2s}
.u295-go{width:100%;height:46px;margin-top:auto;border:0;border-radius:13px;background:var(--ux-ink);color:var(--ux-surface);font:inherit;font-size:13px;font-weight:850;cursor:pointer;transition:opacity .2s}
.u295-go:disabled{opacity:.3;cursor:not-allowed}
.u295-dn{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 28px;text-align:center;opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .35s .15s,transform .45s cubic-bezier(.3,1.3,.5,1) .15s}
.u295.is-sent .u295-dn{opacity:1;transform:none;pointer-events:auto}
.u295-dn i{width:64px;height:64px;border-radius:20px;background:linear-gradient(135deg,#608874,#234f3c);display:grid;place-items:center;box-shadow:0 16px 30px -14px #234f3c}
.u295-dn i::after{content:"";width:12px;height:22px;margin-top:-6px;border:solid #fff;border-width:0 4px 4px 0;transform:rotate(45deg)}
.u295-dn b{margin-top:16px;font-size:18px;font-weight:900}
.u295-dn p{margin:6px 0 0;font-size:11px;font-weight:650;color:var(--ux-ink-3)}
.u295-dn div{margin-top:16px;padding:10px 16px;border-radius:12px;background:var(--ux-surface-2);font-size:11px;font-weight:750;color:var(--ux-ink-2)}
.u295-dn div strong{display:block;margin-top:2px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;color:var(--ux-ink)}
.u295 button:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}
@media (prefers-reduced-motion: reduce){.u295-pl,.u295-dy,.u295-fm,.u295-dn,.u295-fl em b{transition:none}.u295-fl{animation:none}}


.u070{position:relative;width:350px;height:370px}
.u070-btns{display:flex;flex-wrap:wrap;gap:6px}
.u070-btns button{height:38px;padding:0 14px;border:0;border-radius:999px;display:inline-flex;align-items:center;gap:6px;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line);font-size:13px;font-weight:720;color:var(--ux-ink);transition:transform .3s var(--ux-spring),box-shadow .3s}
.u070-btns button:hover{box-shadow:0 0 0 1px var(--ux-line-2),0 8px 16px -10px var(--ux-shadow-strong)}
.u070-btns button:active{transform:scale(.94)}
.u070-btns button:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}
.u070-btns i{width:8px;height:8px;border-radius:50%;background:var(--c)}
.u070-zone{position:absolute;left:0;right:0;bottom:0;height:300px;outline:none}
.u070-t{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:12px;min-height:68px;padding:12px 12px 12px 14px;border-radius:20px;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),0 16px 30px -18px var(--ux-shadow-strong);transform-origin:50% 100%;transform:translate(var(--dx,0px),var(--y,0px)) scale(var(--s,1));opacity:var(--o,1);transition:transform .5s var(--ux-spring),opacity .35s;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.u070-t.drag{transition:none}
.u070-t.enter{transform:translateY(90px) scale(.9);opacity:0}
.u070-t.leave{transform:translate(var(--dx,0px),var(--y,0px)) scale(var(--s,1));opacity:0;pointer-events:none}
.u070-t.leave.side{transform:translate(calc(var(--dir,1) * 420px),var(--y,0px)) rotate(calc(var(--dir,1) * 8deg))}
.u070-t>*{transition:opacity .25s}
.u070-t.back>*{opacity:0}
.u070-ic{width:36px;height:36px;flex:none;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--c) 15%,transparent);color:var(--c)}
.u070-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.u070-ic i{width:18px;height:18px;border-radius:50%;border:2.5px solid currentColor;border-right-color:transparent;animation:u070-spin .7s linear infinite}
@keyframes u070-spin{to{transform:rotate(360deg)}}
.u070-tx{flex:1;min-width:0}
.u070-tx b{display:block;font-size:14px;font-weight:780;letter-spacing:-.02em}
.u070-tx small{display:block;margin-top:2px;font-size:12.5px;font-weight:600;color:var(--ux-ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.u070-act{height:32px;padding:0 11px;border:0;border-radius:10px;background:var(--ux-surface-2);font-size:12.5px;font-weight:750;color:var(--ux-ink)}
.u070-x{width:30px;height:30px;flex:none;border:0;padding:0;border-radius:50%;display:grid;place-items:center;background:none;color:var(--ux-ink-3)}
.u070-x:hover{background:var(--ux-surface-2);color:var(--ux-ink)}
.u070-x svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.u070-act:focus-visible,.u070-x:focus-visible{outline:2px solid var(--ux-accent);outline-offset:1px}
.u070-bar{position:absolute;left:16px;right:16px;bottom:0;height:2px;border-radius:2px;background:var(--c);opacity:.5;transform-origin:0 50%;transform:scaleX(var(--left,1))}
.u070-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.u070-empty{position:absolute;left:0;right:0;bottom:24px;text-align:center;font-size:13px;font-weight:650;color:var(--ux-ink-3);transition:opacity .3s}


.u012{--fill:linear-gradient(180deg,#FFC14D,#FF6B6B);position:relative;width:300px;height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px}
.u012-btn{position:relative;width:104px;height:104px;border:0;padding:0;border-radius:32px;background:var(--ux-surface);color:var(--ux-ink);
  box-shadow:0 0 0 1px var(--ux-line),0 24px 40px -24px var(--ux-shadow-strong);transition:transform .5s var(--ux-spring),box-shadow .5s var(--ux-ease)}
.u012-btn:hover{transform:translateY(-3px);box-shadow:0 0 0 1px var(--ux-line-2),0 30px 48px -24px var(--ux-shadow-strong)}
.u012-btn:active{transform:scale(.9)}
.u012-btn:focus-visible{outline:2px solid var(--ux-accent);outline-offset:4px}
.u012-icon{position:absolute;left:30px;top:24px;width:44px;height:56px}
.u012-icon svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.u012-out{fill:none;stroke:currentColor;stroke-width:2.6;stroke-linejoin:round}
.u012-in{fill:url(#u012-g);clip-path:inset(0 0 100% 0);transition:clip-path .55s cubic-bezier(.6,0,.3,1)}
.u012.is-on .u012-in{clip-path:inset(0 0 0 0)}
.u012.is-on .u012-out{stroke:transparent;transition:stroke .2s .4s}
.u012.is-on .u012-icon{animation:u012-drop .7s var(--ux-ease)}
@keyframes u012-drop{0%{transform:translateY(0)}30%{transform:translateY(7px) scaleY(.9)}60%{transform:translateY(-5px)}100%{transform:none}}
.u012-p{position:absolute;left:50%;top:50%;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:3px;background:var(--c);opacity:0;pointer-events:none}
.u012.is-burst .u012-p{animation:u012-burst .8s var(--ux-ease) forwards}
@keyframes u012-burst{0%{opacity:1;transform:rotate(var(--a)) translateY(-30px) scale(.6)}100%{opacity:0;transform:rotate(var(--a)) translateY(-92px) scale(1.1) rotate(160deg)}}
.u012-ring{position:absolute;inset:-2px;border-radius:34px;box-shadow:0 0 0 2px #a2b99b;opacity:0;pointer-events:none}
.u012.is-burst .u012-ring{animation:u012-ring .6s var(--ux-ease)}
@keyframes u012-ring{from{opacity:1;transform:scale(.9)}to{opacity:0;transform:scale(1.35)}}
.u012-meta{margin:0;display:flex;align-items:center;gap:10px;font-size:15px;font-weight:680;color:var(--ux-ink-2)}
.u012-roll{position:relative;height:22px;overflow:hidden;transition:width .45s var(--ux-spring)}
.u012-roll span{white-space:nowrap}
.u012-roll span{display:block;width:max-content;line-height:22px;transition:transform .5s var(--ux-spring),opacity .3s var(--ux-ease)}
.u012-roll span+span{position:absolute;left:0;top:0;transform:translateY(100%);opacity:0}
.u012.is-on .u012-roll span:first-child{transform:translateY(-100%);opacity:0}
.u012.is-on .u012-roll span+span{transform:none;opacity:1}
.u012.is-on .u012-lab{color:var(--ux-ink)}
.u012-dot{width:4px;height:4px;border-radius:50%;background:var(--ux-ink-3)}
.u012-num{font-variant-numeric:tabular-nums;color:var(--ux-ink-3);font-weight:600}

/* Integration overrides: original controls/easing retained; gallery-only frames
   become fluid website slots, viewport dialogs or compact card actions. */
.u045.site-header{width:auto;height:auto;border-radius:0;overflow:visible;isolation:auto;box-shadow:none;background:transparent}
.u045-sheet{position:fixed;inset:0;width:100%;height:100dvh;min-height:0;z-index:1050;padding:clamp(100px,15vh,160px) max(24px,calc((100vw - 1280px)/2)) 32px;overflow-y:auto;overscroll-behavior:contain}
.u045-menu-open .u045-sheet,.u045.is-open .u045-sheet{clip-path:circle(var(--menu-radius,1600px) at var(--cx,90vw) var(--cy,40px));visibility:visible;transition:clip-path .8s var(--ux-ease),visibility 0s}
.u045-menu-open .u045-ham{position:relative;z-index:1060;background:rgba(255,255,255,.12);color:#f4f0e8}
.u045-menu-open .u045-ham i:nth-child(1){transform:rotate(45deg)}
.u045-menu-open .u045-ham i:nth-child(2){opacity:0;transform:translateX(8px)}
.u045-menu-open .u045-ham i:nth-child(3){transform:rotate(-45deg)}
.u045-menu-open .u045-ln{opacity:1;transform:none;transition:opacity .4s var(--ux-ease) calc(.22s + var(--i) * 60ms),transform .7s var(--ux-spring) calc(.22s + var(--i) * 60ms)}
.u045-menu-open .u045-foot{opacity:1;transform:none;transition:opacity .4s .5s,transform .6s var(--ux-spring) .5s}
.u045-menu-open #page-content{transform:scale(.98) translateY(14px);filter:blur(3px)}
#page-content{transform-origin:50% 0;transition:transform .7s var(--ux-ease),filter .7s var(--ux-ease)}
.u045-ln{font-size:clamp(28px,4.5vw,58px);line-height:1.2;min-height:48px}
.u045-sheet .u045-ln,.u045-sheet .u045-foot a{color:#f4f0e8}
.u045-sheet .u045-foot a.go{color:#14291f}
.u045-sheet .u045-ln:focus-visible{outline:2px solid #c8d5aa;outline-offset:4px;border-radius:4px}
.u045-sheet .u045-foot{flex-wrap:wrap;gap:12px;padding-top:28px}
.u045-sheet .u045-foot a{min-height:44px}
.u045-menu-open .site-header{z-index:1060}
.u039{width:100%;height:auto;min-width:0}
.u039-tabs{width:max-content;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;isolation:isolate}
.u039-tabs::-webkit-scrollbar{display:none}
.u039-tab{flex:0 0 auto;padding:0 22px;min-height:44px}
.u039-panel{height:auto;min-height:0;overflow:clip;border-radius:0;margin-top:28px}
.u039-list{position:relative;inset:auto}
.u039-row{min-width:0}
.u044{width:100%;height:auto;gap:12px}
.u044-q{min-height:64px;padding:16px 20px;justify-content:space-between;font-size:16px;line-height:1.5}
.u044-a{padding:0 20px 20px}
.u044-a p{font-size:15px;line-height:1.8}
.u044-pm{margin-left:12px}
.u012.u012-btn.u012-compact{--fill:var(--ux-grad);position:relative;display:inline-flex;flex-direction:row;justify-content:center;align-items:center;gap:9px;min-width:44px;width:auto;height:44px;padding:0 12px;border-radius:14px;font-size:14px;overflow:visible}
.u012-compact .u012-icon{position:relative;left:auto;top:auto;width:17px;height:23px;flex:none}
.u012-compact .u012-in{fill:var(--ux-accent)}
.u012-compact .u012-ring{border-radius:16px;box-shadow:0 0 0 2px var(--ux-accent)}
.u012-compact .u012-p{width:5px;height:5px;margin:-2.5px 0 0 -2.5px}
.u012-compact .u012-out{stroke-width:3}
.u012.is-on .u012-out{stroke:transparent}
.u012-compact.is-burst .u012-p{animation-name:u012-burst-compact}
@keyframes u012-burst-compact{0%{opacity:1;transform:rotate(var(--a)) translateY(-15px) scale(.6)}100%{opacity:0;transform:rotate(var(--a)) translateY(-46px) scale(1.1) rotate(160deg)}}
.u293.u293-portal{position:fixed;z-index:800;inset:auto 16px max(16px,env(safe-area-inset-bottom));margin:auto;width:min(600px,calc(100% - 32px));height:70px;border-radius:0;background:none;box-shadow:none;overflow:visible;pointer-events:none}
.u293-portal .u293-tr{position:relative;left:auto;right:auto;bottom:auto;width:100%;height:66px;padding:8px 12px;pointer-events:auto;box-shadow:0 18px 50px -20px var(--ux-shadow-strong);visibility:hidden;transition:transform .45s cubic-bezier(.3,1.3,.5,1),visibility 0s .45s}
.u293-portal.is-tray .u293-tr{visibility:visible;transition:transform .45s cubic-bezier(.3,1.3,.5,1),visibility 0s}
.u293-portal .u293-sl{position:relative;padding:0;color:var(--ux-ink);font:inherit;font-size:12px;text-shadow:0 1px 2px rgba(255,255,255,.5);cursor:pointer}
.u293-portal .u293-sl:disabled{background:transparent;cursor:default;color:var(--ux-surface)}
.u293-portal .u293-sl img{width:100%;height:100%;object-fit:cover;transform:scale(.2);opacity:0;transition:transform .4s cubic-bezier(.3,1.7,.5,1),opacity .2s}
.u293-portal .u293-sl.is-on img{transform:none;opacity:1}
.u293-portal .u293-tx{font-size:13px;opacity:1}
.u293-portal .u293-go{min-height:44px;font-size:14px;background:var(--ux-surface);color:var(--ux-ink)}
.u293-clear{width:36px;height:44px;flex:none;padding:8px;border:0;background:none;color:inherit}
.u293-clear svg,.u293-bk svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.u293.u293-dialog{position:fixed;inset:0;z-index:1200;width:100%;height:100dvh;border-radius:0;overflow:hidden;background:none;box-shadow:none}
.u293-dialog .u293-backdrop{position:absolute;inset:0;background:rgba(8,20,12,.7);backdrop-filter:blur(6px)}
.u293-dialog .u293-cm{position:absolute;inset:auto max(16px,calc((100vw - 1080px)/2)) 16px;max-height:calc(100dvh - 32px);padding:24px;border-radius:24px;overflow:auto;overscroll-behavior:contain;box-shadow:0 32px 100px -32px var(--ux-shadow-strong)}
.u293-dialog .u293-ch{gap:16px;font-size:24px}
.u293-dialog .u293-ch h2{margin:0;font:inherit;font-weight:650}
.u293-dialog .u293-bk{width:44px;height:44px;flex:none}
.u293-dialog .u293-tb{overflow-x:auto;min-width:0}
.u293-dialog .u293-r{min-width:max-content;min-height:68px;text-align:left;font-size:14px;font-weight:400}
.u293-dialog .u293-r>span{padding:14px 16px;line-height:1.55;overflow-wrap:anywhere}
.u293-dialog .u293-r>span:first-child{font-size:13px;font-weight:550;color:var(--ux-ink-2);padding-left:0}
.u293-dialog .u293-r.is-h{font-size:16px;font-weight:650}
.u293-material-image{display:block;width:72px;height:64px;object-fit:cover;border-radius:10px;margin-bottom:12px}
.u293-note{font-size:14px;line-height:1.7;color:var(--ux-ink-2);max-width:680px}
.u293-dialog .u293-r a{color:var(--ux-accent);text-decoration:underline;text-underline-offset:4px}
.u061-portal{position:fixed;inset:0;z-index:1250;width:100%;height:100dvh;border-radius:0;box-shadow:none;background:transparent}
.u061-portal .u061-view{position:absolute;inset:0;width:100%;height:100%;border-radius:0}
.u061-portal .u061-img{display:grid;place-items:center}
.u061-portal .u061-img img{width:100%;height:100%;max-height:100dvh;object-fit:contain;user-select:none;-webkit-user-drag:none}
.u061-portal .u061-ui{background:linear-gradient(180deg,rgba(0,0,0,.22),transparent 20%,transparent 70%,rgba(0,0,0,.65))}
.u061-portal .u061-cap{left:clamp(20px,4vw,64px);right:clamp(20px,4vw,64px);bottom:max(24px,env(safe-area-inset-bottom));gap:20px}
.u061-portal .u061-cap b{font-size:clamp(16px,2vw,24px);font-weight:500}
.u061-portal .u061-cap small{display:block;margin-bottom:8px;font-size:13px}
.u061-portal .u061-x{top:max(20px,env(safe-area-inset-top));right:24px;width:46px;height:46px}
.u061-portal .u061-zoom{pointer-events:auto;opacity:1;border:1px solid rgba(255,255,255,.25);height:40px;top:max(24px,env(safe-area-inset-top));font:inherit;font-size:13px;cursor:pointer}
.u061-nav{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;display:grid;place-items:center;pointer-events:auto;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:rgba(0,0,0,.4);color:#fff;font-size:22px;transition:transform .3s var(--ux-spring)}
.u061-prev{left:20px}.u061-next{right:20px}
.u061-nav:active{transform:translateY(-50%) scale(.88)}
.u061-nav:focus-visible,.u061-zoom:focus-visible{outline-color:#fff}
.u070-portal{position:fixed;z-index:1400;left:24px;bottom:max(24px,env(safe-area-inset-bottom));width:min(390px,calc(100% - 48px));height:0;pointer-events:none}
.u070-portal .u070-zone{position:relative;left:auto;right:auto;bottom:auto;height:0;pointer-events:none}
.u070-portal .u070-t{pointer-events:auto}
.u070-portal .u070-tx b{font-size:14px;font-weight:500;line-height:1.55}
.u070-portal .u070-x{width:36px;height:36px}
.u070-portal .u070-t.back{pointer-events:none}
.has-compare-tray .u070-portal{bottom:max(104px,calc(env(safe-area-inset-bottom) + 88px))}
.u295{width:100%;height:auto;max-width:100%;overflow:visible;border-radius:24px;padding:0}
.u295-fm{position:relative;inset:auto;padding:24px;gap:0}
form.u295{padding:clamp(20px,4vw,40px)}
.u295 :is(input,select,textarea){font:inherit;font-size:16px}
.u295 label,.u295-lb{font-size:14px;font-weight:500;line-height:1.5;margin-top:18px}
.u295 :is(.u295-ip,input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]),select){width:100%;min-height:46px;border-radius:10px;padding:10px 12px;border:1px solid var(--ux-line-2);background:var(--ux-surface-2);color:var(--ux-ink);box-shadow:none;margin-top:6px}
.u295 textarea,.u295-tx{width:100%;min-height:130px;height:auto;resize:vertical;border:1px solid var(--ux-line-2);padding:12px 42px 12px 12px;border-radius:10px;background:var(--ux-surface-2);color:var(--ux-ink);box-shadow:none;line-height:1.65;margin-top:6px}
.u295 :is(input,select,textarea):focus{outline:2px solid var(--ux-accent);outline-offset:2px}
.u295 :is(input,select,textarea)[aria-invalid="true"]{border-color:var(--ux-danger)}
.u295-go{min-height:48px;height:auto;padding:13px 18px;font-size:15px;font-weight:600;margin-top:24px}
.u295-tp{min-height:44px;height:auto;font-size:13px;white-space:normal;line-height:1.4;padding:8px}
.u295-sg{isolation:isolate}.u295-pl{pointer-events:none}
.u295-dy{overflow:hidden}.u295-dy>div{padding-bottom:3px}
.u295-at{min-height:44px;font-size:14px}
.u295-fl{font-size:14px;padding:12px}
.u295-fl small{font-size:12px}.u295-fl button{width:44px;height:44px}
.u295-error{display:block;color:var(--ux-danger);font-size:13px;line-height:1.5;margin-top:6px}
.u295-error:empty{display:none}
.u295-result,[data-form-result]{display:block;margin-top:24px;padding:18px;border:1px solid var(--ux-line-2);border-radius:14px;background:var(--ux-surface-2);color:var(--ux-ink);font-size:15px;line-height:1.7}
.u295-result[hidden],[data-form-result][hidden]{display:none}
.u295-result p,[data-form-result] p{margin:0}.u295-result p+p,[data-form-result] p+p{margin-top:8px}
.u295-receipt{font-size:13px;color:var(--ux-ink-2);overflow-wrap:anywhere}
[data-form-result][data-mode="error"]{border-color:var(--ux-danger)}
@media(max-width:600px){
  .u045-sheet{padding:100px 24px 24px}.u045-ln{font-size:32px}
  .u039-tab{padding:0 16px;font-size:13px}
  .u044-q{padding:16px;font-size:15px}.u044-a{padding:0 16px 18px}.u044-a p{font-size:14px}
  .u293.u293-portal{inset:auto 12px max(12px,env(safe-area-inset-bottom));width:calc(100% - 24px)}
  .u293-portal .u293-tr{gap:6px;padding:8px;height:62px}.u293-portal .u293-sl{width:32px;height:36px;border-radius:9px}
  .u293-portal .u293-tx{font-size:11px}.u293-portal .u293-go{padding:0 10px;font-size:13px}.u293-clear{width:30px;padding:6px}
  .u293-dialog .u293-cm{inset:auto 8px 8px;padding:18px 16px;max-height:calc(100dvh - 16px);border-radius:20px}
  .u293-dialog .u293-ch{font-size:21px}.u293-dialog .u293-note{font-size:13px}
  .u061-portal .u061-x{right:14px}.u061-portal .u061-cap{left:20px;right:20px}.u061-portal .u061-cap small{font-size:11px}
  .u061-nav{width:44px;height:44px}.u061-prev{left:12px}.u061-next{right:12px}
  .u070-portal{left:16px;bottom:max(16px,env(safe-area-inset-bottom));width:calc(100% - 32px)}
  .u295-fm{padding:20px}.u295-sg{display:flex;flex-wrap:nowrap}.u295-tp{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .ux,.ux *,.ux *::before,.ux *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0s!important;scroll-behavior:auto!important}
  #page-content{transition:none}.u045-menu-open #page-content{transform:none;filter:none}
}

/* #343: fixed on the opposite side of the assistant; lift above the comparison tray. */
.u343.u343-portal{position:fixed;left:max(20px,env(safe-area-inset-left));bottom:max(20px,env(safe-area-inset-bottom));z-index:850;width:52px;height:52px;pointer-events:none}
.u343 .u343-up{position:absolute;inset:0;width:52px;height:52px;border:0;padding:0;border-radius:50%;background:var(--ux-ink);color:var(--ux-page);box-shadow:0 12px 24px -10px var(--ux-shadow-strong);opacity:0;transform:translateY(20px) scale(.6);pointer-events:none;transition:opacity .3s,transform .5s var(--ux-spring)}
.u343.show .u343-up{opacity:1;transform:none;pointer-events:auto}
.u343-up svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.u343-ring{fill:none;stroke:var(--ux-accent);stroke-width:3;stroke-linecap:round;transform:rotate(-90deg);transform-origin:26px 26px}
.u343-ar{fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;transition:opacity .2s}
.u343-rk{opacity:0}.u343-rk .b{fill:currentColor}.u343-rk .w{fill:var(--ux-accent)}.u343-rk .f{fill:#ff922b;transform-box:fill-box;transform-origin:50% 0}
.u343.fly .u343-ar{opacity:0}.u343.fly .u343-rk{opacity:1}.u343.fly .u343-rk .f{animation:u343-fl .12s linear infinite alternate}
@keyframes u343-fl{to{transform:scaleY(1.6)}}
.has-compare-tray .u343.u343-portal{bottom:max(104px,calc(env(safe-area-inset-bottom) + 88px))}
.u045-menu-open .u343.u343-portal{visibility:hidden}
@media(max-width:700px){.u343.u343-portal{left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.u343 .u343-up,.u343-ar{transition:none}.u343.fly .u343-rk .f{animation:none}}


/* Lucian UX/UI Prompt #042 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#042 */
.u042{position:relative;width:350px;height:400px;display:flex;flex-direction:column;padding:22px 20px 18px;border-radius:28px;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),0 30px 60px -36px var(--ux-shadow-strong)}
.u042-steps{position:relative;display:flex;justify-content:space-between;margin:0 6px;padding:0;list-style:none}
.u042-line{position:absolute;left:17px;right:17px;top:16px;height:3px;border-radius:2px;background:var(--ux-surface-3)}
.u042-line i{position:absolute;inset:0;border-radius:inherit;background:var(--ux-grad);transform-origin:0 50%;transform:scaleX(var(--p,0));transition:transform .6s var(--ux-ease)}
.u042-st{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;width:34px}
.u042-dot{position:relative;width:34px;height:34px;border:0;padding:0;border-radius:50%;background:var(--ux-surface);box-shadow:inset 0 0 0 2px var(--ux-line-2);font-size:13.5px;font-weight:780;color:var(--ux-ink-3);display:grid;place-items:center;transition:box-shadow .35s,background-color .35s,color .35s,transform .45s var(--ux-spring)}
.u042-dot:focus-visible{outline:2px solid var(--ux-accent);outline-offset:3px}
.u042-dot svg{position:absolute;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:0}
.u042-dot path{stroke-dasharray:16;stroke-dashoffset:16;transition:stroke-dashoffset .35s var(--ux-ease) .1s}
.u042-st.cur .u042-dot{box-shadow:inset 0 0 0 2px var(--ux-accent),0 0 0 5px var(--ux-accent-soft);color:var(--ux-accent);transform:scale(1.08)}
.u042-st.done .u042-dot{background:var(--ux-accent);box-shadow:none;color:var(--ux-accent-ink);cursor:pointer}
.u042-st.done .u042-dot span{opacity:0}
.u042-st.done .u042-dot svg{opacity:1}
.u042-st.done .u042-dot path{stroke-dashoffset:0}
.u042-st small{font-size:11.5px;font-weight:700;color:var(--ux-ink-3);white-space:nowrap;transition:color .3s}
.u042-st.cur small,.u042-st.done small{color:var(--ux-ink)}
.u042-view{position:relative;flex:1;margin-top:22px;overflow:hidden}
.u042-pane{position:absolute;inset:0;transition:transform .55s var(--ux-ease),opacity .35s var(--ux-ease)}
.u042-pane h4{margin:0;font-size:19px;font-weight:780;letter-spacing:-.03em}
.u042-pane p{margin:5px 0 16px;font-size:13.5px;color:var(--ux-ink-3)}
.u042-fld{display:flex;align-items:center;gap:10px;height:50px;padding:0 14px;border-radius:14px;background:var(--ux-surface-2);font-size:15px;font-weight:620;margin-bottom:8px}
.u042-url{color:var(--ux-ink-3);font-weight:560}
.u042-url b{color:var(--ux-ink);font-weight:700}
.u042-fld small{margin-left:auto;font-size:12px;color:var(--ux-ink-3)}
.u042-chips{display:flex;gap:6px}
.u042-chips span{padding:8px 12px;border-radius:999px;font-size:13px;font-weight:650;box-shadow:inset 0 0 0 1px var(--ux-line-2);color:var(--ux-ink-2)}
.u042-chips span.on{background:var(--ux-ink);color:var(--ux-page);box-shadow:none}
.u042-av{width:30px;height:30px;flex:none;border-radius:50%;background:var(--c)}
.u042-done{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center}
.u042-big{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:var(--ux-mint);color:var(--ux-accent-ink);box-shadow:0 0 0 10px color-mix(in srgb,var(--ux-mint) 18%,transparent);transform:scale(.5);transition:transform .6s var(--ux-spring) .2s}
.u042-big svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.u042-pane.on .u042-big{transform:none}
.u042-done h4{margin-top:18px}
.u042-foot{display:flex;gap:8px;margin-top:12px}
.u042-b{height:50px;border:0;border-radius:15px;font-size:15px;font-weight:700;transition:transform .35s var(--ux-spring),opacity .3s,background-color .3s}
.u042-b:active{transform:scale(.96)}
.u042-b:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}
.u042-prev{width:96px;background:var(--ux-surface-2);color:var(--ux-ink)}
.u042-prev[aria-disabled="true"]{opacity:.35}
.u042-next{flex:1;background:var(--ux-ink);color:var(--ux-page)}
.u042.is-last .u042-next{background:var(--ux-mint);color:var(--ux-accent-ink)}

/* Lucian UX/UI Prompt #293 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#293 */
.u293{position:relative;width:340px;height:340px;border-radius:30px;overflow:hidden;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),0 30px 60px -36px var(--ux-shadow-strong);color:var(--ux-ink)}
.u293-hd{position:absolute;left:20px;top:18px;font-size:16px;font-weight:900;letter-spacing:-.03em}
.u293-gd{position:absolute;left:14px;right:14px;top:52px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.u293-pd{position:relative;padding:8px;border-radius:14px;background:var(--ux-surface-2);box-shadow:inset 0 0 0 1px var(--ux-line);transition:box-shadow .2s}
.u293-pd.is-on{box-shadow:inset 0 0 0 2px var(--ux-accent)}
.u293-im{position:relative;height:50px;border-radius:10px;display:grid;place-items:center}
.u293-im i{width:50px;height:30px;border-radius:5px 5px 2px 2px;background:#1E293B;box-shadow:0 0 0 3px rgba(255,255,255,.75);position:relative}
.u293-im i::after{content:"";position:absolute;left:-10px;right:-10px;bottom:-7px;height:5px;border-radius:0 0 4px 4px;background:rgba(255,255,255,.85)}
.u293-pd b{display:block;margin-top:6px;font-size:11.5px;font-weight:850}
.u293-pd small{font-size:10px;font-weight:750;color:var(--ux-ink-3);font-variant-numeric:tabular-nums}
.u293-ck{position:absolute;right:6px;top:6px;display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 7px 0 5px;border:0;border-radius:999px;background:rgba(255,255,255,.85);color:#334155;font:inherit;font-size:9.5px;font-weight:850;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.u293-ck i{width:12px;height:12px;border-radius:4px;box-shadow:inset 0 0 0 1.5px #94A3B8;display:grid;place-items:center;transition:background .2s,box-shadow .2s}
.u293-ck[aria-pressed="true"] i{background:var(--ux-accent);box-shadow:none}
.u293-ck[aria-pressed="true"] i::after{content:"";width:3px;height:6px;margin-top:-2px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
.u293-tr{position:absolute;left:10px;right:10px;bottom:10px;display:flex;align-items:center;gap:6px;height:58px;padding:0 8px;border-radius:18px;background:var(--ux-ink);color:var(--ux-surface);transform:translateY(120%);transition:transform .45s cubic-bezier(.3,1.3,.5,1)}
.u293.is-tray .u293-tr{transform:none}
.u293-tr.is-shake{animation:u293-sh .45s}
@keyframes u293-sh{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
.u293-sl{flex:none;width:40px;height:40px;border-radius:11px;border:1.5px dashed color-mix(in srgb,var(--ux-surface) 35%,transparent);display:grid;place-items:center;overflow:hidden}
.u293-sl i{width:28px;height:17px;border-radius:3px;background:#1E293B;box-shadow:0 0 0 2px rgba(255,255,255,.8);transform:scale(.2);opacity:0;transition:transform .4s cubic-bezier(.3,1.7,.5,1),opacity .2s}
.u293-sl.is-on{border-style:solid;border-color:transparent}
.u293-sl.is-on i{transform:none;opacity:1}
.u293-tx{flex:1;min-width:0;font-size:10px;font-weight:750;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.u293-go{flex:none;height:38px;padding:0 13px;border:0;border-radius:11px;background:var(--ux-accent);color:#fff;font:inherit;font-size:11.5px;font-weight:850;cursor:pointer;transition:opacity .2s}
.u293-go:disabled{opacity:.35;cursor:not-allowed}
.u293-cm{position:absolute;inset:0;padding:18px 16px;background:var(--ux-surface);transform:translateY(102%);transition:transform .5s cubic-bezier(.3,1,.3,1);display:flex;flex-direction:column}
.u293.is-cmp .u293-cm{transform:none}
.u293-ch{display:flex;align-items:center;justify-content:space-between;font-size:15px;font-weight:900}
.u293-bk{width:30px;height:30px;border:0;border-radius:50%;background:var(--ux-surface-2);color:var(--ux-ink-2);display:grid;place-items:center;cursor:pointer}
.u293-bk svg{width:11px;height:11px}
.u293-tb{margin-top:14px;display:grid;gap:0}
.u293-r{display:grid;align-items:center;min-height:46px;border-bottom:1px solid var(--ux-line);font-size:11.5px;font-weight:800;text-align:center;font-variant-numeric:tabular-nums;opacity:0;transform:translateY(10px);transition:opacity .35s,transform .45s cubic-bezier(.3,1.3,.5,1)}
.u293.is-cmp .u293-r{opacity:1;transform:none}
.u293-r>span:first-child{text-align:left;font-size:10.5px;color:var(--ux-ink-3)}
.u293-r.is-h{font-size:12px;font-weight:900}
.u293-best{position:relative}
.u293-best::after{content:attr(data-b);display:block;width:max-content;margin:3px auto 0;padding:1px 6px;border-radius:999px;background:#10B981;color:#fff;font-size:8.5px;font-weight:850;transform:scale(0);transition:transform .4s cubic-bezier(.3,1.7,.5,1) .5s}
.u293.is-cmp .u293-best::after{transform:none}
.u293 button:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}
@media (prefers-reduced-motion: reduce){.u293-tr,.u293-cm,.u293-r,.u293-sl i,.u293-best::after{transition:none}.u293-tr.is-shake{animation:none}}

/* Lucian UX/UI Prompt #279 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#279 */
.u279{position:relative;width:340px;height:340px;border-radius:30px;overflow:hidden;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),0 30px 60px -36px var(--ux-shadow-strong);color:var(--ux-ink)}
.u279-hd{position:absolute;left:20px;right:20px;top:18px;display:flex;align-items:center;gap:10px}
.u279-hd i{flex:none;width:34px;height:34px;border-radius:11px;background:var(--ux-grad)}
.u279-hd b{display:block;font-size:14px;font-weight:900}
.u279-hd small{display:block;margin-top:1px;font-size:10px;font-weight:700;color:var(--ux-ink-3)}
.u279-ds{position:absolute;left:14px;right:14px;top:66px;display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.u279-dy{display:flex;flex-direction:column;align-items:center;gap:2px;height:54px;padding-top:7px;border:0;border-radius:13px;background:var(--ux-surface-2);box-shadow:inset 0 0 0 1px var(--ux-line);color:var(--ux-ink);font:inherit;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s,transform .15s}
.u279-dy small{font-size:9.5px;font-weight:800;color:var(--ux-ink-3)}
.u279-dy b{font-size:16px;font-weight:900;font-variant-numeric:tabular-nums}
.u279-dy i{width:4px;height:4px;border-radius:50%;background:#10B981}
.u279-dy[aria-pressed="true"]{background:var(--ux-ink);color:var(--ux-surface);box-shadow:none}
.u279-dy[aria-pressed="true"] small{color:inherit;opacity:.7}
.u279-dy:disabled{opacity:.38;cursor:not-allowed;background:repeating-linear-gradient(135deg,transparent 0 5px,color-mix(in srgb,var(--ux-ink) 6%,transparent) 5px 6px),var(--ux-surface-2)}
.u279-dy:disabled i{background:var(--ux-ink-3)}
.u279-ls{position:absolute;left:14px;right:14px;top:132px;bottom:12px;overflow-y:auto;scrollbar-width:none;padding:2px}
.u279-ls::-webkit-scrollbar{display:none}
.u279-rw{display:flex;gap:6px;height:40px;margin-bottom:6px;animation:u279-in .4s cubic-bezier(.3,1.3,.5,1) backwards}
@keyframes u279-in{from{opacity:0;transform:translateY(12px)}}
.u279-tm{flex:1 1 100%;min-width:0;border:0;border-radius:11px;background:var(--ux-surface);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--ux-accent) 45%,transparent);color:var(--ux-accent);font:inherit;font-size:12.5px;font-weight:850;cursor:pointer;transition:flex-basis .4s cubic-bezier(.3,1.2,.5,1),background .25s,color .25s;font-variant-numeric:tabular-nums}
.u279-tm:hover,.u279-tm.g-hov{box-shadow:inset 0 0 0 2px var(--ux-accent)}
.u279-rw.is-on .u279-tm{flex-basis:48%;background:var(--ux-ink-2);color:var(--ux-surface);box-shadow:none}
.u279-ok{flex:0 0 0;min-width:0;padding:0;border:0;border-radius:11px;background:var(--ux-accent);color:#fff;font:inherit;font-size:12.5px;font-weight:850;cursor:pointer;overflow:hidden;opacity:0;white-space:nowrap;transition:flex-basis .4s cubic-bezier(.3,1.2,.5,1),opacity .25s}
.u279-rw.is-on .u279-ok{flex-basis:48%;opacity:1}
.u279-dn{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 24px;background:var(--ux-surface);text-align:center;opacity:0;pointer-events:none;transition:opacity .35s}
.u279.is-done .u279-dn{opacity:1;pointer-events:auto}
.u279-dn svg{width:62px;height:62px}
.u279-dn circle{fill:color-mix(in srgb,#10B981 14%,transparent);transform:scale(.4);transform-origin:center;transform-box:fill-box;transition:transform .5s cubic-bezier(.3,1.6,.5,1) .1s}
.u279-dn path{fill:none;stroke:#10B981;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:30;stroke-dashoffset:30;transition:stroke-dashoffset .4s ease .4s}
.u279.is-done .u279-dn circle{transform:none}
.u279.is-done .u279-dn path{stroke-dashoffset:0}
.u279-dn b{margin-top:12px;font-size:17px;font-weight:900}
.u279-dn p{margin:6px 0 0;padding:8px 14px;border-radius:11px;background:var(--ux-surface-2);font-size:12px;font-weight:850}
.u279-dn small{margin-top:10px;font-size:10.5px;font-weight:650;color:var(--ux-ink-3)}
.u279 button:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}
@media (prefers-reduced-motion: reduce){.u279-rw{animation:none}.u279-tm,.u279-ok,.u279-dn,.u279-dn circle,.u279-dn path{transition:none}}

/* Project token mapping and feature page layouts. Original Lucian motion values above are retained. */
.th-features {
  --fx-surface: var(--paper, #fbfaf6);
  --fx-soft: var(--surface, #f0eee6);
  --fx-ink: var(--ink, #243e32);
  --fx-muted: var(--muted, #68736b);
  --fx-line: var(--line, #d5dbd0);
  --fx-accent: var(--accent, #365548);
  --ux-surface: var(--fx-surface);
  --ux-surface-2: var(--fx-soft);
  --ux-surface-3: var(--fx-line);
  --ux-page: var(--fx-surface);
  --ux-ink: var(--fx-ink);
  --ux-ink-2: var(--fx-ink);
  --ux-ink-3: var(--fx-muted);
  --ux-accent: var(--fx-accent);
  --ux-accent-soft: color-mix(in srgb, var(--fx-accent) 15%, transparent);
  --ux-accent-ink: var(--fx-surface);
  --ux-line: var(--fx-line);
  --ux-line-2: var(--fx-line);
  --ux-shadow-strong: rgb(25 46 34 / .2);
  --ux-grad: var(--fx-accent);
  --ux-mint: var(--fx-accent);
  --ux-ease: cubic-bezier(.2,.8,.2,1);
  --ux-spring: cubic-bezier(.3,1.3,.5,1);
  color: var(--fx-ink);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.65;
  min-width: 0;
}
[data-theme="dark"] .th-features, .dark .th-features {
  --fx-surface: var(--paper, #1b2923);
  --fx-soft: var(--surface, #24362c);
  --fx-ink: var(--ink, #f1eee4);
  --fx-muted: var(--muted, #bec6b8);
  --fx-line: var(--line, #425247);
  --fx-accent: var(--accent, #aabf95);
  --ux-accent-ink: #18271e;
}
.th-features *, .th-features *::before, .th-features *::after { box-sizing: border-box; }
.th-features h3 { font-size: clamp(22px, 2.5vw, 30px); line-height: 1.2; margin: 0 0 16px; letter-spacing: -.035em; }
.th-features h4 { font-size: 21px; line-height: 1.3; margin: 8px 0 14px; }
.th-features p { margin: 0 0 18px; }
.th-features ul { padding-left: 20px; }
.th-features li { margin-bottom: 8px; }
.th-features a { color: var(--fx-ink); text-underline-offset: 4px; }
.th-features button, .th-features input, .th-features select, .th-features textarea { font: inherit; }
.th-features button { cursor: pointer; }
.th-features button:disabled { opacity: .5; cursor: not-allowed; }
.th-features :focus-visible { outline: 3px solid var(--fx-accent); outline-offset: 4px; }
.th-features [inert] { pointer-events: none; }
.th-features .fx-muted { color: var(--fx-muted); font-size: 14px; }
.th-features .fx-badge { display: table; max-width: 100%; padding: 8px 13px; border: 1px solid var(--fx-line); border-radius: 999px; font-size: 13px; line-height: 1.5; font-weight: 650; background: var(--fx-soft); color: var(--fx-ink); margin-bottom: 25px; }
.th-features .fx-grid { display: grid; gap: 20px; min-width: 0; }
.th-features .fx-grid-2 { grid-template-columns: repeat(2,minmax(0,1fr)); }
.th-features .fx-grid-3 { grid-template-columns: repeat(3,minmax(0,1fr)); }
.th-features .fx-split { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: start; gap: clamp(24px,5vw,70px); }
.th-features .fx-split > * { min-width: 0; }
.th-features .fx-form { display: grid; align-content: start; gap: 20px; }
.th-features .fx-field { display: flex; flex-direction: column; gap: 8px; min-width: 0; font-size: 14px; font-weight: 600; }
.th-features .fx-field input, .th-features .fx-field select, .th-features .fx-field textarea { width: 100%; min-width: 0; min-height: 48px; padding: 11px 13px; border: 1px solid var(--fx-line); border-radius: 12px; background: var(--fx-surface); color: var(--fx-ink); font-size: 16px; font-weight: 400; line-height: 1.5; }
.th-features .fx-field input::placeholder { color: var(--fx-muted); opacity: .8; }
.th-features .fx-field input:focus, .th-features .fx-field select:focus { border-color: var(--fx-accent); }
.th-features .fx-field input::-webkit-calendar-picker-indicator { cursor: pointer; }
.th-features .fx-fieldset { margin: 0; padding: 18px; border: 1px solid var(--fx-line); border-radius: 16px; min-width: 0; }
.th-features .fx-fieldset legend { padding: 0 8px; font-size: 14px; }
.th-features .fx-button { display: inline-flex; justify-content: center; align-items: center; gap: 10px; min-height: 48px; padding: 12px 20px; border: 1px solid var(--fx-accent); border-radius: 12px; color: var(--fx-surface); background: var(--fx-accent); text-decoration: none; font-weight: 650; font-size: 15px; line-height: 1.5; white-space: normal; transition: transform .2s, background .2s; }
.th-features .fx-button:hover:not(:disabled) { transform: translateY(-2px); }
.th-features .fx-button-secondary { background: transparent; color: var(--fx-ink); border-color: var(--fx-line); }
.th-features .fx-button[aria-pressed="true"] { border-color: var(--fx-accent); background: var(--fx-accent); color: var(--fx-surface); }
.th-features .fx-consent { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; font-weight: 400; }
.th-features .fx-consent input { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 4px; accent-color: var(--fx-accent); }
.th-features .fx-details { border-top: 1px solid var(--fx-line); padding-top: 16px; }
.th-features .fx-details summary { cursor: pointer; font-weight: 650; margin-bottom: 16px; }
.th-features .fx-details[open] > .fx-grid, .th-features .fx-details[open] > .fx-field, .th-features .fx-details[open] > .fx-consent { margin-bottom: 18px; }
.th-features .fx-card, .th-features .fx-summary { background: var(--fx-surface); padding: clamp(20px,3vw,32px); border: 1px solid var(--fx-line); border-radius: 22px; min-width: 0; }
.th-features .fx-card { display: flex; flex-direction: column; }
.th-features .fx-card .fx-button { margin-top: auto; }
.th-features .fx-card ul { font-size: 14px; color: var(--fx-muted); }
.th-features .fx-summary { box-shadow: 0 16px 45px -35px var(--ux-shadow-strong); }
.th-features .fx-total { display: block; font-size: clamp(30px,4vw,44px); line-height: 1.2; font-weight: 600; letter-spacing: -.035em; margin-bottom: 12px; font-variant-numeric: tabular-nums; }
.th-features .fx-price { font-size: 27px; margin-bottom: 15px; font-variant-numeric: tabular-nums; }
.th-features .fx-table-wrap { width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-x: contain; margin-bottom: 24px; }
.th-features table { width: 100%; border-collapse: collapse; font-size: 14px; text-align: left; }
.th-features caption { text-align: left; font-size: 18px; font-weight: 650; margin-bottom: 14px; }
.th-features th, .th-features td { padding: 13px 10px; border-bottom: 1px solid var(--fx-line); vertical-align: top; }
.th-features th:first-child, .th-features td:first-child { padding-left: 0; }
.th-features thead th { color: var(--fx-muted); font-weight: 500; }
.th-features tbody th { font-weight: 600; }
.th-features td { font-variant-numeric: tabular-nums; }
.th-features .fx-quote-output table { min-width: 410px; }
.th-features .fx-search { max-width: 580px; margin-bottom: 22px; }
.th-features .fx-feedback:not(:empty) { margin-top: 18px; padding: 14px 16px; border-radius: 12px; border: 1px solid var(--fx-line); background: var(--fx-soft); font-size: 14px; overflow-wrap: anywhere; }
.th-features .fx-feedback[data-error="true"] { border-color: #b66a48; }
.th-features .fx-inline-form { display: flex; align-items: end; gap: 12px; max-width: 680px; margin-bottom: 18px; }
.th-features .fx-inline-form .fx-field { flex: 1; }
.th-features .fx-swatch { display: block; height: 110px; border-radius: 12px; background: var(--swatch); box-shadow: inset 0 0 0 1px rgb(0 0 0 / .08); margin-bottom: 20px; }
.th-features .fx-result-image { display: block; width: 100%; height: 150px; object-fit: cover; border-radius: 12px; margin-bottom: 20px; }
.th-features .fx-result-links { display: grid; gap: 10px; margin-top: auto; font-size: 14px; }
.th-features .fx-order-events { border-top: 1px solid var(--fx-line); padding-top: 20px; margin-top: 24px; }
.th-features .fx-order-events ol { padding-left: 18px; }
.th-features .fx-order-events li { margin-bottom: 20px; }
.th-features .fx-order-events time { display: block; color: var(--fx-muted); font-size: 13px; margin-bottom: 3px; }
.th-features .fx-order-events strong { display: block; }
.th-features .fx-order-events p { margin: 5px 0 0; font-size: 14px; }
.th-features .fx-quiz-info { padding-top: 18px; }
.th-features .fx-quiz-results { margin-top: 38px; }
.th-features .fx-combo-bottom { display:block; margin-top:44px; }
.th-features .u042, .th-features .u293, .th-features .u279 { max-width: 100%; flex-shrink: 0; }
.th-features .u042 { margin-inline: auto; }
.th-features .u042-view { margin-top: 27px; }
.th-features .u042-pane h3 { font-size: 19px; font-weight: 780; letter-spacing: -.03em; margin: 0; }
.th-features .u042-pane p { margin: 8px 0 20px; font-size: 14px; }
.th-features .u042-st { margin-bottom: 0; }
.th-features .u042-st small { font-size: 10px; }
.th-features .u293-pd b { overflow-wrap: anywhere; }
.th-features .u293-r { min-height: 46px; font-size: 11px; }
.th-features .u293-tb { overflow-y: auto; min-height: 0; padding-right: 3px; }
.th-features .u293-gd > .fx-muted { grid-column: 1 / -1; padding: 16px; }
.th-features .u293-im { background: var(--fx-soft); }
.th-features .u293-im i { background: var(--fx-accent); }
.th-features .u293-go { color: var(--fx-surface); }
.th-features .u279 {
  width: 100%; height: auto; min-height: 0; margin-top: 20px;
  padding: clamp(18px, 2vw, 26px); border: 1px solid var(--ux-line);
  border-radius: 22px; box-shadow: none;
}
.th-features .u279-hd { position: static; margin-bottom: 20px; }
.th-features .u279-hd i { width: 38px; height: 38px; background: var(--ux-surface-2); box-shadow: inset 0 0 0 1px var(--ux-line); }
.th-features .u279-hd i::after { content: '◷'; display: grid; place-items: center; width: 100%; height: 100%; color: var(--ux-ink); font-style: normal; font-size: 20px; }
.th-features .u279-hd b { font-size: 15px; font-weight: 700; }
.th-features .u279-hd small { margin-top: 4px; font-size: 12px; font-weight: 400; }
.th-features .u279-ds { position: static; gap: 8px; }
.th-features .u279-dy { height: 68px; padding: 10px 4px; gap: 4px; }
.th-features .u279-dy small { font-size: 11px; font-weight: 600; }
.th-features .u279-dy b { font-size: 17px; font-weight: 700; }
.th-features .u279-dy i { display: none; }
.th-features .u279-ls { position: static; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; overflow: visible; padding: 0; margin-top: 18px; }
.th-features .u279-rw { min-width: 0; height: 48px; margin: 0; }
.th-features .u279-rw.is-on { grid-column: 1 / -1; }
.th-features .u279-tm, .th-features .u279-ok { font-size: 14px; font-weight: 650; }
.th-features .u279-dn { border-radius: 21px; }
.th-features .u279-dn .fx-button { margin-top: 16px; min-height: 40px; font-size: 13px; padding: 8px 14px; }
.th-features .u279-dn small { font-size: 12px; }
.th-features .u279-ok { color: var(--fx-surface); }
.th-features .fx-timeline { display: grid; gap: 0; list-style: none; padding: 0; margin: 24px 0; }
.th-features .fx-timeline li { position: relative; display: flex; gap: 17px; min-height: 70px; padding-bottom: 18px; margin: 0; }
.th-features .fx-timeline li:not(:last-child)::after { position: absolute; content: ''; width: 1px; left: 18px; top: 36px; bottom: 0; background: var(--fx-line); }
.th-features .fx-timeline li > span { display: grid; place-items: center; flex: 0 0 37px; width: 37px; height: 37px; border-radius: 50%; border: 1px solid var(--fx-line); color: var(--fx-muted); font-size: 14px; }
.th-features .fx-timeline small { display: block; color: var(--fx-muted); font-size: 13px; }
.th-features .fx-timeline .done > span { background: var(--fx-soft); color: var(--fx-ink); }
.th-features .fx-timeline .current > span { background: var(--fx-accent); color: var(--fx-surface); border-color: var(--fx-accent); }
.th-features .fx-timeline .current strong { text-decoration: underline; text-underline-offset: 5px; }
.th-features .fx-sample-options { max-height: 530px; overflow-y: auto; display: grid; gap: 9px; padding: 4px; margin: 0 -4px; }
.th-features .fx-sample-option { min-height: 74px; padding: 12px; border-radius: 13px; border: 1px solid var(--fx-line); background: var(--fx-surface); color: var(--fx-ink); display: flex; align-items: center; gap: 13px; text-align: left; }
.th-features .fx-sample-option[aria-pressed="true"] { border-color: var(--fx-accent); box-shadow: inset 0 0 0 1px var(--fx-accent); }
.th-features .fx-sample-option strong { font-size: 14px; }
.th-features .fx-sample-option small { display: block; color: var(--fx-muted); font-size: 13px; }
.th-features .fx-small-swatch { flex: 0 0 42px; height: 42px; border-radius: 8px; background: var(--swatch); box-shadow: inset 0 0 0 1px rgb(0 0 0 / .1); }
.th-features .fx-check { margin-left: auto; font-size: 20px; padding-inline: 7px; }
.th-features img.fx-small-swatch { width: 42px; height: 42px; object-fit: cover; background: var(--fx-soft); }
.th-features .fx-table-brand { display: block; color: var(--fx-muted); font-size: 12px; font-weight: 400; margin-bottom: 3px; }
.th-features .fx-page-controls { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin: 0 0 30px; }
.th-features .fx-page-controls p { margin: 0; }
.th-features .fx-load-more { width: 100%; margin: 16px 0; }
.th-features [data-more-samples][hidden], .th-features [data-more-prices][hidden] { display: none !important; }
.th-features .fx-picked-list { padding: 0; margin: 0; list-style: none; display: grid; gap: 10px; }
.th-features .fx-picked-list li { display: flex; align-items: center; gap: 12px; padding: 12px; margin: 0; border: 1px solid var(--fx-line); border-radius: 12px; }
.th-features .fx-picked-list strong { display: block; font-size: 14px; }
.th-features .fx-picked-list small { display: block; font-size: 13px; color: var(--fx-muted); }
.th-features .fx-picked-list button { margin-left: auto; flex: 0 0 38px; width: 38px; height: 38px; border: 1px solid var(--fx-line); border-radius: 50%; background: var(--fx-soft); color: var(--fx-ink); font-size: 22px; }
.th-features .fx-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 960px) {
  .th-features .fx-grid-3 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .th-features .fx-quote { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 640px) {
  .th-features .fx-grid-2, .th-features .fx-grid-3, .th-features .fx-split, .th-features .fx-combo-bottom { grid-template-columns: minmax(0,1fr); }
  .th-features .fx-split { gap: 28px; }
  .th-features .u279 { margin-top: 16px; }
  .th-features .u279-ds { gap: 6px; }
  .th-features .u279-ls { gap: 8px; }
  .th-features .fx-combo-bottom .u293 { margin-inline: auto; }
  .th-features .fx-inline-form { flex-direction: column; align-items: stretch; }
  .th-features .fx-fieldset { padding: 14px; }
  .th-features .fx-summary { padding: 20px; }
  .th-features .fx-summary .fx-total { font-size: 30px; }
  .th-features .fx-badge { border-radius: 12px; }
  .th-features .fx-sample-options { max-height: 400px; }
}
@media (prefers-reduced-motion: reduce) {
  .th-features *, .th-features *::before, .th-features *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* #293 page port: large named selections and a real comparison dialog.
   The small laptop illustrations are intentionally not part of furniture packages. */
.th-features .fx-combo-intro{max-width:760px;margin-bottom:24px}
.th-features .fx-combo-intro h3{font-family:inherit;font-size:clamp(25px,2.5vw,34px);font-weight:550;line-height:1.25;letter-spacing:-.03em;margin:0 0 14px;text-wrap:balance}
.th-features .fx-combo-intro>p{font-size:16px;line-height:1.8;margin:0;color:var(--ux-ink-2)}
.th-features .fx-combo-widget.u293{width:100%;height:auto;min-height:0;max-width:none;padding:28px;border-radius:28px;overflow:hidden;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line)}
.th-features .fx-combo-widget-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}
.th-features .fx-combo-widget-head h4{font-family:inherit;font-size:20px;line-height:1.4;font-weight:600;margin:0}
.th-features .fx-combo-widget-head>span{font-size:13px;line-height:1.5;color:var(--ux-ink-3);white-space:nowrap}
.th-features .fx-combo-widget .u293-gd{position:relative;inset:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.th-features .fx-combo-picked .u293-pd{padding:22px;border-radius:18px;display:flex;flex-direction:column;gap:0;background:var(--ux-surface-2);min-width:0;animation:fx-combo-picked-in .4s cubic-bezier(.3,1.7,.5,1)}
.th-features .fx-combo-picked .u293-pd h5{font-family:inherit;font-size:19px;line-height:1.45;font-weight:600;letter-spacing:-.02em;margin:12px 0 18px;overflow-wrap:normal}
.th-features .fx-combo-tier{font-size:12px;line-height:1.5;color:var(--ux-ink-2)}
.th-features .fx-combo-picked .u293-pd strong{font-size:24px;line-height:1.3;font-weight:550;letter-spacing:-.025em;font-variant-numeric:tabular-nums;margin-top:auto}
.th-features .fx-combo-picked .u293-pd p{font-size:13px;line-height:1.6;color:var(--ux-ink-3);margin:8px 0 14px}
.th-features .fx-combo-picked .u293-pd button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:44px;padding:10px 0;border:0;border-top:1px solid var(--ux-line);border-radius:0;background:none;color:var(--ux-ink-2);font:inherit;font-size:13px;cursor:pointer}
.th-features .fx-combo-picked .u293-pd button>span{font-size:22px;line-height:1}
.th-features .fx-combo-empty{grid-column:1/-1;max-width:720px;margin:0;padding:20px 0 8px;font-size:15px;line-height:1.8;color:var(--ux-ink-2)}
.th-features .fx-combo-widget .u293-tr{position:relative;inset:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;height:auto;min-height:80px;padding:18px 20px;margin-top:22px;border-radius:18px;background:var(--ux-ink);color:var(--ux-surface)}
.th-features .fx-combo-widget .u293-tr[hidden]{display:none!important}
.th-features .fx-combo-widget .u293-tx{font-size:14px;font-weight:450;line-height:1.7;white-space:normal;overflow:visible;text-overflow:clip;opacity:1;margin:0}
.th-features .fx-combo-widget .u293-go{min-height:46px;height:auto;padding:12px 18px;border-radius:12px;font-size:15px;line-height:1.5;font-weight:600;background:var(--ux-surface);color:var(--ux-ink);white-space:nowrap}
.th-features .fx-combo-widget .fx-feedback:empty{display:none}
.th-features .fx-combo-widget .fx-feedback{margin:18px 0 0;font-size:14px;line-height:1.6}
.fx-combo-modal.u293{position:fixed;inset:0;margin:auto;width:min(1120px,calc(100vw - 32px));max-width:none;height:auto;max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:26px;overflow:hidden;background:var(--ux-surface);color:var(--ux-ink);box-shadow:0 32px 100px -30px var(--ux-shadow-strong);font-family:inherit}
.fx-combo-modal:not([open]){display:none!important}
.fx-combo-modal::backdrop{background:rgba(12,27,18,.7);backdrop-filter:blur(5px)}
.fx-combo-modal .u293-cm{position:relative;inset:auto;padding:28px;max-height:calc(100dvh - 32px);overflow:auto;background:var(--ux-surface)}
.fx-combo-modal .u293-ch{align-items:flex-start;gap:24px;font-size:inherit}
.fx-combo-modal .u293-ch h2{font-family:inherit;font-size:clamp(24px,3vw,32px);font-weight:550;line-height:1.25;letter-spacing:-.03em;margin:0}
.fx-combo-modal .u293-ch p{font-size:14px;line-height:1.8;font-weight:400;color:var(--ux-ink-2);margin:12px 0 0;max-width:790px}
.fx-combo-modal .u293-bk{width:44px;height:44px;flex:none;border-radius:50%;color:var(--ux-ink)}
.fx-combo-modal .u293-bk svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.fx-combo-modal .u293-tb{display:block;margin-top:26px;overflow-x:auto;overscroll-behavior-x:contain;min-width:0;scrollbar-width:thin}
.fx-combo-modal .u293-r{width:max-content;min-width:100%;min-height:72px;font-size:15px;font-weight:400;text-align:left;align-items:stretch}
.fx-combo-modal .u293-r>span{display:flex;align-items:center;min-width:0;padding:18px 20px;line-height:1.7;border-right:1px solid var(--ux-line);overflow-wrap:break-word}
.fx-combo-modal .u293-r>span:first-child{position:sticky;left:0;z-index:2;font-size:13px;font-weight:550;background:var(--ux-surface);color:var(--ux-ink-2);padding-left:0}
.fx-combo-modal .u293-r>span:last-child{border-right:0}
.fx-combo-modal .u293-r>span.fx-combo-scope-cell{flex-direction:column;align-items:flex-start;justify-content:center;gap:10px}
.fx-combo-modal .fx-combo-scope-line+.fx-combo-scope-line{padding-top:10px;border-top:1px solid var(--ux-line);width:100%}
.fx-combo-modal .u293-r.is-h{font-size:18px;font-weight:600;color:var(--ux-ink)}
.fx-combo-modal-foot{margin:20px 0 0;font-size:12px;line-height:1.75;color:var(--ux-ink-3)}
.fx-combo-modal :focus-visible{outline:2px solid var(--ux-accent);outline-offset:3px}
@keyframes fx-combo-picked-in{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
@media(max-width:900px){.th-features .fx-combo-picked .u293-pd{padding:18px}.th-features .fx-combo-picked .u293-pd h5{font-size:17px}.th-features .fx-combo-picked .u293-pd strong{font-size:21px}}
@media(max-width:640px){.th-features .fx-combo-bottom{margin-top:32px}.th-features .fx-combo-widget.u293{padding:22px;border-radius:24px}.th-features .fx-combo-widget .u293-gd{grid-template-columns:1fr;gap:14px}.th-features .fx-combo-picked .u293-pd{padding:20px}.th-features .fx-combo-picked .u293-pd h5{font-size:19px;margin-bottom:16px}.th-features .fx-combo-picked .u293-pd strong{font-size:24px}.th-features .fx-combo-widget-head{align-items:flex-start}.th-features .fx-combo-widget-head h4{font-size:18px}.th-features .fx-combo-widget .u293-tr{flex-direction:column;align-items:stretch;gap:14px;padding:18px}.th-features .fx-combo-widget .u293-go{width:100%;min-height:48px}.th-features .fx-combo-widget .u293-tx{font-size:13px}.fx-combo-modal.u293{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:20px}.fx-combo-modal .u293-cm{padding:22px 18px;max-height:calc(100dvh - 16px)}.fx-combo-modal .u293-ch{gap:14px}.fx-combo-modal .u293-ch h2{font-size:25px}.fx-combo-modal .u293-ch p{font-size:13px}.fx-combo-modal .u293-r{min-height:68px;font-size:14px}.fx-combo-modal .u293-r>span{padding:16px}.fx-combo-modal .u293-r.is-h{font-size:16px}}
@media(prefers-reduced-motion:reduce){.th-features .fx-combo-picked .u293-pd{animation:none}.fx-combo-modal .u293-cm,.fx-combo-modal .u293-r{transition:none}}

@font-face{font-family:Manrope;src:url('../fonts/Manrope-variable.woff2?v=4081a37740') format('woff2');font-weight:200 800;font-display:swap}@font-face{font-family:Cormorant;src:url('../fonts/CormorantGaramond-variable.woff2?v=4081a37740') format('woff2');font-weight:300 700;font-display:swap}@font-face{font-family:Cormorant;src:url('../fonts/CormorantGaramond-Italic-variable.woff2?v=4081a37740') format('woff2');font-weight:300 700;font-style:italic;font-display:swap}
*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:15px;line-height:1.75;-webkit-font-smoothing:antialiased}body,button,input,select,textarea{font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font-size:inherit}button{cursor:pointer;color:inherit}button{background:none;border:0}button,select,a,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--wood);outline-offset:5px}img{display:block;max-width:100%;object-fit:cover;height:auto}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.4;flex-shrink:0}p{margin:0 0 1.3em}h1,h2,h3{margin:0;font-weight:500}h1,h2{font-family:Cormorant,Georgia,serif;font-weight:400;line-height:1.04;letter-spacing:-.035em}h1{font-size:clamp(54px,6.3vw,100px)}h2{font-size:clamp(38px,4.2vw,64px)}h3{font-size:20px;line-height:1.45;letter-spacing:-.025em}em{font-weight:400}small{font-size:12px;line-height:1.65}.wrap{max-width:1440px;width:calc(100% - 112px);margin-inline:auto}.section{padding-block:96px}.section-start{padding-top:14px;padding-bottom:96px}.grid{display:grid;gap:32px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4,.material-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.grid>*{min-width:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.section-label{font-size:12px;letter-spacing:.05em;margin-bottom:20px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:42px}.section-head h2{max-width:760px}.section-head .text-link{flex-shrink:0}.section-description{max-width:740px;color:var(--muted);margin-top:-20px;margin-bottom:34px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:54px;padding:15px 24px;background:var(--forest);border:1px solid var(--forest);color:var(--paper);border-radius:2px;font-size:13px;font-weight:500;line-height:1.6;transition:transform .25s,background .25s,box-shadow .25s}.btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px color-mix(in srgb,var(--ink) 12%,transparent)}.btn svg{width:20px;height:20px}.btn.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.btn.secondary:hover{border-color:var(--wood);background:color-mix(in srgb,var(--wood) 8%,transparent)}.btn.light{background:var(--brand-paper);color:var(--brand-forest);border-color:var(--brand-paper)}.text-link{display:inline-flex;align-items:center;gap:22px;font-size:13px;padding:9px 0;border-bottom:1px solid var(--line);line-height:1.5}.text-link:hover{border-color:var(--wood)}.text-link svg{width:20px}.text-button,.quiet-link{font-size:13px;text-decoration:underline;text-underline-offset:5px;padding:7px 0}.button-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.tag{font-size:11px;line-height:1.4;background:var(--paper);border:1px solid var(--line);padding:8px 11px;border-radius:2px}.micro,.honesty{font-size:12px;color:var(--muted);line-height:1.7}.honesty{display:block;margin-top:24px}.skip-link{position:fixed;top:-100px;left:20px;background:var(--forest);color:var(--paper);padding:16px;z-index:10000}.skip-link:focus{top:12px}[hidden]{display:none!important}.site-header{height:108px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding-inline:56px;border-bottom:1px solid var(--line);position:relative;z-index:60;background:var(--paper)}.brand{display:flex;align-items:center;gap:16px;flex-shrink:0}.wordmark{font-family:Cormorant,Georgia,serif;font-weight:600;font-size:42px;line-height:1;letter-spacing:-.045em}.brand-desc{font-size:9px;line-height:1.7;max-width:80px;letter-spacing:.09em;padding-left:16px;border-left:1px solid var(--line)}.brand img{max-width:180px;max-height:54px;object-fit:contain}.desktop-nav{display:flex;align-items:center;gap:30px;margin-left:auto}.desktop-nav a{font-size:12px;position:relative;padding-block:10px;white-space:nowrap}.desktop-nav a:after{content:'';height:1px;background:var(--wood);position:absolute;left:0;right:100%;bottom:2px;transition:right .25s}.desktop-nav a:hover:after{right:0}.header-actions{display:flex;align-items:center;gap:12px}.icon-btn{position:relative;width:38px;min-width:38px;height:42px;display:flex;align-items:center;justify-content:center}.icon-btn svg{width:20px;height:20px}.save-link span{font-size:9px;position:absolute;right:0;top:0;line-height:1}.header-contact{display:flex;align-items:center;gap:14px;font-size:12px;border-left:1px solid var(--line);padding-left:20px;white-space:nowrap}.header-contact svg{width:18px}.menu-toggle{display:flex;align-items:center;justify-content:center;position:relative;z-index:110;width:42px;height:42px;border:1px solid var(--line);border-radius:50%}.menu-toggle svg{width:20px}.site-header.u045{overflow:visible}.site-header .u045-sheet{position:fixed;inset:0;background:var(--forest);color:var(--paper);overflow-y:auto;z-index:100;padding:72px 8%;width:100%;height:100dvh;clip-path:circle(0 at calc(100% - 75px) 54px);transition:clip-path .7s cubic-bezier(.2,.8,.2,1);border:0;border-radius:0;max-width:none;transform:none}.u045-menu-open .site-header .u045-sheet{clip-path:circle(160% at calc(100% - 75px) 54px)}.u045-menu-open .menu-toggle{color:var(--paper);border-color:color-mix(in srgb,var(--paper) 35%,transparent)}.menu-inner{width:min(1100px,100%);margin:auto}.menu-label{font-size:14px;opacity:.7;margin-bottom:42px}.menu-inner nav{display:grid;grid-template-columns:1fr 1fr;gap:12px 8%}.menu-inner nav a{font-family:Cormorant,Georgia,serif;font-size:clamp(23px,3.2vw,42px);line-height:1.25;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--paper) 20%,transparent);padding-bottom:12px;opacity:1;transform:none}.menu-inner nav a:hover{color:var(--cream)}.menu-inner small{display:block;margin-top:45px;opacity:.7}.hero{padding-top:68px}.hero-copy{display:flex;align-items:end;justify-content:space-between;gap:9%;padding-bottom:46px}.hero-copy h1{font-size:clamp(60px,7.1vw,110px);max-width:850px}.hero-copy .section-label{margin-bottom:24px}.hero-aside{max-width:315px;padding-bottom:5px;flex-shrink:0}.hero-aside p{font-size:13px;line-height:1.9;color:var(--muted);margin-bottom:26px}.hero-aside .btn{display:flex;justify-content:space-between}.hero-aside .quiet-link{display:flex;justify-content:space-between;margin-top:12px;text-decoration:none}.hero-photo{position:relative;display:block;overflow:hidden;aspect-ratio:2.18}.hero-photo>img{width:100%;height:100%;transition:transform 1.5s cubic-bezier(.2,.8,.2,1)}.hero-photo:hover>img{transform:scale(1.025)}.hero-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0005);pointer-events:none}.hero-photo-caption{position:absolute;bottom:30px;left:32px;right:32px;z-index:1;display:flex;align-items:center;justify-content:space-between;color:white;font-size:17px}.hero-photo-caption small{display:block;margin-top:3px;opacity:.8}.photo-circle{width:50px;height:50px;border:1px solid #fff8;border-radius:50%;display:flex;align-items:center;justify-content:center}.hero-footnote{font-size:10px;letter-spacing:.035em;color:var(--muted);padding-top:13px;margin-bottom:0}.image-link{display:block;position:relative;overflow:hidden}.image-link>img{width:100%;height:100%;aspect-ratio:1.15;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.image-link:hover>img{transform:scale(1.035)}.image-action{position:absolute;bottom:20px;right:20px;padding:10px 16px;background:var(--paper);color:var(--ink);font-size:12px;display:flex;align-items:center;gap:14px}.image-action svg{width:18px}.image-tag{position:absolute;left:20px;top:20px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px}.card-heading p{font-size:11px;color:var(--muted);margin-bottom:7px}.card-heading h3{font-family:Cormorant,Georgia,serif;font-size:31px;font-weight:500}.circle-link{border:1px solid var(--line);width:42px;height:42px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:0;border-radius:50%;transition:background .25s}.circle-link:hover{background:var(--cream)}.material-section{background:color-mix(in srgb,var(--cream) 40%,var(--paper))}.material-editorial{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.material-editorial>div:first-child>img{width:100%;aspect-ratio:.92;object-fit:cover}.material-editorial>div:first-child>p{font-family:Cormorant,Georgia,serif;font-size:27px;line-height:1.35;max-width:430px;margin-top:24px;margin-bottom:0}.material-editorial .grid{gap:25px}.material-card{position:relative;padding-bottom:20px;min-width:0}.material-image{display:block;position:relative;overflow:hidden;background:var(--cream)}.material-image img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .65s}.material-image:hover img{transform:scale(1.05)}.material-image>span{position:absolute;left:12px;bottom:12px;padding:3px 9px;background:var(--paper);font-size:9px;color:var(--ink)}.material-save{position:absolute!important;right:9px;top:9px;border-radius:50%!important;width:34px!important;height:34px!important;background:var(--paper)!important;display:flex;align-items:center;justify-content:center;min-height:34px!important;box-shadow:none!important;padding:0!important}.material-save svg{width:15px;height:18px;stroke:var(--ink);fill:none}.material-save[aria-pressed=true]{background:var(--forest)!important;color:var(--paper)}.material-save[aria-pressed=true] svg{stroke:var(--paper)}.material-card-head{display:flex;justify-content:space-between;gap:10px;align-items:center;padding-top:15px}.material-card-head h3{font-size:14px;font-weight:600;line-height:1.6}.material-card-head p{font-size:10px;color:var(--muted);margin:1px 0 0}.compare-control{font-size:10px;border:1px solid var(--line);padding:5px 9px;white-space:nowrap;transition:background .2s}.compare-control[aria-pressed=true]{background:var(--forest);color:var(--paper);border-color:var(--forest)}.compare-control span{font-size:14px}.material-price{font-size:12px;margin:11px 0 0}.material-price span{font-size:10px;color:var(--muted)}.material-bottom{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-top:38px;border-top:1px solid var(--line);padding-top:30px}.material-bottom p{font-size:14px;margin:0}.material-bottom small{font-size:10px}.story-split{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:9%}.story-image img{aspect-ratio:1;object-position:45%;width:100%}.story-split h2{margin-bottom:30px}.story-split p:not(.section-label){font-size:14px;color:var(--muted)}.forest-section{background:var(--brand-forest);color:var(--brand-paper)}.forest-section .section-label{color:var(--brand-cream)}.preview-split{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:center}.preview-split h2{margin-bottom:28px}.preview-split p:not(.section-label){font-size:14px;color:var(--brand-cream);max-width:400px;margin-bottom:30px}.preview-art{position:relative}.preview-art img{width:100%;aspect-ratio:1.3}.preview-art>span{position:absolute;bottom:20px;right:20px;display:flex;gap:18px;align-items:center;font-size:12px;background:var(--paper);color:var(--ink);padding:10px 20px}.project-card .image-link img{aspect-ratio:1.5}.process-split{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start}.process-split>div>p:not(.section-label){color:var(--muted);max-width:400px;margin-top:25px}.process-list{list-style:none;padding:0;margin:0}.process-list li{display:flex;gap:22px;border-top:1px solid var(--line);padding:23px 0}.process-list li:last-child{border-bottom:1px solid var(--line)}.process-list li>span{font-size:11px;color:var(--wood);padding-top:4px}.process-list h3{font-size:17px}.process-list p{font-size:12px;color:var(--muted);margin:6px 0 0}.soft-section{background:color-mix(in srgb,var(--cream) 25%,var(--paper))}.tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--line)}.tool-grid>a{display:block;padding:30px;position:relative;min-width:0;transition:background .25s}.tool-grid>a:hover{background:var(--cream)}.tool-grid>a+a{border-left:1px solid var(--line)}.tool-icon{font-size:30px;line-height:1;display:block;margin-bottom:28px;color:var(--wood)}.tool-grid h3{font-size:17px;margin-bottom:12px;max-width:230px}.tool-grid p{font-size:12px;color:var(--muted);margin-bottom:30px}.tool-grid svg{position:absolute;bottom:20px;right:24px;width:20px}.article-card img{aspect-ratio:1.4;width:100%;margin-bottom:24px}.article-card .section-label{font-size:10px;margin-bottom:10px}.article-card h3{font-family:Cormorant,Georgia,serif;font-size:29px;line-height:1.15;margin-bottom:13px}.article-card>p:not(.section-label){font-size:12px;color:var(--muted)}.article-card .text-link{font-size:11px}.review-card{border:1px solid var(--line)}.review-card>img{aspect-ratio:2.2;width:100%}.review-card>div{padding:26px}.review-stars{font-size:12px;letter-spacing:3px;color:var(--wood)}.review-card h3{font-family:Cormorant,Georgia,serif;font-size:27px;margin-top:15px}.review-card blockquote{margin:16px 0 24px;font-size:12px;color:var(--muted)}.review-card p{font-size:12px;margin:0}.review-card small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.faq-split{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.faq-split .text-link{margin-top:24px}.faq.u044{background:transparent;border:0;width:100%;max-width:none;box-shadow:none;padding:0}.faq.u044 .u044-it{border:0;border-top:1px solid var(--line);border-radius:0;margin:0;background:transparent;box-shadow:none}.faq.u044 .u044-it:last-child{border-bottom:1px solid var(--line)}.faq.u044 .u044-q{font:500 15px/1.65 Manrope,Arial,sans-serif;color:var(--ink);padding:24px 0;gap:30px;text-align:left;width:100%}.faq.u044 .u044-a{padding:0 40px 25px 0;color:var(--muted);font-size:13px;line-height:1.9}.faq.u044 .u044-a p{margin:0}.contact-section{background:color-mix(in srgb,var(--cream) 30%,var(--paper))}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:start}.contact-layout h2{margin-bottom:26px}.contact-layout>div>p:not(.section-label){font-size:14px;color:var(--muted);max-width:400px}.enquiry.u295{background:var(--surface);border:1px solid var(--line);border-radius:2px;box-shadow:none;width:100%;max-width:none;padding:34px}.form-heading h3{font-family:Cormorant,Georgia,serif;font-size:29px;line-height:1.15;margin-bottom:14px}.form-heading p{font-size:11px;color:var(--muted);margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--ink)}.form-grid .full{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:2px;min-height:48px;padding:11px 13px;background:var(--paper);color:var(--ink);line-height:1.5;box-shadow:none;max-width:100%}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.8}input[type=checkbox]{width:16px;height:16px;min-height:16px;padding:0;accent-color:var(--forest);flex-shrink:0}input[type=color]{padding:3px}input[type=range]{padding:0;border:0;background:transparent}input[type=file]{font-size:11px;min-height:48px;display:block}input[type=file]::file-selector-button{background:var(--cream);border:0;color:var(--ink);padding:8px 12px;margin-right:12px}.consent{display:flex;gap:10px;align-items:flex-start;font-size:10px;color:var(--muted);margin:22px 0}.consent input{margin-top:3px}.form-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.form-actions span{font-size:10px;color:var(--muted)}.form-actions .btn{font-size:12px;min-height:50px}.form-result{font-size:12px;padding:15px;background:var(--cream);margin-top:20px;line-height:1.7}.form-result:empty{display:none}.contact-links{display:flex;flex-direction:column;align-items:start;gap:12px;margin-top:30px}.inquiry-history{border-top:1px solid var(--line);padding-top:30px;margin-top:40px}.inquiry-history h3{font-size:16px;margin-bottom:20px}.history-item{padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.history-item small{display:block;color:var(--muted)}.site-footer{padding:64px 56px 25px;border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:50px;padding-bottom:50px}.footer-top p{font-size:13px;color:var(--muted);margin:0}.footer-columns{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:10%;border-top:1px solid var(--line);padding-block:42px}.footer-columns h3{font-size:12px;font-weight:600;margin-bottom:16px}.footer-columns p,.footer-columns a{font-size:11px;color:var(--muted);margin-bottom:10px;display:block}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:25px;font-size:10px;color:var(--muted)}.footer-bottom>div{display:flex;gap:24px;align-items:center}.footer-bottom .text-button{font-size:10px;padding:0}.page-intro{padding-top:70px;padding-bottom:56px}.page-intro h1{max-width:1040px}.intro-bottom{display:flex;justify-content:space-between;gap:80px;align-items:center;margin-top:28px}.intro-bottom p{max-width:660px;font-size:14px;color:var(--muted);line-height:1.9;margin:0}.intro-bottom .btn{flex-shrink:0}.filter-bar{display:flex;gap:14px;flex-wrap:wrap;align-items:end;padding-block:26px;border-bottom:1px solid var(--line)}.filter-bar label{font-size:10px;color:var(--muted);display:flex;flex-direction:column;gap:6px;flex:1 1 145px}.filter-bar label.search{flex:2 1 245px}.filter-bar input,.filter-bar select{font-size:12px;background:transparent;min-height:44px;padding:10px}.filter-reset{font-size:11px;min-height:44px;text-decoration:underline;text-underline-offset:3px;padding:10px 0}.materials-library .u039-tabs{display:inline-flex;flex-wrap:wrap;gap:6px;max-width:100%;margin:0;padding:5px;border:1px solid var(--line);border-radius:3px;background:transparent}.materials-library.u039{background:transparent;box-shadow:none;border:0;padding-bottom:96px}.materials-library .u039-tabs button{font-size:12px;border-radius:2px;padding:11px 20px;min-height:44px;position:relative;z-index:1}.materials-library .u039-tabs .u039-pill{background:var(--forest);border-radius:2px;box-shadow:none}.materials-library .u039-tabs button[aria-selected=true]{color:var(--paper)}.results-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;padding-block:26px;color:var(--muted)}.results-bar p{margin:0}.results-bar strong{font-weight:500;color:var(--ink)}.results-bar>div{display:flex;gap:26px;align-items:center}.results-bar .text-button{font-size:11px}.material-grid{gap:28px}.demo-note{margin-block:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;gap:15px;align-items:start;padding:18px 0;color:var(--muted)}.demo-note>span{border:1px solid var(--muted);border-radius:50%;width:17px;height:17px;display:flex;justify-content:center;align-items:center;font-family:Georgia,serif;font-size:11px;flex-shrink:0;margin-top:3px}.demo-note p{font-size:11px;line-height:1.9;margin:0}.empty-state{text-align:center;padding:80px 25px;border:1px solid var(--line);margin-block:30px}.empty-state h2{font-size:40px;margin-bottom:18px}.empty-state p{color:var(--muted)}.chip-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px}.chip{font-size:12px;border:1px solid var(--line);padding:11px 20px;border-radius:2px;min-height:44px}.chip.active,.chip:hover{background:var(--forest);color:var(--paper);border-color:var(--forest)}.breadcrumb{font-size:11px;color:var(--muted);padding-block:32px;display:flex;gap:14px}.material-detail{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding-bottom:30px}.detail-swatch{padding:0;position:relative;display:block;width:100%;text-align:left}.detail-swatch img{aspect-ratio:1;object-fit:cover;width:100%}.detail-swatch span{position:absolute;bottom:20px;right:20px;background:var(--paper);padding:10px 18px;font-size:11px}.material-summary h1{font-size:clamp(50px,6vw,82px)}.material-code{color:var(--muted);font-size:13px;margin-top:16px}.material-summary>p:not(.section-label,.material-code,.micro){font-size:14px;max-width:480px}.detail-price{font-size:25px;border-top:1px solid var(--line);padding-top:22px;margin-top:26px}.detail-price small{font-size:11px;color:var(--muted);margin-left:12px}.specs{margin:22px 0 26px;font-size:12px}.specs>div{display:flex;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding:11px 0}.specs dt{color:var(--muted)}.specs dd{margin:0;text-align:right}.material-summary .button-row .btn{font-size:11px;min-height:48px;padding-inline:18px;gap:13px}.material-summary .button-row .text-button{font-size:11px}.material-summary .micro{margin-top:24px;font-size:10px}.source-link{font-size:11px;text-decoration:underline;text-underline-offset:4px}.plain-list{padding:0;list-style:none;margin-block:25px}.plain-list li{border-bottom:1px solid var(--line);padding:12px 0;font-size:14px}.split h2{margin-bottom:26px}.split>div>p:not(.section-label){font-size:14px;color:var(--muted)}.simple-card{border:1px solid var(--line);padding:32px}.simple-card h3{font-size:20px;margin-bottom:18px}.simple-card p{font-size:13px;color:var(--muted)}.simple-card .micro{font-size:10px}.simple-card .text-link{font-size:11px}.detail-hero{position:relative}.detail-hero>img{width:100%;max-height:740px;aspect-ratio:2}.check-list{list-style:none;padding:0;margin:28px 0}.check-list li{border-top:1px solid var(--line);padding:15px 0;font-size:13px;display:flex;gap:15px}.check-list li:before{content:'✓';color:var(--wood)}.check-list li:last-child{border-bottom:1px solid var(--line)}.gallery-photo{display:block;position:relative;padding:0;width:100%;overflow:hidden}.gallery-photo img{width:100%;aspect-ratio:1.5;transition:transform .7s}.gallery-photo:hover img{transform:scale(1.025)}.detail-hero .gallery-photo img{aspect-ratio:2}.project-specs{display:grid;grid-template-columns:repeat(4,1fr);padding-block:30px;border-bottom:1px solid var(--line);gap:25px}.project-specs span{display:block;font-size:11px;color:var(--muted);margin-bottom:12px}.project-specs strong{font-size:17px;font-weight:500}.project-filters label{flex:1 1 200px}.article-hero img{width:100%;aspect-ratio:2.4;max-height:600px}.article-body{max-width:760px;width:calc(100% - 48px);margin:64px auto 96px}.article-meta{font-size:11px;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:45px}.article-body section{margin-bottom:42px}.article-body h2{font-size:40px;margin-bottom:18px}.article-body p{font-size:14px;line-height:2;color:var(--muted)}.article-callout{padding:34px;background:var(--cream);margin-top:45px}.article-callout h3{font-size:20px;margin-bottom:16px}.article-callout p{font-size:13px}.feature-page{min-height:480px}.loading-panel{min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--cream);color:var(--muted);gap:20px}.loading-dot{width:28px;height:28px;border:2px solid var(--line);border-top-color:var(--wood);border-radius:50%;animation:spin .9s linear infinite}.loading-panel p{font-size:13px}.plan-attachment{padding:18px;border:1px solid var(--line);margin-block:22px;display:flex;gap:18px;align-items:center;font-size:12px}.plan-attachment img{width:130px;aspect-ratio:1.4;object-fit:contain;background:var(--cream)}.saved-plan{margin-top:60px;padding:32px;border:1px solid var(--line)}.saved-plan h2{margin-bottom:22px}.saved-plan img{max-height:520px;margin-block:25px;object-fit:contain}.noscript{padding:20px;text-align:center;background:var(--cream)}.u295 .u295-field-error{font-size:10px!important}.cfg-shell{--cfg-paper:var(--surface);--cfg-ink:var(--ink)}
@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.hero-photo{aspect-ratio:2.3}.hero-copy h1{font-size:116px}}
@media(max-width:1250px){.wrap{width:calc(100% - 72px)}.site-header{padding-inline:36px;gap:20px}.desktop-nav{gap:20px}.header-contact{display:none}.hero-copy{gap:7%}.hero-copy h1{font-size:84px}.hero-aside{max-width:280px}.material-editorial{gap:40px}.material-card-head{display:block}.compare-control{margin-top:10px}.site-footer{padding-inline:36px}.contact-layout{gap:6%}.enquiry.u295{padding:28px}.tool-grid>a{padding:24px}}
@media(max-width:950px){.desktop-nav{display:none}.header-actions{margin-left:auto}.header-contact{display:flex}.site-header{height:90px}.hero{padding-top:48px}.hero-copy h1{font-size:73px}.hero-aside{max-width:240px}.hero-aside p{font-size:12px}.hero-photo{aspect-ratio:1.7}.section{padding-block:72px}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-4,.material-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.material-editorial{grid-template-columns:1fr 1.2fr;gap:30px}.material-editorial .grid{gap:16px}.material-editorial>div:first-child>img{aspect-ratio:.7}.story-split{gap:7%}.story-split h2{font-size:46px}.tool-grid{grid-template-columns:1fr 1fr}.tool-grid>a:nth-child(3){border-left:0;border-top:1px solid var(--line)}.tool-grid>a:nth-child(4){border-top:1px solid var(--line)}.preview-split{gap:6%;grid-template-columns:1fr 1fr}.process-split{gap:8%}.faq-split{gap:7%;grid-template-columns:.7fr 1.3fr}.contact-layout{grid-template-columns:1fr 1.4fr;gap:5%}.contact-layout h2{font-size:46px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.form-heading h3{font-size:25px}.footer-top{gap:35px}.footer-top .brand-desc{display:none}.footer-top p{font-size:12px}.intro-bottom{gap:30px}.material-detail{gap:6%;align-items:start}.material-summary h1{font-size:54px}.material-summary .section-label{font-size:10px}.detail-price{font-size:20px}.material-summary>p:not(.section-label,.material-code,.micro){font-size:12px}.material-summary .button-row .btn{width:100%}.split{gap:6%}.project-specs strong{font-size:14px}}
@media(max-width:700px){body{font-size:14px}.wrap{width:calc(100% - 40px)}.site-header{height:82px;padding-inline:20px;gap:10px}.wordmark{font-size:36px}.brand{gap:10px}.brand-desc{font-size:8px;max-width:70px;padding-left:10px}.header-actions{gap:4px}.icon-btn{width:32px;min-width:32px}.header-contact{display:none}.menu-toggle{width:38px;height:38px}.site-header .u045-sheet{padding:88px 28px 35px;clip-path:circle(0 at calc(100% - 38px) 41px)}.u045-menu-open .site-header .u045-sheet{clip-path:circle(160% at calc(100% - 38px) 41px)}.menu-label{font-size:12px;margin-bottom:30px}.menu-inner nav{gap:12px 24px}.menu-inner nav a{font-size:24px;padding-block:5px}.menu-inner nav a svg{width:16px}.menu-inner small{margin-top:30px}.hero{padding-top:38px}.hero-copy{display:block;padding-bottom:32px}.hero-copy h1{font-size:clamp(56px,10.8vw,78px);line-height:1.02}.hero-copy .section-label{font-size:10px;margin-bottom:20px}.hero-aside{max-width:none;margin-top:26px;display:grid;grid-template-columns:1fr auto;gap:0 15px;align-items:center}.hero-aside p{grid-column:1/-1;font-size:12px;max-width:420px;margin-bottom:22px}.hero-aside .btn{font-size:11px;min-height:48px;gap:15px}.hero-aside .quiet-link{font-size:11px;gap:10px;margin:0;white-space:nowrap}.hero-photo{aspect-ratio:1.07}.hero-photo>img{object-position:60%}.hero-photo-caption{bottom:20px;left:20px;right:20px;font-size:15px}.hero-photo-caption small{font-size:9px;max-width:225px}.photo-circle{width:38px;height:38px}.photo-circle svg{width:18px}.hero-footnote{font-size:8px;padding-top:10px;line-height:1.8}.section{padding-block:56px}.section-start{padding-bottom:56px}.section-head{display:block;margin-bottom:28px}.section-head h2{font-size:42px;max-width:550px}.section-head .text-link{margin-top:18px;font-size:11px}.section-label{font-size:10px;margin-bottom:16px}.grid{gap:26px}.grid-3{grid-template-columns:1fr}.grid-4{grid-template-columns:1fr 1fr}.grid-2{grid-template-columns:1fr}.room-card .image-link img{aspect-ratio:1.25}.card-heading{padding-top:15px}.card-heading h3{font-size:30px}.card-heading p{font-size:10px}.circle-link{width:38px;height:38px}.material-editorial{display:block}.material-editorial>div:first-child{margin-bottom:32px}.material-editorial>div:first-child>img{aspect-ratio:1.5}.material-editorial>div:first-child>p{font-size:25px;max-width:330px;margin-top:18px}.material-editorial>.grid{grid-template-columns:1fr 1fr;gap:18px}.material-card-head h3{font-size:13px}.material-card-head p{font-size:9px}.material-price{font-size:11px}.material-price span{font-size:9px;display:block}.material-bottom{display:block;margin-top:24px;padding-top:24px}.material-bottom p{font-size:12px;margin-bottom:20px}.material-bottom small{font-size:9px}.material-bottom .btn{font-size:12px}.story-split{display:flex;flex-direction:column;gap:30px}.story-image{width:100%}.story-image img{aspect-ratio:1.2}.story-split h2{font-size:45px;margin-bottom:23px}.story-split p:not(.section-label){font-size:13px}.preview-split{display:flex;flex-direction:column;gap:36px;align-items:stretch}.preview-split h2{font-size:45px}.preview-split p:not(.section-label){font-size:12px}.preview-art img{aspect-ratio:1.15}.process-split{display:block}.process-split>div{margin-bottom:36px}.process-split h2{font-size:46px}.process-list li{padding:20px 0}.process-list h3{font-size:16px}.process-list p{font-size:11px}.tool-grid{grid-template-columns:1fr 1fr}.tool-grid>a{padding:20px;min-height:220px}.tool-grid h3{font-size:15px;line-height:1.5}.tool-grid p{font-size:10px}.tool-icon{margin-bottom:20px;font-size:28px}.tool-grid svg{width:17px;right:18px;bottom:18px}.article-card img{margin-bottom:20px;aspect-ratio:1.6}.article-card h3{font-size:29px}.article-card>p:not(.section-label){font-size:12px}.review-card>img{aspect-ratio:2.5}.review-card>div{padding:24px}.section-description{font-size:12px;margin-top:-8px}.faq-split{display:block}.faq-split>div:first-child{margin-bottom:30px}.faq-split h2{font-size:46px}.faq.u044 .u044-q{font-size:13px;padding-block:20px;gap:20px}.faq.u044 .u044-a{font-size:12px;padding-right:20px}.contact-layout{display:block}.contact-layout>div:first-child{margin-bottom:32px}.contact-layout h2{font-size:46px}.contact-layout>div>p:not(.section-label){font-size:12px}.enquiry.u295{padding:24px 20px}.form-heading h3{font-size:28px}.form-grid{gap:17px;grid-template-columns:1fr 1fr}.form-grid label{font-size:10px}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{font-size:13px}.form-heading p{font-size:10px}.form-actions .btn{width:100%;justify-content:space-between}.form-actions span{font-size:9px}.site-footer{padding:40px 20px 24px}.footer-top{display:block;padding-bottom:30px}.footer-top .brand{margin-bottom:22px}.footer-top .brand-desc{display:block}.footer-top p{font-size:12px;margin-bottom:20px}.footer-top .btn{font-size:11px}.footer-columns{grid-template-columns:1fr 1fr;gap:28px 18px;padding-block:30px}.footer-columns>div:first-child{grid-column:1/-1}.footer-columns h3{font-size:11px}.footer-columns p,.footer-columns a{font-size:10px}.footer-bottom{display:block;font-size:9px;padding-top:18px}.footer-bottom>div{gap:15px;flex-wrap:wrap;margin-top:15px}.footer-bottom .text-button{font-size:9px}.page-intro{padding-top:40px;padding-bottom:34px}.page-intro h1{font-size:56px}.intro-bottom{display:block;margin-top:24px}.intro-bottom p{font-size:12px}.intro-bottom>.btn,.intro-bottom>.button-row{margin-top:23px}.materials-library .u039-tabs{display:flex;gap:3px;padding:3px;width:100%}.materials-library .u039-tabs button{font-size:10px;padding:9px 10px;flex:1;min-height:42px;white-space:nowrap}.filter-bar{gap:13px 12px;padding-block:23px}.filter-bar label{flex:1 1 calc(50% - 12px);min-width:0;font-size:9px}.filter-bar label.search{flex:1 1 100%}.filter-bar input,.filter-bar select{font-size:11px;padding:9px;min-height:42px}.filter-reset{font-size:10px}.results-bar{font-size:10px;padding-block:22px;gap:14px;align-items:start}.results-bar>div{gap:10px;flex-direction:column;align-items:end}.results-bar .text-button{font-size:10px;padding:0}.material-grid{grid-template-columns:1fr 1fr;gap:22px 14px}.material-card-head{display:block;padding-top:12px}.compare-control{font-size:9px;margin-top:9px;padding:5px 8px}.material-save{width:32px!important;height:32px!important;right:6px;top:6px}.material-image>span{font-size:8px;left:8px;bottom:8px;padding:3px 6px}.material-card{padding-bottom:5px}.demo-note{margin-block:25px}.demo-note p{font-size:10px}.chip-row{gap:7px;margin-bottom:28px}.chip{font-size:10px;padding:9px 14px}.breadcrumb{font-size:10px;padding-block:24px}.material-detail{display:block;padding-bottom:0}.material-summary{padding-top:30px}.material-summary h1{font-size:58px}.material-summary .section-label{font-size:10px}.material-summary>p:not(.section-label,.material-code,.micro){font-size:13px}.detail-price{font-size:25px}.material-summary .button-row .btn{width:auto;font-size:11px}.detail-swatch img{max-height:440px}.split{display:block}.split>div+div{margin-top:38px}.split h2{font-size:42px}.split>div>p:not(.section-label){font-size:13px}.split .grid-2{grid-template-columns:1fr 1fr;gap:16px}.simple-card{padding:25px}.simple-card h3{font-size:18px}.detail-hero>img{aspect-ratio:1.15}.detail-hero .gallery-photo img{aspect-ratio:1.15}.image-tag{top:14px;left:14px;font-size:9px}.project-specs{grid-template-columns:1fr 1fr;gap:25px;padding-block:25px}.project-specs span{font-size:9px;margin-bottom:8px}.project-specs strong{font-size:14px}.article-hero img{aspect-ratio:1.3}.article-body{margin-block:35px 56px;width:calc(100% - 40px)}.article-body h2{font-size:35px}.article-body p{font-size:13px}.article-body section{margin-bottom:32px}.article-meta{font-size:9px}.article-callout{padding:25px}.article-callout h3{font-size:18px}.article-callout .button-row{display:block}.article-callout .btn{margin-bottom:15px}.plan-attachment{gap:12px;padding:12px;font-size:11px}.plan-attachment img{width:100px}.saved-plan{padding:20px;margin-top:40px}.saved-plan h2{font-size:38px}}
@media(max-width:380px){.brand-desc{display:none}.hero-aside{display:block}.hero-aside .quiet-link{margin-top:13px}.hero-aside .btn{width:100%}.hero-copy h1{font-size:54px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.materials-library .u039-tabs button{padding:9px 6px;font-size:9px}.tool-grid>a{padding:16px}.tool-grid h3{font-size:14px}.material-summary .button-row .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.loading-dot{animation:none}}
.site-header.u045{height:108px;width:100%;background:var(--paper)}.brand-desc{white-space:nowrap;max-width:none;line-height:1.3}.brand .wordmark{white-space:nowrap}h1,h2,h3{text-wrap:balance}.section-head>div{min-width:0}.section-head h2{max-width:23ch}.site-header.u045 .menu-toggle{z-index:1100}.skip-link{position:fixed;inset:-100px auto auto 20px}.skip-link:focus{top:12px;bottom:auto}.site-header .u045-sheet{visibility:hidden}.u045-menu-open .site-header .u045-sheet{visibility:visible}.site-header.u045 .u045-sheet .u045-ln{font-weight:400;letter-spacing:-.025em;font-family:Cormorant,Georgia,serif}.u045-sheet .menu-label{letter-spacing:.03em}.u045-sheet small{letter-spacing:0}.u045-menu-open .site-header .menu-toggle{position:fixed;right:56px;top:33px}.site-header .menu-toggle>svg{display:none}
@media(max-width:950px){.site-header.u045{height:90px}.u045-menu-open .site-header .menu-toggle{right:36px;top:24px}}
@media(max-width:700px){.site-header.u045{height:82px}.u045-menu-open .site-header .menu-toggle{right:20px;top:22px}.site-header.u045 .u045-sheet .u045-ln{font-size:24px}}
@media print{.site-header,.site-footer,.btn,.menu-toggle,.icon-btn,.u293,.u070,.compare-control,.material-save,.demo-note,button{display:none!important}body{background:white;color:black}.wrap{width:100%;max-width:none}.section,.page-intro{padding-block:15px}.material-grid{grid-template-columns:repeat(3,1fr)}.material-card{break-inside:avoid}.page-intro h1{font-size:42px}.page-intro .section-label{margin-bottom:10px}.saved-plan{break-inside:avoid}a{text-decoration:none}}

/* The light sage accent in dark mode is for controls, not a full-screen surface. */
html[data-theme="dark"] .site-header .u045-sheet{background:#17271e;color:#f5f1e7}
html[data-theme="dark"] .site-header .u045-sheet .u045-ln{color:#f5f1e7;border-bottom-color:rgba(234,241,225,.23)}
html[data-theme="dark"] .site-header .u045-sheet .u045-ln:hover{color:#cbd9b6}
html[data-theme="dark"] .site-header .u045-sheet .menu-label,html[data-theme="dark"] .site-header .u045-sheet small{color:#dce5d5}
html[data-theme="dark"].u045-menu-open .site-header .menu-toggle{color:#f5f1e7;border-color:rgba(234,241,225,.45)}

/* Website scale and responsive composition. Interactive motion is supplied by
   the licensed Lucian component styles loaded alongside this file. */
body{font-size:16px}.desktop-nav a,.header-contact{font-size:14px}.brand-desc{font-size:10px}.section-label{font-size:13px}.btn{font-size:15px;min-height:54px}.text-link,.text-button,.quiet-link{font-size:14px}.hero-aside p{font-size:15px;line-height:1.8}.hero-aside{max-width:340px}.hero-copy{gap:6%}.hero-copy h1{font-size:clamp(62px,6.9vw,108px)}.intro-bottom p{font-size:16px}.page-intro h1{font-size:clamp(50px,5.5vw,82px);max-width:23ch}.section-description{font-size:15px}.micro,.honesty{font-size:13px}.card-heading p{font-size:13px}.material-card-head h3{font-size:17px}.material-card-head p{font-size:12px}.material-price{font-size:15px}.material-price span{font-size:12px}.compare-control{font-size:12px;min-height:38px;padding-inline:12px}.material-image>span{font-size:11px}.material-save{width:40px!important;height:40px!important;min-width:40px!important}.material-save .u012-icon{width:18px;height:24px}.material-bottom p{font-size:16px}.material-bottom small{font-size:12px}.story-split p:not(.section-label),.preview-split p:not(.section-label){font-size:16px;line-height:1.85}.process-list h3{font-size:19px}.process-list p{font-size:14px}.process-list li>span{font-size:13px}.tool-grid h3{font-size:19px}.tool-grid p{font-size:14px}.article-card .section-label{font-size:12px}.article-card>p:not(.section-label){font-size:15px}.article-card .text-link{font-size:13px}.review-card blockquote,.review-card p{font-size:14px}.review-card small{font-size:12px}.faq.u044 .u044-q{font-size:17px;min-height:70px}.faq.u044 .u044-a,.faq.u044 .u044-a p{font-size:15px}.contact-layout>div>p:not(.section-label){font-size:16px}.form-heading p{font-size:14px;line-height:1.8}.form-grid label{font-size:14px}.enquiry.u295 .form-grid :is(input,select,textarea){font-size:16px}.enquiry.u295 .form-grid label{margin-top:0}.enquiry.u295 form{padding:0}.consent{font-size:13px}.form-actions .btn{font-size:14px}.form-actions span{font-size:12px}.form-actions .btn{min-height:52px}.footer-top p{font-size:15px}.footer-columns h3{font-size:14px}.footer-columns p,.footer-columns a{font-size:13px}.footer-bottom,.footer-bottom .text-button{font-size:12px}.filter-bar label{font-size:13px}.filter-bar input,.filter-bar select{font-size:15px;min-height:48px}.filter-reset{font-size:13px}.results-bar,.results-bar .text-button{font-size:13px}.demo-note p{font-size:13px}.chip{font-size:14px}.material-summary>p:not(.section-label,.material-code,.micro){font-size:16px}.specs{font-size:14px}.material-summary .micro{font-size:12px}.material-summary .button-row .btn{font-size:14px}.material-summary .button-row .text-button,.source-link{font-size:13px}.split>div>p:not(.section-label),.simple-card p{font-size:16px}.check-list li{font-size:15px}.project-specs span{font-size:13px}.project-specs strong{font-size:19px}.article-body p{font-size:16px}.article-meta{font-size:13px}.article-sources h3{font-size:20px}.article-sources a{font-size:14px;text-decoration:underline;text-underline-offset:4px}.breadcrumb{font-size:13px}.feature-page{padding-top:0}.feature-page .th-features{font-size:16px}.th-features .fx-field{font-size:14px}.th-features .fx-muted{font-size:14px}.th-features .fx-badge{font-size:13px}.th-features .fx-button{font-size:15px;min-height:50px}.th-features .fx-table-wrap table{font-size:14px}.th-features .fx-field :is(input,select,textarea){font-size:16px}body[data-page=quiz] .page-intro{padding-top:52px;padding-bottom:36px}body[data-page=quiz] .page-intro h1{font-size:clamp(48px,5vw,72px);max-width:24ch}body[data-page=quiz] .intro-bottom{margin-top:23px}.plywood-promo{display:grid;grid-template-columns:minmax(260px,.8fr) 1.2fr;gap:7%;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:36px;margin-bottom:40px}.plywood-promo-photo{background:var(--surface);max-height:350px;overflow:hidden}.plywood-promo-photo img{width:100%;height:350px;object-fit:cover}.plywood-promo h2{font-size:56px;margin-bottom:23px}.plywood-promo p:not(.section-label,.micro){font-size:16px;line-height:1.85}.plywood-promo .micro{font-size:13px}.plywood-promo .btn{font-size:14px}.material-card .material-save{right:8px;top:8px}.material-summary .button-row>[data-save]{min-width:120px}.cfg-consult-bridge{margin-top:16px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:13px}.cfg-consult-bridge p{margin:0;color:var(--muted)}
.brand-picker{margin-bottom:36px}.brand-picker .section-head h2{font-size:43px}.brand-choice-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.brand-choice-row button{border:1px solid var(--line);padding:18px;text-align:left;border-radius:4px;min-height:90px;transition:background .25s,border-color .25s,transform .25s}.brand-choice-row button:hover{transform:translateY(-2px);border-color:var(--wood)}.brand-choice-row button[aria-pressed=true]{background:var(--forest);color:var(--paper);border-color:var(--forest)}.brand-choice-row strong{display:block;font-size:18px;font-weight:500;line-height:1.5}.brand-choice-row span{display:block;font-size:12px;opacity:.75;margin-top:4px}.catalogue-pagination{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:25px;margin-top:26px}.catalogue-pagination span{font-size:14px;color:var(--muted)}.catalogue-pagination .btn{font-size:14px;min-height:48px}.catalogue-pagination button:disabled{opacity:.35;cursor:not-allowed;transform:none;box-shadow:none}.brand-document{border:1px solid var(--line);padding:38px;background:var(--surface)}.brand-document h2{font-size:50px;margin-bottom:24px}.brand-document p:not(.section-label){font-size:15px;line-height:1.85}.brand-document .micro{font-size:13px}.brand-document-list{padding:0;margin:28px 0;list-style:none}.brand-document-list li{padding:13px 0;border-top:1px solid var(--line)}.brand-document-list a{font-size:15px;text-decoration:underline;text-underline-offset:5px}.brand-document-list small{display:block;color:var(--muted);font-size:12px;margin-top:7px}.brand-document .btn{font-size:14px}.brand-document .text-link{font-size:13px}.missing-samples{margin-top:25px;font-size:13px;border-top:1px solid var(--line);padding-top:20px}.missing-samples summary{cursor:pointer}.missing-samples p{font-size:13px!important;margin-top:20px}.reference-prices{padding-bottom:65px}.reference-prices .section-head h2{font-size:52px}.reference-table-wrap{max-width:100%;min-width:0;overflow-x:auto;border:1px solid var(--line)}.reference-table-wrap table{border-collapse:collapse;width:100%;min-width:1000px;font-size:14px;background:var(--surface)}.reference-table-wrap caption{text-align:left;font-size:15px;font-weight:500;padding:20px;background:var(--cream)}.reference-table-wrap th,.reference-table-wrap td{padding:19px 20px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.reference-table-wrap th{font-weight:500}.reference-table-wrap thead th{background:var(--cream);font-size:13px}.reference-table-wrap td:first-child{white-space:nowrap}.reference-table-wrap td:nth-child(3){white-space:nowrap;font-size:13px}.reference-table-wrap td:nth-child(4){white-space:nowrap}.reference-table-wrap td p{margin:0 0 8px;font-size:12px;max-width:340px;min-width:200px}.reference-table-wrap td a{font-size:12px;text-decoration:underline;text-underline-offset:4px}.materials-library .u039-tabs{flex-wrap:nowrap;overflow-x:auto;max-width:100%;white-space:nowrap}.materials-library .u039-tabs button{flex:0 0 auto}
@media(max-width:700px){.brand-choice-row{grid-template-columns:1fr 1fr;gap:9px}.brand-choice-row button{padding:16px;min-height:86px}.brand-choice-row button:first-child{grid-column:1/-1;min-height:65px;display:flex;justify-content:space-between;align-items:center}.brand-choice-row strong{font-size:17px}.brand-choice-row span{font-size:12px}.brand-picker .section-head h2{font-size:36px}.catalogue-pagination{gap:10px;flex-wrap:wrap}.catalogue-pagination .btn{padding-inline:14px;font-size:12px;min-height:46px}.catalogue-pagination span{font-size:12px}.brand-document{padding:26px 23px}.brand-document h2{font-size:43px}.brand-document p:not(.section-label){font-size:14px}.brand-document-list a{font-size:14px}.brand-document .btn{font-size:13px}.reference-prices .section-head h2{font-size:39px}.reference-prices{padding-bottom:45px}.materials-library .u039-tabs button{font-size:13px;min-height:46px;flex:0 0 auto;padding-inline:16px}}
@media(max-width:1250px){.desktop-nav{gap:22px}.desktop-nav a{font-size:13px}.hero-aside{max-width:290px}.hero-aside p{font-size:14px}.hero-copy h1{font-size:82px}.material-card-head h3{font-size:16px}.material-card-head p{font-size:11px}.section-head h2{max-width:23ch}.form-grid{gap:18px}.footer-columns{gap:7%}}
@media(max-width:950px){.hero-copy{gap:6%;align-items:start}.hero-copy h1{font-size:66px}.hero-aside{max-width:230px}.hero-aside p{font-size:14px}.hero-aside .btn{font-size:13px;padding-inline:16px;gap:10px}.hero-aside .quiet-link{font-size:13px}.story-split h2,.preview-split h2{font-size:46px}.story-split p:not(.section-label),.preview-split p:not(.section-label){font-size:15px}.process-split h2,.faq-split h2,.contact-layout h2{font-size:46px}.section-label{font-size:12px}.tool-grid h3{font-size:18px}.material-grid{gap:24px}.material-card .compare-control{font-size:11px;padding-inline:10px}.material-summary h1{font-size:54px}.material-summary>p:not(.section-label,.material-code,.micro){font-size:15px}.plywood-promo{gap:5%;grid-template-columns:.8fr 1.2fr}.plywood-promo h2{font-size:46px}.plywood-promo p:not(.section-label,.micro){font-size:15px}.plywood-promo-photo img{height:340px}}
@media(max-width:700px){body{font-size:16px}.site-header .brand-desc{display:none}.site-footer .brand-desc{display:block}.hero-copy h1{font-size:clamp(54px,10vw,70px)}.hero-aside{max-width:none;display:flex;flex-wrap:wrap;align-items:center;gap:14px}.hero-aside p{font-size:15px;flex:1 1 100%;margin-bottom:5px}.hero-aside .btn{font-size:14px;min-height:50px}.hero-aside .quiet-link{font-size:13px;margin:0}.section-label{font-size:12px}.section-head h2{font-size:41px;max-width:25ch}.page-intro h1{font-size:52px;max-width:22ch}.intro-bottom p{font-size:15px}.intro-bottom>.btn{font-size:14px}.section-description{font-size:14px}.section-head .text-link{font-size:14px}.material-editorial>div:first-child>p{font-size:28px}.material-card-head h3{font-size:15px}.material-card-head p{font-size:11px}.material-price{font-size:14px}.material-price span{font-size:11px}.material-image>span{font-size:9px;left:9px;bottom:9px}.material-card .compare-control{font-size:11px;min-height:36px}.material-card .material-save{width:36px!important;height:36px!important;min-width:36px!important}.material-grid{gap:28px 14px}.story-split h2,.preview-split h2,.process-split h2,.faq-split h2,.contact-layout h2{font-size:42px}.story-split p:not(.section-label),.preview-split p:not(.section-label),.process-list p{font-size:14px}.process-list h3{font-size:18px}.tool-grid>a{padding:22px 18px;min-height:240px}.tool-grid h3{font-size:17px}.tool-grid p{font-size:13px;line-height:1.7}.article-card .section-label{font-size:11px}.article-card>p:not(.section-label){font-size:14px}.article-card h3{font-size:31px}.article-card .text-link{font-size:13px}.review-card blockquote,.review-card p{font-size:14px}.review-card small{font-size:11px}.faq.u044 .u044-q{font-size:16px;min-height:64px}.faq.u044 .u044-a,.faq.u044 .u044-a p{font-size:14px}.contact-layout>div>p:not(.section-label){font-size:15px}.enquiry.u295{padding:24px 20px}.form-heading p{font-size:13px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:1/-1}.form-grid label{font-size:14px}.enquiry.u295 .form-grid :is(input,select,textarea){font-size:16px}.consent{font-size:12px;line-height:1.7}.form-actions span{font-size:11px}.footer-top p{font-size:14px}.footer-top .btn{font-size:14px}.footer-columns h3{font-size:13px}.footer-columns p,.footer-columns a{font-size:12px}.footer-bottom,.footer-bottom .text-button{font-size:11px}.filter-bar label{font-size:12px}.filter-bar input,.filter-bar select{font-size:14px}.filter-reset{font-size:13px}.results-bar,.results-bar .text-button{font-size:12px}.results-bar>div{gap:14px}.materials-library .u039-tabs button{font-size:12px;padding-inline:10px;min-height:46px}.demo-note p{font-size:12px}.chip{font-size:13px}.material-summary>p:not(.section-label,.material-code,.micro){font-size:15px}.material-summary .button-row .btn{font-size:13px;min-height:50px}.specs{font-size:14px}.source-link{font-size:13px}.split>div>p:not(.section-label),.simple-card p{font-size:15px}.check-list li{font-size:14px}.project-specs span{font-size:12px}.project-specs strong{font-size:16px}.article-body p{font-size:16px}.article-meta{font-size:12px}.plywood-promo{display:block;padding-block:25px;margin-bottom:30px}.plywood-promo-photo{max-height:260px;margin-bottom:28px}.plywood-promo-photo img{height:260px;object-position:50% 45%}.plywood-promo h2{font-size:43px}.plywood-promo .micro{font-size:13px}.plywood-promo .button-row{gap:18px}.plywood-promo .text-link{font-size:13px}.breadcrumb{font-size:12px}.cfg-consult-bridge{display:block}.cfg-consult-bridge .btn{width:100%;margin-top:16px}body[data-page=quiz] .page-intro{padding-block:34px 30px}body[data-page=quiz] .page-intro h1{font-size:45px}.th-features .fx-muted{font-size:14px}.th-features .fx-table-wrap table{font-size:13px}}

@media(min-width:701px) and (max-width:1100px){.brand-choice-row{grid-template-columns:repeat(3,minmax(0,1fr))}}
.brand-document-grid>.brand-document:last-child:nth-child(odd){grid-column:1/-1}

/* #012: keep the bookmark artwork centred in the circular material control. */
.material-save.u012-compact .u012-icon{position:relative;display:block;flex:none;width:18px;height:24px;left:auto;top:auto}
.material-save.u012-compact .u012-icon svg{position:absolute;inset:0;display:block;width:100%;height:100%}
.material-save.u012-compact .u012-ring{border-radius:50%}

/* Lucian UX/UI Prompt #031 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#031 */
.u031{position:relative;width:340px;height:436px;padding:22px 20px;border-radius:28px;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),0 30px 60px -36px var(--ux-shadow-strong)}
.u031-h{margin:0 2px 18px;font-size:19px;font-weight:760;letter-spacing:-.03em}
.u031-f{position:relative;margin-bottom:14px}
.u031-lab{display:block;margin:0 2px 7px;font-size:12.5px;font-weight:700;color:var(--ux-ink-3)}
.u031-btn{display:flex;align-items:center;gap:12px;width:100%;height:56px;padding:0 14px;border:0;border-radius:16px;background:var(--ux-surface-2);color:var(--ux-ink);text-align:left;
  box-shadow:inset 0 0 0 1.5px transparent;transition:box-shadow .25s var(--ux-ease),background-color .25s}
.u031-btn:hover{box-shadow:inset 0 0 0 1.5px var(--ux-line-2)}
.u031-btn:focus-visible,.u031.is-open .u031-btn[aria-expanded="true"]{outline:0;background:var(--ux-surface);box-shadow:inset 0 0 0 2px var(--ux-accent),0 0 0 5px var(--ux-accent-soft)}
.u031-flag{width:30px;height:30px;flex:none;border-radius:9px;display:grid;place-items:center;font-size:10.5px;font-weight:800;letter-spacing:.02em;color:#fff;background:var(--c)}
.u031-v{flex:1;min-width:0}
.u031-v b{display:block;font-size:15.5px;font-weight:680}
.u031-v small{display:block;font-size:12px;color:var(--ux-ink-3)}
.u031-car{width:18px;height:18px;fill:none;stroke:var(--ux-ink-3);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .45s var(--ux-spring)}
.u031-btn[aria-expanded="true"] .u031-car{transform:rotate(180deg)}
.u031-list{position:absolute;z-index:5;left:0;right:0;top:calc(100% + 8px);margin:0;padding:6px;list-style:none;border-radius:18px;background:var(--ux-surface);
  box-shadow:0 0 0 1px var(--ux-line-2),0 28px 56px -24px var(--ux-shadow-strong);transform-origin:50% 0;outline:none;
  opacity:0;transform:translateY(-6px) scaleY(.92);visibility:hidden;transition:opacity .2s var(--ux-ease),transform .4s var(--ux-spring),visibility 0s .4s}
.u031-list.is-open{opacity:1;transform:none;visibility:visible;transition:opacity .2s var(--ux-ease),transform .45s var(--ux-spring)}
.u031-hl{position:absolute;left:6px;right:6px;top:6px;height:46px;border-radius:12px;background:var(--ux-surface-2);transform:translateY(calc(var(--i,0) * 46px));transition:transform .35s var(--ux-spring);pointer-events:none}
.u031-o{position:relative;display:flex;align-items:center;gap:12px;height:46px;padding:0 10px;border-radius:12px;cursor:pointer;font-size:14.5px;font-weight:620}
.u031-o .u031-flag{width:26px;height:26px;border-radius:8px;font-size:9.5px}
.u031-o small{margin-left:4px;font-size:12px;font-weight:500;color:var(--ux-ink-3)}
.u031-ck{margin-left:auto;width:18px;height:18px;fill:none;stroke:var(--ux-accent);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;opacity:0;transform:scale(.4);transition:opacity .2s,transform .4s var(--ux-spring)}
.u031-o[aria-selected="true"] .u031-ck{opacity:1;transform:none}
.u031-save{position:absolute;left:20px;right:20px;bottom:20px;height:50px;border:0;border-radius:15px;background:var(--ux-ink);color:var(--ux-page);font-size:15px;font-weight:700;transition:transform .35s var(--ux-spring)}
.u031-save:active{transform:scale(.97)}
.u031-save:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}

/* #031 field/list port. Existing page labels replace the demo settings card and flags. */
.th-select.u031, .th-select-popover {
  --ux-surface: var(--surface, #fffdf9);
  --ux-surface-2: var(--paper, #f2efe7);
  --ux-ink: var(--ink, #263a31);
  --ux-ink-3: var(--muted, #6c786d);
  --ux-line: var(--line, #d7ddd1);
  --ux-line-2: var(--line, #d7ddd1);
  --ux-accent: var(--forest, #365548);
  --ux-accent-soft: color-mix(in srgb, var(--ux-accent) 16%, transparent);
  --ux-shadow-strong: rgb(18 33 24 / .24);
  --ux-ease: cubic-bezier(.2,.8,.2,1);
  --ux-spring: cubic-bezier(.3,1.3,.5,1);
  box-sizing: border-box;
  font-family: inherit;
}
[data-theme="dark"] .th-select.u031, [data-theme="dark"] .th-select-popover {
  --ux-accent: var(--sage, #bccdae);
  --ux-accent-soft: color-mix(in srgb, var(--ux-accent) 13%, transparent);
}
.th-select.u031 { position: relative; display: block; width: 100%; height: auto; min-width: 0; padding: 0; margin: 0; border: 0; border-radius: 0; background: none; box-shadow: none; font: inherit; }
.th-select .u031-f { position: relative; display: block; margin: 0; width: 100%; min-width: 0; }
.th-select .u031-btn { height: 48px; min-height: 48px; max-width: 100%; padding: 0 14px; border: 0; border-radius: 12px; font-family: inherit; box-shadow: inset 0 0 0 1px var(--ux-line); background: var(--ux-surface); color: var(--ux-ink); cursor: pointer; }
.th-select .u031-btn:hover:not(:disabled) { box-shadow: inset 0 0 0 1.5px var(--ux-line-2); }
.th-select .u031-btn:focus-visible, .th-select.is-open .u031-btn { outline: none; background: var(--ux-surface); box-shadow: inset 0 0 0 2px var(--ux-accent),0 0 0 4px var(--ux-accent-soft); }
.th-select .u031-btn:disabled { opacity: .5; cursor: not-allowed; }
.th-select .u031-v { overflow: hidden; }
.th-select .u031-v b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: inherit; font-size: 16px; font-weight: 500; line-height: 1.5; letter-spacing: 0; }
.th-select .u031-car { flex: 0 0 18px; width: 18px; height: 18px; }
.th-select-native { position: absolute !important; inset: auto !important; width: 1px !important; height: 1px !important; min-height: 0 !important; margin: -1px !important; padding: 0 !important; border: 0 !important; outline: none !important; box-shadow: none !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; clip-path: inset(50%) !important; opacity: 0 !important; white-space: nowrap !important; pointer-events: none !important; }
.th-select-error { display: block; min-height: 0; color: #a15d3c; font-size: 13px; font-weight: 500; line-height: 1.5; }
.th-select-error:not(:empty) { margin-top: 7px; }
.th-select.has-error .u031-btn { box-shadow: inset 0 0 0 1.5px #a15d3c; }
.th-select-popover.u031-list { position: fixed; z-index: 10000; inset: auto; margin: 0; padding: 6px; width: 300px; max-width: calc(100vw - 24px); min-width: 0; border: 0; box-sizing: border-box; color: var(--ux-ink); background: var(--ux-surface); overflow: hidden; pointer-events: none; }
.th-select-popover.u031-list.is-open { pointer-events: auto; }
.th-select-popover[data-side="top"] { transform-origin: 50% 100%; }
.th-select-popover[data-side="top"]:not(.is-open) { transform: translateY(6px) scaleY(.92); }
.th-select-popover::backdrop { background: transparent; pointer-events: none; }
.th-select-popover .th-select-options { position: relative; display: block; margin: 0; padding: 0; border: 0; list-style: none; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; scrollbar-width: thin; outline: none; }
.th-select-popover .u031-hl { left: 0; right: 0; top: 0; height: 46px; transform: translateY(var(--th-select-y,0px)); }
.th-select-popover .u031-o { display: flex; min-height: 46px; height: 46px; padding: 3px 10px; margin: 0; list-style: none; color: var(--ux-ink); font-family: inherit; font-size: 15px; font-weight: 500; line-height: 20px; user-select: none; }
.th-select-popover .th-select-option-text { flex: 1; min-width: 0; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow-wrap: anywhere; }
.th-select-popover .u031-o[aria-disabled="true"] { opacity: .4; cursor: not-allowed; }
.th-select-popover .u031-ck { flex: 0 0 18px; width: 18px; height: 18px; margin-left: 8px; }
.th-select-popover .th-select-search { display: block; width: 100%; height: 44px; min-height: 44px; padding: 9px 11px; margin: 0 0 6px; border: 1px solid var(--ux-line); border-radius: 12px; background: var(--ux-surface-2); color: var(--ux-ink); font-family: inherit; font-size: 16px; line-height: 1.4; box-sizing: border-box; }
.th-select-popover .th-select-search:focus-visible { outline: 2px solid var(--ux-accent); outline-offset: -2px; }
.th-select-popover .th-select-empty { padding: 14px 10px; margin: 0; color: var(--ux-ink-3); font-size: 14px; line-height: 1.5; }
.th-select-popover [hidden] { display: none !important; }
@media (prefers-reduced-motion: reduce) {
  .th-select .u031-btn, .th-select .u031-car, .th-select-popover, .th-select-popover .u031-hl, .th-select-popover .u031-ck { transition: none !important; animation: none !important; }
}

/* Lucian UX/UI Prompt #233 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#233 */
/* Lucian UX/UI Prompt #127 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#127 */
/* Lucian UX/UI Prompt #032 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#032 */


.ai-assist .u233{position:relative;width:340px;height:340px;border-radius:30px;overflow:hidden;background:radial-gradient(90% 60% at 50% 0%,color-mix(in srgb,var(--ux-accent) 16%,transparent),transparent 70%),var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line),0 30px 60px -36px var(--ux-shadow-strong);color:var(--ux-ink)}

.ai-assist .u233-g{position:absolute;inset:0;transform:translateY(46px);transition:transform .6s cubic-bezier(.3,1,.3,1)}
.ai-assist .u233.is-run .u233-g,.ai-assist .u233.is-done .u233-g{transform:none}
.ai-assist .u233-h{position:absolute;left:0;right:0;top:30px;margin:0;text-align:center;font-size:22px;font-weight:900;letter-spacing:-.035em}
.ai-assist .u233-s{position:absolute;left:0;right:0;top:62px;text-align:center;font-size:11.5px;font-weight:650;color:var(--ux-ink-3)}
.ai-assist .u233-bx{position:absolute;left:18px;right:18px;top:92px;height:92px;border-radius:20px;padding:1.5px;background:conic-gradient(from var(--u233-a,0deg),var(--ux-accent),var(--ux-accent-2),var(--ux-mint),var(--ux-accent));animation:u233-spin 6s linear infinite}
@property --u233-a{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes u233-spin{to{--u233-a:360deg}}
.ai-assist .u233-in{position:relative;height:100%;border-radius:18.5px;background:var(--ux-surface);padding:12px 14px}
.ai-assist .u233-tx{display:block;width:100%;height:46px;border:0;padding:0;background:none;resize:none;font:inherit;font-size:13px;line-height:1.45;font-weight:650;color:var(--ux-ink);outline:none}
.ai-assist .u233-ph{position:absolute;left:14px;top:12px;right:56px;font-size:13px;line-height:1.45;font-weight:600;color:var(--ux-ink-3);pointer-events:none}
.ai-assist .u233-ph::after{content:"";display:inline-block;width:1.5px;height:1.05em;margin-left:1px;vertical-align:-2px;background:var(--ux-accent);animation:u233-cur 1s steps(2) infinite}
@keyframes u233-cur{50%{opacity:0}}
.ai-assist .u233-go{position:absolute;right:10px;bottom:10px;width:32px;height:32px;border:0;border-radius:50%;background:var(--ux-ink);color:var(--ux-surface);display:grid;place-items:center;cursor:pointer;transition:transform .2s,background .2s}
.ai-assist .u233-go:disabled{opacity:.35;cursor:default}
.ai-assist .u233-go svg{width:14px;height:14px}
.ai-assist .u233-go .u233-sp{display:none;width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:u233-rot .7s linear infinite}
.ai-assist .u233.is-run .u233-go svg{display:none}
.ai-assist .u233.is-run .u233-go .u233-sp{display:block}
@keyframes u233-rot{to{transform:rotate(360deg)}}
.ai-assist .u233-go:focus-visible,.ai-assist .u233-ch:focus-visible,.ai-assist .u233-nw:focus-visible{outline:2px solid var(--ux-accent);outline-offset:2px}
.ai-assist .u233-chs{position:absolute;left:18px;right:18px;top:194px;display:flex;justify-content:center;gap:6px;transition:opacity .3s,transform .3s}
.ai-assist .u233-ch{border:0;padding:6px 11px;border-radius:999px;background:var(--ux-surface-2);box-shadow:inset 0 0 0 1px var(--ux-line);color:var(--ux-ink-2);font:inherit;font-size:11px;font-weight:750;cursor:pointer;transition:background .2s,color .2s}
.ai-assist .u233-ch:hover{background:var(--ux-accent-soft);color:var(--ux-ink)}
.ai-assist .u233.is-run .u233-chs,.ai-assist .u233.is-done .u233-chs{opacity:0;transform:translateY(6px);pointer-events:none}
.ai-assist .u233-gen{position:absolute;left:18px;right:18px;top:196px;height:124px;border-radius:16px;background:var(--ux-surface-2);box-shadow:inset 0 0 0 1px var(--ux-line);padding:12px 14px;opacity:0;transform:translateY(14px) scale(.97);transition:opacity .35s,transform .45s cubic-bezier(.2,.9,.3,1.1);pointer-events:none}
.ai-assist .u233.is-run .u233-gen{transition-delay:.18s}
.ai-assist .u233.is-run .u233-gen,.ai-assist .u233.is-done .u233-gen{opacity:1;transform:none;pointer-events:auto}
.ai-assist .u233-gh{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:850}
.ai-assist .u233-gh i{width:8px;height:8px;border-radius:50%;background:var(--ux-accent);box-shadow:0 0 0 0 var(--ux-accent);animation:u233-pl 1.2s ease-out infinite}
.ai-assist .u233.is-done .u233-gh i{background:var(--ux-mint);animation:none}
@keyframes u233-pl{70%{box-shadow:0 0 0 7px transparent}}
.ai-assist .u233-gs{font-size:10px;font-weight:650;color:var(--ux-ink-3);margin:3px 0 10px}
.ai-assist .u233-ln{height:9px;border-radius:5px;margin-top:7px;background:linear-gradient(90deg,var(--ux-line) 0 30%,color-mix(in srgb,var(--ux-accent) 40%,var(--ux-surface)) 50%,var(--ux-line) 70%);background-size:300% 100%;animation:u233-sh 1.4s linear infinite;transform-origin:0 50%;transition:transform .5s}
@keyframes u233-sh{from{background-position:100% 0}to{background-position:-100% 0}}
.ai-assist .u233.is-done .u233-ln{animation:none;background:color-mix(in srgb,var(--ux-accent) 22%,var(--ux-surface))}
.ai-assist .u233-nw{position:absolute;right:12px;bottom:10px;border:0;padding:5px 10px;border-radius:999px;background:var(--ux-ink);color:var(--ux-surface);font:inherit;font-size:10px;font-weight:800;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .25s}
.ai-assist .u233.is-done .u233-nw{opacity:1;pointer-events:auto}
@media (prefers-reduced-motion: reduce){.ai-assist .u233-bx,.ai-assist .u233-ln,.ai-assist .u233-ph::after{animation:none}.ai-assist .u233-g,.ai-assist .u233-gen{transition:none}}


.ai-assist .u127{width:min(100%,370px);font-size:14px;line-height:1.6;color:var(--ux-ink)}.ai-assist .u127 button,.ai-assist .u127 input,.ai-assist .u127 textarea,.ai-assist .u127 select{font:inherit;color:inherit;max-width:100%;min-width:0}.ai-assist .u127 button{cursor:pointer;min-height:44px;border:1px solid var(--ux-line-2);border-radius:8px;background:var(--ux-surface);padding:8px 12px}.ai-assist .u127 input,.ai-assist .u127 textarea,.ai-assist .u127 select{border:1px solid var(--ux-line-2);border-radius:6px;background:var(--ux-surface);padding:8px 10px}.ai-assist .u127 .quiet{color:var(--ux-ink-2)}.ai-assist .u127 .primary{background:var(--ux-accent);color:var(--ux-accent-ink);border-color:transparent}.ai-assist .u127 .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ai-assist .u127 [hidden]{display:none!important}.ai-assist .u127 :focus-visible{outline:2px solid var(--ux-accent);outline-offset:3px}@media(prefers-reduced-motion:reduce){.ai-assist .u127 *{animation:none!important;transition:none!important}}
.ai-assist .u127{border-left:3px solid var(--ux-line-2);background:var(--ux-surface);padding:23px 0 15px}.ai-assist .u127 .code{font:14px/1.9 ui-monospace,monospace;overflow-wrap:anywhere}.ai-assist .u127 .line{padding:5px 20px}.ai-assist .u127 .minus{background:color-mix(in srgb,var(--ux-danger) 9%,var(--ux-surface));color:var(--ux-ink-2)}.ai-assist .u127 .plus{background:color-mix(in srgb,var(--ux-mint) 14%,var(--ux-surface));color:var(--ux-ink)}.ai-assist .u127 .actions{display:flex;gap:8px;padding:18px 20px 0}.ai-assist .u127 .actions button{font-size:13px}.ai-assist .u127 [data-choice="accepted"]{border-left-color:var(--ux-mint)}


.ai-assist .u032{position:relative;width:340px;height:420px}
.ai-assist .u032-zone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:196px;border:0;padding:0;border-radius:26px;background:var(--ux-surface);color:var(--ux-ink);cursor:pointer;
  transition:transform .5s var(--ux-spring),background-color .3s var(--ux-ease)}
.ai-assist .u032-zone:focus-visible{outline:2px solid var(--ux-accent);outline-offset:4px}
.ai-assist .u032-zone svg.u032-dash{position:absolute;left:1px;top:1px;width:calc(100% - 2px);height:calc(100% - 2px);overflow:visible;pointer-events:none}
.ai-assist .u032-dash rect{fill:none;stroke:var(--ux-line-2);stroke-width:2;stroke-dasharray:8 7;transition:stroke .3s var(--ux-ease)}
.ai-assist .u032-zone:hover .u032-dash rect,.ai-assist .u032.is-over .u032-dash rect{stroke:var(--ux-accent);animation:u032-march .9s linear infinite}
@keyframes u032-march{to{stroke-dashoffset:-30}}
.ai-assist .u032.is-over .u032-zone{transform:scale(1.03);background:color-mix(in srgb,var(--ux-accent) 7%,var(--ux-surface))}
.ai-assist .u032-orb{width:60px;height:60px;border-radius:20px;display:grid;place-items:center;color:var(--ux-accent-ink);background:linear-gradient(140deg,var(--ux-accent),var(--ux-accent-2));box-shadow:0 16px 28px -14px var(--ux-shadow-strong);transition:transform .5s var(--ux-spring)}
.ai-assist .u032-orb svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ai-assist .u032-zone:hover .u032-orb{transform:translateY(-4px)}
.ai-assist .u032.is-over .u032-orb{transform:translateY(-8px) scale(1.1) rotate(-6deg)}
.ai-assist .u032-zone b{margin-top:14px;font-size:15.5px;font-weight:720;letter-spacing:-.02em}
.ai-assist .u032-zone b em{font-style:normal;color:var(--ux-accent)}
.ai-assist .u032-zone small{margin-top:4px;font-size:12.5px;color:var(--ux-ink-3)}
.ai-assist .u032-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.ai-assist .u032-list{margin:14px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.ai-assist .u032-row{position:relative;display:flex;align-items:center;gap:12px;height:62px;padding:0 12px;border-radius:18px;background:var(--ux-surface);box-shadow:0 0 0 1px var(--ux-line);overflow:hidden;animation:u032-in .5s var(--ux-spring)}
@keyframes u032-in{from{transform:translateY(-10px) scale(.96);opacity:0}}
.ai-assist .u032-row.out{transition:transform .35s var(--ux-ease),opacity .3s;transform:translateX(30px);opacity:0}
.ai-assist .u032-ic{width:36px;height:40px;flex:none;border-radius:9px;display:grid;place-items:end center;padding-bottom:5px;font-size:8.5px;font-weight:800;letter-spacing:.04em;color:var(--ux-accent-ink);background:var(--c)}
.ai-assist .u032-meta{flex:1;min-width:0}
.ai-assist .u032-meta b{display:block;font-size:14px;font-weight:660;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ai-assist .u032-meta small{display:block;margin-top:3px;font-size:12px;color:var(--ux-ink-3);font-variant-numeric:tabular-nums}
.ai-assist .u032-bar{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--ux-accent);transform-origin:0 50%;transform:scaleX(var(--p,0));transition:transform .2s linear,background-color .3s,opacity .5s .4s}
.ai-assist .u032-row.done .u032-bar{background:var(--ux-mint);opacity:0}
.ai-assist .u032-row.fail .u032-bar{background:var(--ux-danger)}
.ai-assist .u032-st{width:30px;height:30px;flex:none;border-radius:50%;display:grid;place-items:center}
.ai-assist .u032-st svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.ai-assist .u032-row.done .u032-st{background:var(--ux-mint);color:var(--ux-accent-ink);animation:u032-pop .45s var(--ux-spring)}
@keyframes u032-pop{from{transform:scale(.3)}}
.ai-assist .u032-row.done .u032-st path{stroke-dasharray:16;stroke-dashoffset:16;animation:u032-draw .4s var(--ux-ease) .15s forwards}
@keyframes u032-draw{to{stroke-dashoffset:0}}
.ai-assist .u032-row.fail .u032-meta small{color:var(--ux-danger)}
.ai-assist .u032-retry{height:32px;padding:0 12px;border:0;border-radius:10px;background:color-mix(in srgb,var(--ux-danger) 12%,transparent);color:var(--ux-danger);font-size:12.5px;font-weight:700;white-space:nowrap}
.ai-assist .u032-retry:focus-visible{outline:2px solid var(--ux-danger);outline-offset:2px}
.ai-assist .u032-spin{width:20px;height:20px;border-radius:50%;border:2.5px solid var(--ux-surface-3);border-top-color:var(--ux-accent);animation:u032-rot .8s linear infinite}
@keyframes u032-rot{to{transform:rotate(360deg)}}


/* Page footprint: the original rounded prompt, upload zone and review motion are retained,
   while the 340px gallery slots become fluid panels with readable site typography. */
.ai-assist{width:100%;min-width:0;font-size:16px;line-height:1.75;color:var(--ux-ink);padding:32px;border:1px solid var(--ux-line);border-radius:28px;background:var(--ux-surface);margin-block:30px}
.ai-assist [hidden]{display:none!important}
.ai-assist button,.ai-assist textarea,.ai-assist input{font-family:inherit;font-size:16px}
.ai-assist h3,.ai-assist h4,.ai-assist p{font-family:inherit;letter-spacing:-.015em}
.ai-assist .ai-heading{max-width:850px;margin-bottom:20px}
.ai-assist .ai-heading h3{font-size:clamp(25px,2.5vw,34px);line-height:1.25;font-weight:550;margin:0 0 14px;text-wrap:balance}
.ai-assist .ai-heading p{margin:0;color:var(--ux-ink-2);font-size:16px;line-height:1.8}
.ai-assist .ai-availability-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 22px}
.ai-assist .ai-availability{font-size:16px;line-height:1.7;color:var(--ux-ink-3);margin:0}
.ai-assist .ai-button,.ai-assist .ai-link{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;max-width:100%;padding:11px 18px;border:1px solid transparent;border-radius:12px;background:var(--ux-accent);color:var(--ux-accent-ink);font:inherit;font-size:16px;line-height:1.5;font-weight:550;text-align:center;cursor:pointer;transition:transform .2s,background .2s}
.ai-assist .ai-secondary{background:var(--ux-surface);border-color:var(--ux-line-2);color:var(--ux-ink)}
.ai-assist .ai-link{padding:8px 0;background:none;border:0;border-radius:0;color:var(--ux-ink);text-decoration:underline;text-underline-offset:4px;flex-shrink:0}
.ai-assist button:disabled{opacity:.5;cursor:default}
.ai-assist button:focus-visible,.ai-assist a:focus-visible,.ai-assist textarea:focus-visible,.ai-assist input:focus-visible{outline:2px solid var(--ux-accent);outline-offset:4px}
.ai-assist .ai-prompt.u233{width:100%;height:auto;min-height:0;overflow:visible;padding:24px;border-radius:26px;margin-top:18px}
.ai-assist .ai-prompt .u233-g{position:relative;inset:auto;transform:none}
.ai-assist .ai-prompt-label{display:block;margin:0 0 12px;font-size:16px;line-height:1.7;font-weight:550}
.ai-assist .ai-prompt .u233-bx{position:relative;inset:auto;height:166px;border-radius:20px}
.ai-assist .ai-prompt .u233-in{padding:18px;border-radius:18.5px}
.ai-assist .ai-prompt .u233-tx{height:100%;min-height:110px;resize:vertical;max-height:320px;padding:0 54px 0 0;font-family:inherit;font-size:16px;line-height:1.7;font-weight:450}
.ai-assist .ai-prompt .u233-ph{left:18px;top:18px;right:76px;font-size:16px;line-height:1.7;font-weight:450}
.ai-assist .ai-prompt .u233-go{width:44px;height:44px;right:12px;bottom:12px}
.ai-assist .ai-prompt .u233-go svg{width:19px;height:19px}
.ai-assist .ai-prompt .u233-sp{width:19px;height:19px}
.ai-assist .ai-prompt .u233-chs{position:relative;inset:auto;margin-top:16px;justify-content:flex-start;flex-wrap:wrap;gap:9px;opacity:1;transform:none;pointer-events:auto}
.ai-assist .ai-prompt .u233-ch{font-size:16px;line-height:1.6;min-height:44px;font-weight:500;padding:8px 14px;text-align:left}
.ai-assist .ai-request-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.ai-assist .ai-request-actions:has(>[hidden]):not(:has(>:not([hidden]))){display:none}
.ai-assist .ai-feedback{font-size:16px;line-height:1.75;margin-top:18px;color:var(--ux-ink-2)}
.ai-assist .ai-feedback:empty,.ai-assist .ai-output:empty{display:none}
.ai-assist .ai-feedback.is-error{color:var(--ux-danger)}
.ai-assist .ai-output{margin-top:26px;padding-top:26px;border-top:1px solid var(--ux-line)}
.ai-assist .ai-summary{font-size:17px;line-height:1.85;white-space:pre-line;max-width:950px;margin:0 0 25px}
.ai-assist .ai-material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ai-assist .ai-material-card{min-width:0;border:1px solid var(--ux-line);border-radius:18px;overflow:hidden;background:var(--ux-surface)}
.ai-assist .ai-material-image{display:block;width:100%;aspect-ratio:1.25;object-fit:cover}
.ai-assist .ai-material-content{padding:20px}
.ai-assist .ai-material-content h4{font-size:21px;font-weight:550;line-height:1.45;margin:8px 0 14px}
.ai-assist .ai-material-source,.ai-assist .ai-material-reason{font-size:16px;line-height:1.75;color:var(--ux-ink-2);margin:0 0 12px}
.ai-assist .ai-material-source{font-weight:550}
.ai-assist .ai-card-actions{display:flex;flex-wrap:wrap;gap:10px 14px;margin-top:20px}
.ai-assist .ai-card-actions .ai-button{flex:1 1 115px;padding:9px 10px;font-size:16px}
.ai-assist .ai-text-link,.ai-assist .ai-source-link{font-size:16px;line-height:1.7;text-decoration:underline;text-underline-offset:4px;color:var(--ux-ink-2)}
.ai-assist .ai-source-link{display:block;margin-top:18px}
.ai-assist .ai-empty{font-size:16px;line-height:1.8;padding:22px;border:1px dashed var(--ux-line-2);border-radius:16px;background:var(--ux-surface-2);margin:0}
.ai-assist .ai-footnote,.ai-assist .ai-notice,.ai-assist .ai-stale{font-size:16px;line-height:1.8;color:var(--ux-ink-3);margin:22px 0 0}
.ai-assist .ai-notice,.ai-assist .ai-stale{border-left:3px solid var(--ux-warn);padding:14px 18px;background:var(--ux-surface-2);color:var(--ux-ink-2)}
.ai-assist .ai-notes{margin-top:22px;padding:20px 22px;border-radius:16px;background:var(--ux-surface-2)}
.ai-assist .ai-notes h4{font-size:17px;line-height:1.6;font-weight:600;margin:0 0 9px}
.ai-assist .ai-notes ul{padding-left:22px;margin:0;font-size:16px;line-height:1.85;color:var(--ux-ink-2)}
.ai-assist .ai-review.u127{width:100%;max-width:none;font-family:inherit;font-size:16px;padding:8px 0 20px;margin-top:22px;overflow:hidden}
.ai-assist .ai-review .code{font-family:inherit;font-size:16px;line-height:1.8;overflow-wrap:break-word}
.ai-assist .ai-review .line{padding:10px 22px;font-size:16px;line-height:1.8}
.ai-assist .ai-review h4.line{margin:14px 0 0;font-weight:600}
.ai-assist .ai-review .actions{flex-wrap:wrap;padding:22px 22px 0;gap:12px}
.ai-assist .ai-review .actions button{font-size:16px;min-height:46px;padding:10px 16px}
.ai-assist .ai-review[data-choice="accepted"]{border-left-color:var(--ux-mint)}
.ai-assist .ai-review-title{font-size:21px;line-height:1.5;font-weight:550;margin:0 0 18px}
.ai-brief-details{margin:22px 0;border-block:1px solid var(--ux-line);padding:0}
.ai-brief-details>summary{font-size:16px;line-height:1.8;font-weight:550;padding:19px 4px;cursor:pointer;list-style-position:inside}
.ai-brief-details>summary:focus-visible{outline:2px solid var(--ux-accent);outline-offset:3px}
.ai-brief-details .ai-assist{margin-top:0;padding:24px;border-radius:22px;background:var(--ux-surface-2)}
.ai-assist .ai-upload.u032{width:100%;height:auto;min-height:0;margin:20px 0 24px}
.ai-assist .ai-upload .u032-zone{padding:22px;height:210px;background:var(--ux-surface)}
.ai-assist .ai-upload .u032-zone b{font-size:18px;font-weight:550;line-height:1.6}
.ai-assist .ai-upload .u032-zone small{font-size:16px;line-height:1.65}
.ai-assist .ai-upload .u032-row{height:auto;min-height:74px;padding:14px;gap:14px}
.ai-assist .ai-upload .u032-meta b{font-size:16px;line-height:1.5;font-weight:550}
.ai-assist .ai-upload .u032-meta small{font-size:16px;line-height:1.6}
.ai-assist .ai-upload .u032-ic{font-size:11px}
.ai-assist .ai-file-remove{width:44px;height:44px;min-width:44px;border:1px solid var(--ux-line-2);border-radius:50%;background:var(--ux-surface);color:var(--ux-ink);font-size:25px;display:grid;place-items:center;padding:0}
.ai-assist .ai-brief-prompt{display:block;width:100%;min-height:100px;margin-top:10px;padding:14px 16px;border:1px solid var(--ux-line-2);border-radius:12px;background:var(--ux-surface);color:var(--ux-ink);font-size:16px;line-height:1.75;resize:vertical;outline:none}
.ai-assist .ai-consent{display:flex;align-items:flex-start;gap:12px;font-size:16px;line-height:1.75;color:var(--ux-ink-2);font-weight:450;margin:22px 0}
.ai-assist .ai-consent input[type="checkbox"]{display:block;width:20px;height:20px;min-width:20px;margin:4px 0 0;padding:0;accent-color:var(--ux-accent);box-shadow:none;appearance:auto}
.ai-assist .ai-review>.ai-consent{padding-inline:22px}
.ai-assist .ai-extracted-fields{margin:0;font-size:16px;line-height:1.85;padding-inline:22px}
.ai-assist .ai-extracted-fields>div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;padding:15px 0;border-bottom:1px solid var(--ux-line)}
.ai-assist .ai-extracted-fields dt{color:var(--ux-ink-3);font-weight:500}
.ai-assist .ai-extracted-fields dd{margin:0;white-space:pre-line;overflow-wrap:anywhere}
.ai-assist .ai-item-table{overflow-x:auto;margin:24px 22px;border:1px solid var(--ux-line);border-radius:12px}
.ai-assist .ai-item-table table{width:100%;min-width:650px;border-collapse:collapse;font-size:16px;line-height:1.8;text-align:left}
.ai-assist .ai-item-table caption{text-align:left;font-size:17px;font-weight:550;padding:15px;background:var(--ux-surface-2)}
.ai-assist .ai-item-table th,.ai-assist .ai-item-table td{padding:15px;vertical-align:top;border-bottom:1px solid var(--ux-line);font-size:16px;font-weight:450}
.ai-assist .ai-item-table th{font-weight:550}
@media(max-width:1050px){.ai-assist .ai-material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.ai-assist{padding:24px 20px;margin-block:24px;border-radius:24px}.ai-assist .ai-heading h3{font-size:26px}.ai-assist .ai-availability-row{display:block}.ai-assist .ai-link{margin-top:8px}.ai-assist .ai-prompt.u233{padding:18px 14px;border-radius:22px}.ai-assist .ai-prompt .u233-bx{height:210px}.ai-assist .ai-prompt .u233-tx{min-height:170px;padding-right:0;padding-bottom:45px}.ai-assist .ai-prompt .u233-ph{right:18px}.ai-assist .ai-prompt .u233-chs{gap:9px}.ai-assist .ai-prompt .u233-ch{width:100%;padding:9px 13px}.ai-assist .ai-material-grid{grid-template-columns:1fr}.ai-assist .ai-material-image{aspect-ratio:1.35}.ai-assist .ai-material-content{padding:20px}.ai-assist .ai-summary{font-size:17px}.ai-assist .ai-review .line{padding-inline:16px}.ai-assist .ai-review .actions{padding-inline:16px}.ai-assist .ai-review .actions button{width:100%;min-height:48px}.ai-assist .ai-extracted-fields{padding-inline:16px}.ai-assist .ai-extracted-fields>div{grid-template-columns:1fr;gap:6px}.ai-assist .ai-review>.ai-consent{padding-inline:16px}.ai-assist .ai-item-table{margin-inline:16px}.ai-brief-details .ai-assist{padding:20px 16px}.ai-assist .ai-upload .u032-zone{height:220px;padding:20px 16px}.ai-assist .ai-upload .u032-zone b{font-size:17px}.ai-assist .ai-upload .u032-meta small{font-size:15px}.ai-assist .ai-upload .u032-ic{display:none}.ai-assist .ai-request-actions .ai-button{width:100%}}
@media(prefers-reduced-motion:reduce){.ai-assist *,.ai-assist *::before,.ai-assist *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Keep one useful input surface on narrow panels instead of three nested gutters. */
.ai-assist{container-type:inline-size}
@container(max-width:500px){
  .ai-assist .ai-prompt.u233{padding:0;background:none;box-shadow:none;border-radius:20px}
  .ai-assist .ai-prompt .u233-in{padding:12px}
  .ai-assist .ai-prompt .u233-ph{left:12px;top:12px;right:12px}
  .ai-assist .ai-prompt .u233-bx{height:210px}
  .ai-assist .ai-prompt .u233-tx{min-height:170px;padding:0 0 45px}
  .ai-assist .ai-prompt .u233-ch{width:100%}
  .ai-assist .ai-material-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .ai-assist{padding-inline:14px}
  .ai-assist .ai-prompt.u233{padding:0;background:none;box-shadow:none;border-radius:20px}
  .ai-assist .ai-prompt .u233-in{padding:12px}
  .ai-assist .ai-prompt .u233-ph{left:12px;top:12px;right:12px}
}

/* #233 suggestion chips, grouped for the material finder only. A selection fills text;
   the existing explicit send action and 28ms typing motion remain unchanged. */
.ai-assist.ai-materials .ai-suggestion-picker{margin-top:22px}
.ai-assist.ai-materials .ai-suggestion-topline{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}
.ai-assist.ai-materials .ai-suggestion-title{font-size:16px;font-weight:600;line-height:1.6;color:var(--ux-ink)}
.ai-assist.ai-materials .ai-suggestion-count{flex:none;font-size:14px;line-height:1.6;color:var(--ux-ink-3);font-variant-numeric:tabular-nums}
.ai-assist.ai-materials .ai-suggestion-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.ai-assist.ai-materials .ai-suggestion-groups .ai-suggestion-group{display:flex;align-items:center;justify-content:center;width:auto;min-width:0;min-height:44px;padding:9px 12px;border:0;border-radius:999px;background:var(--ux-surface-2);box-shadow:inset 0 0 0 1px var(--ux-line);color:var(--ux-ink-2);font-family:inherit;font-size:15px;font-weight:550;line-height:1.5;text-align:center;cursor:pointer;transition:background .2s,color .2s}
.ai-assist.ai-materials .ai-suggestion-groups .ai-suggestion-group:hover{background:var(--ux-accent-soft);color:var(--ux-ink)}
.ai-assist.ai-materials .ai-suggestion-groups .ai-suggestion-group[aria-pressed="true"]{background:var(--ux-ink);box-shadow:none;color:var(--ux-surface)}
.ai-assist.ai-materials .ai-suggestion-groups .ai-suggestion-group:focus-visible{outline:2px solid var(--ux-accent);outline-offset:3px}
.ai-assist.ai-materials .ai-prompt .u233-chs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}
.ai-assist.ai-materials .ai-prompt .u233-chs .u233-ch{display:flex;align-items:center;justify-content:flex-start;width:100%;min-width:0;min-height:48px;padding:10px 14px;font-size:15px;font-weight:450;line-height:1.55;text-align:left;white-space:normal;overflow-wrap:anywhere}
.ai-assist.ai-materials .ai-prompt .u233-chs .u233-ch[hidden]{display:none!important}
.ai-assist.ai-materials .ai-suggestion-help{margin:14px 0 0;font-size:14px;font-weight:450;line-height:1.75;color:var(--ux-ink-3)}
@container(max-width:650px){
  .ai-assist.ai-materials .ai-suggestion-groups{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ai-assist.ai-materials .ai-prompt .u233-chs{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .ai-assist.ai-materials .ai-suggestion-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .ai-assist.ai-materials .ai-prompt .u233-chs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .ai-assist.ai-materials .ai-prompt .u233-chs .u233-ch{min-height:48px;padding:9px 11px}
  .ai-assist.ai-materials .ai-suggestion-picker{margin-top:18px}
}


:root{--brand-paper:#f6f3ed;--brand-surface:#fffdf9;--brand-ink:#263a31;--brand-forest:#2e483c;--brand-muted:#7a8177;--brand-line:#dcded4;--brand-wood:#ad8b64;--brand-cream:#e7e0d2;--brand-dark-paper:#17251e;--brand-dark-surface:#22342a;--brand-dark-ink:#f3eee3;--paper:var(--brand-paper);--surface:var(--brand-surface);--ink:var(--brand-ink);--forest:var(--brand-forest);--muted:var(--brand-muted);--line:var(--brand-line);--wood:var(--brand-wood);--cream:var(--brand-cream);--accent:var(--forest);--ux-accent:var(--forest);--ux-ink:var(--ink);--ux-paper:var(--surface);--ux-muted:var(--muted);--ux-line:var(--line)}html[data-theme=dark]{--paper:var(--brand-dark-paper);--surface:var(--brand-dark-surface);--ink:var(--brand-dark-ink);--muted:#b7beb2;--line:#435349;--cream:#304338;--forest:#c0cfb3;--wood:#cfb48e;--accent:var(--forest);color-scheme:dark}html[data-theme]{--ux-page:var(--paper);--ux-surface:var(--surface);--ux-surface-2:var(--cream);--ux-surface-3:color-mix(in srgb,var(--cream) 80%,var(--ink));--ux-ink:var(--ink);--ux-ink-2:color-mix(in srgb,var(--ink) 75%,var(--paper));--ux-ink-3:var(--muted);--ux-line:var(--line);--ux-line-2:color-mix(in srgb,var(--line) 70%,var(--ink));--ux-accent:var(--forest);--ux-accent-2:var(--wood);--ux-accent-soft:color-mix(in srgb,var(--wood) 15%,transparent);--ux-accent-ink:var(--paper);--ux-glass:color-mix(in srgb,var(--surface) 90%,transparent);--ux-shadow:color-mix(in srgb,var(--ink) 15%,transparent);--ux-grad:linear-gradient(120deg,var(--forest),var(--wood));--ux-mint:var(--forest)}
/* Lucian UX/UI Prompt #373 · MIT License (c) 2026 Seokwoooo · https://lucianlabs.dev/uxui-prompt/#373 */
/* The slide-through link variant is ported into the site's own footer layout. */
.site-footer{padding:0;background:var(--surface);border-top:1px solid var(--line)}
.footer-inner{max-width:1440px;width:calc(100% - 112px);margin-inline:auto}
.footer-main{display:grid;grid-template-columns:1.15fr .75fr .9fr 1.1fr;grid-template-areas:'brand primary tools contact';gap:48px;padding-block:64px 52px;align-items:start}
.footer-main>*{min-width:0}
.footer-brand{grid-area:brand}
.footer-brand .brand{display:inline-flex;align-items:center;gap:14px;margin-bottom:24px}
.footer-brand .wordmark{font-size:52px;white-space:nowrap}
.footer-brand .brand-desc{display:block;font-size:10px;max-width:90px;line-height:1.6}
.footer-about{max-width:290px;font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:20px}
.footer-location{display:flex;align-items:center;gap:9px;font-size:13px;margin:0}
.footer-location svg{width:18px;height:18px}
.footer-primary{grid-area:primary}
.footer-tools{grid-area:tools}
.footer-contact{grid-area:contact;padding-left:32px;border-left:1px solid var(--line)}
.footer-heading{font-family:Manrope,Arial,sans-serif;font-size:12px;line-height:1.5;letter-spacing:.04em;font-weight:600;color:var(--muted);margin:0 0 21px}
.footer-nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.footer-primary .u373-a{--c:var(--wood);position:relative;display:inline-block;padding:4px 0 8px;font-size:30px;font-weight:850;letter-spacing:-.03em;color:var(--ink);text-decoration:none;outline:none;line-height:1.4}
.footer-primary .u373-a::after{content:'';position:absolute;left:0;right:0;bottom:2px;height:3px;border-radius:2px;background:var(--c);pointer-events:none;transform:scaleX(0);transform-origin:100% 50%;transition:transform .35s cubic-bezier(.6,0,.2,1)}
.footer-primary .u373-a:hover::after,.footer-primary .u373-a:focus-visible::after{transform:scaleX(1);transform-origin:0 50%}
.footer-primary .u373-a:focus-visible{color:var(--c);outline:2px solid var(--ux-accent);outline-offset:5px}
.footer-tools a{display:inline-flex;align-items:center;min-height:36px;font-size:14px;line-height:1.5;color:var(--ink);transition:color .2s}
.footer-tools a:hover{color:var(--wood)}
.footer-contact-name{font-size:15px;margin:0 0 5px}
.footer-phone{display:inline-block;font-size:clamp(25px,2.25vw,34px);font-weight:500;line-height:1.35;letter-spacing:-.045em;white-space:nowrap;margin-bottom:23px;text-decoration-thickness:1px;text-underline-offset:7px}
.footer-phone:hover{text-decoration:underline}
.footer-contact-actions{display:flex;align-items:flex-start;flex-direction:column;gap:3px}
.footer-contact-actions .text-link{min-height:44px;gap:16px;font-size:14px;padding-block:10px}
.footer-contact-email{display:inline-block;margin-top:16px;font-size:14px;overflow-wrap:anywhere}
.footer-meta{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:22px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.footer-legal{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.footer-legal a{display:inline-flex;align-items:center;min-height:40px;color:var(--ink)}
.footer-legal a:hover{text-decoration:underline;text-underline-offset:5px}
.footer-data-reset{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;color:var(--muted)}
.footer-data-reset svg{width:17px;height:17px}
.footer-data-reset:hover{color:var(--ink);border-color:var(--muted)}
@media(min-width:1101px) and (max-width:1350px){.footer-main{gap:28px}.footer-contact{padding-left:24px}.footer-brand .brand{display:block}.footer-brand .brand-desc{border:0;padding:12px 0 0;max-width:none}}
@media(max-width:1100px){.footer-inner{width:calc(100% - 64px)}.footer-main{grid-template-columns:1fr 1fr;grid-template-areas:'brand contact' 'primary tools';gap:42px 56px}.footer-contact{padding-left:32px}.footer-phone{font-size:34px}.footer-primary .footer-nav-list{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.footer-primary .u373-a{white-space:nowrap}.footer-meta{align-items:flex-start}.footer-legal{gap:16px}}
@media(max-width:700px){.footer-inner{width:calc(100% - 40px)}.footer-main{padding-block:40px 32px;grid-template-areas:'brand brand' 'contact contact' 'primary tools';gap:30px 20px;grid-template-columns:1fr 1fr}.footer-brand .brand{margin-bottom:18px}.footer-brand .wordmark{font-size:46px}.footer-brand .brand-desc{font-size:10px}.footer-about{max-width:340px;font-size:14px;margin-bottom:14px}.footer-location{font-size:13px}.footer-contact{padding:25px 0 0;border-left:0;border-top:1px solid var(--line)}.footer-heading{font-size:12px;margin-bottom:14px}.footer-contact-name{font-size:14px}.footer-phone{font-size:34px;margin-bottom:14px}.footer-contact-actions{flex-direction:row;flex-wrap:wrap;gap:6px 22px}.footer-contact-actions .text-link{font-size:13px}.footer-primary .footer-nav-list{display:flex;gap:6px}.footer-primary .u373-a{font-size:30px}.footer-tools a{font-size:13px;min-height:40px}.footer-nav-list{gap:0}.footer-meta{display:block;padding-block:18px 20px;font-size:11px}.footer-legal{margin-top:10px;gap:10px 18px}.footer-data-reset{margin-left:auto}.footer-legal a{min-height:40px}}
@media(prefers-reduced-motion:reduce){.footer-primary .u373-a::after,.footer-tools a{transition:none!important}}
