/* ==========================================================================
   Sofa & Co. — editorial stylesheet
   Nền #FAF8F5 · chữ đen · đất nung #C65D3B · cobalt #2F4BA0 · Fraunces + Inter
   ========================================================================== */
:root{
  --bg:#FAF8F5; --paper:#F1ECE4; --paper2:#E9E3D8; --ink:#111; --mute:#5E5851; --line:rgba(17,17,17,.14);
  --clay:#C65D3B; --clay-d:#B4502F; --clay-ink:#A94A2B; --cobalt:#2F4BA0; --cobalt-d:#243B82;
  --serif:'Fraunces',Georgia,'Times New Roman',serif; --sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --wrap:1320px; --gut:clamp(18px,4vw,48px); --ease:cubic-bezier(.2,.7,.2,1); --r:18px; --hh:78px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.65 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
[hidden]{display:none!important}
img,svg,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--cobalt)}
h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
:focus-visible{outline:2px solid var(--cobalt);outline-offset:3px;border-radius:4px}
::selection{background:var(--clay);color:#fff}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.screen-reader-text:focus{position:fixed!important;left:8px;top:8px;width:auto;height:auto;clip:auto;background:#fff;padding:10px 14px;z-index:9999}
.sc-hp{position:absolute!important;left:-9999px;opacity:0;pointer-events:none;height:0;width:0}
.sc-i{flex:none}

/* ---- layout ---- */
.sc-wrap{width:100%;max-width:calc(var(--wrap) + var(--gut)*2);margin:0 auto;padding:0 var(--gut)}
.sc-wrap--prose{max-width:calc(820px + var(--gut)*2)}
.sc-sec{padding:clamp(64px,9vw,140px) 0}
.sc-sec--tight{padding:clamp(32px,5vw,72px) 0}
.sc-center{text-align:center;margin-top:clamp(28px,4vw,48px)}

/* ---- type ---- */
.sc-h1,.sc-h2,.sc-h3,.sc-hero__title,.sc-about__h1,.sc-article__title,.sc-dproj__title,.sc-pdp__title,.sc-space__name,.sc-proj__title,.sc-post__title{font-family:var(--serif);font-weight:400;letter-spacing:-.025em;font-variation-settings:'opsz' 144}
.sc-h1{font-size:clamp(44px,7.2vw,96px);line-height:.96;letter-spacing:-.035em}
.sc-h1 em,.sc-h2 em,.sc-about__h1 em,.sc-hero__l2{font-style:italic;color:var(--clay);font-weight:300}
.sc-h2{font-size:clamp(32px,4.4vw,60px);line-height:1.04}
.sc-h3{font-size:clamp(22px,2.2vw,30px);line-height:1.15;letter-spacing:-.015em}
.sc-eyebrow{font:600 12px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:18px}
.sc-eyebrow a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor}
.sc-eyebrow--w{color:rgba(255,255,255,.75)}
.sc-h1--w{color:#fff}
.sc-prose{font-size:17px;line-height:1.75}
.sc-prose>*+*{margin-top:1.1em}
.sc-prose h2{font:400 clamp(28px,3.2vw,40px)/1.1 var(--serif);letter-spacing:-.02em;margin-top:1.8em}
.sc-prose h3{font:500 clamp(20px,2vw,26px)/1.2 var(--serif);margin-top:1.5em}
.sc-prose ul{list-style:disc;padding-left:1.3em}
.sc-prose ol{list-style:decimal;padding-left:1.3em}
.sc-prose li+li{margin-top:.45em}
.sc-prose a{color:var(--cobalt);font-weight:500}
.sc-prose img{border-radius:12px}
.sc-prose blockquote{border-left:3px solid var(--clay);padding:4px 0 4px 20px;font:italic 400 22px/1.4 var(--serif)}
.sc-prose figure{margin:1.6em 0}
.sc-prose figcaption{font-size:13px;color:var(--mute);margin-top:8px}
.sc-note{font-size:14px;color:var(--mute)}

/* ---- buttons & links ---- */
.sc-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 26px;border-radius:999px;font:600 15px/1 var(--sans);text-decoration:none;border:1.5px solid transparent;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s,transform .25s var(--ease);cursor:pointer;white-space:nowrap}
.sc-btn:hover{transform:translateY(-2px)}
.sc-btn--ink{background:var(--ink);color:#fff}
.sc-btn--ink:hover{background:var(--cobalt);color:#fff}
.sc-btn--clay{background:var(--clay-d);color:#fff}
.sc-btn--clay:hover{background:var(--ink);color:#fff}
.sc-btn--line{border-color:var(--ink);color:var(--ink);background:transparent}
.sc-btn--line:hover{background:var(--ink);color:#fff}
.sc-btn--lg{min-height:58px;padding:0 34px;font-size:16px}
.sc-btn--sm{min-height:38px;padding:0 16px;font-size:13px}
.sc-btn--block{display:flex;width:100%}
.sc-link{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--ink);text-decoration:none;border-bottom:1.5px solid currentColor;padding-bottom:3px;background:none;cursor:pointer}
.sc-link:hover{color:var(--cobalt)}
.sc-circle{width:54px;height:54px;border-radius:50%;border:1.5px solid var(--ink);display:inline-grid;place-items:center;transition:background .25s,color .25s}
.sc-circle:hover{background:var(--ink);color:#fff}
.sc-circle--sm{width:40px;height:40px}

/* ---- forms ---- */
label{display:block;font-size:13px;font-weight:600;letter-spacing:.01em}
input[type=text],input[type=tel],input[type=email],input[type=number],input[type=search],input[type=date],input[type=password],select,textarea{width:100%;margin-top:6px;min-height:50px;padding:12px 16px;background:#fff;border:1.5px solid var(--line);border-radius:12px;font-weight:400;font-size:16px;transition:border-color .2s,box-shadow .2s}
textarea{min-height:90px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--cobalt);box-shadow:0 0 0 3px rgba(47,75,160,.18)}
input.is-bad{border-color:#c0392b}
.sc-form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sc-form__msg{min-height:1.4em;font-size:14px;font-weight:500;margin-top:10px}
.sc-form__msg.is-ok{color:#1f7a45}.sc-form__msg.is-err{color:#c0392b}
form [type=submit]{margin-top:6px}
form>label+label,form>.sc-form__row+label,form>label+.sc-form__row,form>.sc-form__row+.sc-form__row,form>.sc-drop+.sc-form__row,form>.sc-opt+.sc-opt{margin-top:14px}

/* ---- custom cursor (chỉ khi có chuột) ---- */
.sc-cursor{display:none}
@media (hover:hover) and (pointer:fine){
  html.sc-cur,html.sc-cur a,html.sc-cur button,html.sc-cur label,html.sc-cur summary{cursor:none}
  html.sc-cur input,html.sc-cur textarea,html.sc-cur select{cursor:text}
  .sc-cursor{display:block;position:fixed;inset:0;pointer-events:none;z-index:9999}
  .sc-cursor__dot,.sc-cursor__ring{position:fixed;left:0;top:0;border-radius:50%;pointer-events:none;will-change:transform;opacity:0;transition:opacity .25s}
  .sc-cursor__dot{width:8px;height:8px;margin:-4px 0 0 -4px;background:var(--clay)}
  .sc-cursor__ring{width:40px;height:40px;margin:-20px 0 0 -20px;border:1.5px solid var(--ink);display:grid;place-items:center;transition:opacity .25s,width .3s var(--ease),height .3s var(--ease),margin .3s var(--ease),background .3s,border-color .3s}
  .sc-cursor__ring span{font:600 12px/1 var(--sans);color:#fff;opacity:0;transition:opacity .2s}
  html.sc-cur-on .sc-cursor__dot,html.sc-cur-on .sc-cursor__ring{opacity:1}
  html.sc-cur-link .sc-cursor__ring{width:64px;height:64px;margin:-32px 0 0 -32px;background:var(--clay);border-color:var(--clay)}
  html.sc-cur-link .sc-cursor__ring span{opacity:1}
  html.sc-cur-link .sc-cursor__dot{opacity:0}
  html.sc-cur-btn .sc-cursor__ring{width:56px;height:56px;margin:-28px 0 0 -28px;border-color:var(--cobalt)}
}

/* ---- announce + header ---- */
.sc-announce{background:var(--ink);color:#fff;font-size:13px}
.sc-announce__in{display:flex;justify-content:space-between;gap:20px;align-items:center;min-height:38px}
.sc-announce b{font-weight:600}
.sc-announce a{display:inline-flex;gap:6px;align-items:center;color:#fff;text-decoration:none;white-space:nowrap}
.sc-header{position:sticky;top:0;z-index:60;background:rgba(250,248,245,.9);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--line)}
.sc-header__in{display:flex;align-items:center;gap:28px;height:var(--hh)}
.sc-logo{font:500 30px/1 var(--serif);letter-spacing:-.04em;text-decoration:none;color:var(--ink);display:inline-flex;align-items:baseline;font-variation-settings:'opsz' 144}
.sc-logo span{font-style:italic;color:var(--clay);margin:0 .06em;font-weight:300}
.sc-logo--lg{font-size:clamp(40px,5vw,64px)}
.sc-nav{margin-left:auto}
.sc-nav__list{display:flex;gap:clamp(14px,2.2vw,34px);align-items:center}
.sc-nav__list>li{position:relative}
.sc-nav__list a{display:block;padding:10px 2px;font-weight:500;font-size:15px;text-decoration:none;position:relative}
.sc-nav__list>li>a::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:2px;background:var(--clay);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.sc-nav__list>li:hover>a::after,.sc-nav__list>li.current-menu-item>a::after,.sc-nav__list>li.current-menu-ancestor>a::after{transform:scaleX(1)}
.sc-nav__list .sub-menu{position:absolute;left:-18px;top:100%;min-width:230px;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:0 24px 50px -24px rgba(0,0,0,.3);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s var(--ease)}
.sc-nav__list li:hover>.sub-menu,.sc-nav__list li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.sc-nav__list .sub-menu a{padding:9px 12px;border-radius:8px;font-size:14px}
.sc-nav__list .sub-menu a:hover{background:var(--paper)}
.sc-nav__foot{display:none}
.sc-tools{display:flex;gap:4px;align-items:center}
.sc-tool{position:relative;width:44px;height:44px;border-radius:50%;display:inline-grid;place-items:center;color:var(--ink);text-decoration:none;transition:background .2s}
.sc-tool:hover{background:var(--paper);color:var(--ink)}
.sc-tool em{position:absolute;top:2px;right:0;min-width:18px;height:18px;border-radius:9px;background:var(--clay-d);color:#fff;font:600 11px/18px var(--sans);text-align:center;font-style:normal;padding:0 4px}
.sc-burger{display:none}
.sc-search{border-top:1px solid var(--line);background:var(--bg)}
.sc-search__in{display:flex;gap:12px;padding-top:14px;padding-bottom:14px}
.sc-search__in input{margin:0;flex:1}
.sc-main{min-height:60vh}

/* ---- marquee ---- */
.sc-marquee{overflow:hidden;white-space:nowrap;border-block:1px solid var(--ink);background:var(--bg);padding:14px 0}
.sc-marquee__track{display:inline-flex;animation:sc-mq 46s linear infinite;will-change:transform}
.sc-marquee:hover .sc-marquee__track{animation-play-state:paused}
.sc-marquee span{font:400 clamp(18px,2vw,26px)/1.2 var(--serif);font-style:italic;padding-right:.6em}
.sc-marquee i{font-style:normal;color:var(--clay);margin:0 .5em}
.sc-marquee--big{border:0;background:transparent;padding:clamp(20px,4vw,48px) 0}
.sc-marquee--big span{font-size:clamp(56px,10vw,150px);font-style:normal;letter-spacing:-.04em;line-height:1}
.sc-marquee--big span:nth-child(odd){-webkit-text-stroke:0}
@keyframes sc-mq{to{transform:translateX(-50%)}}

/* ---- HERO ---- */
.sc-hero{position:relative;padding-top:clamp(28px,5vw,64px);overflow:hidden}
.sc-hero__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:0;min-height:min(78vh,780px);padding-bottom:clamp(40px,6vw,90px)}
.sc-hero__copy{position:relative;z-index:3}
.sc-hero__title{font-size:clamp(60px,11.4vw,188px);line-height:.88;letter-spacing:-.05em;display:flex;flex-direction:column;margin:0 -32vw 0 -.04em;animation:sc-rise .9s var(--ease) both}
.sc-hero__l2{margin-left:clamp(20px,6vw,120px);color:var(--cobalt);font-style:italic;font-weight:300}
.sc-hero__lead{max-width:470px;font-size:18px;color:var(--mute);margin:clamp(22px,3vw,40px) 0;animation:sc-rise .9s .12s var(--ease) both}
.sc-hero__cta{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;animation:sc-rise .9s .2s var(--ease) both}
.sc-hero__proof{display:flex;gap:clamp(18px,3vw,44px);margin-top:clamp(28px,4vw,52px);padding-top:22px;border-top:1px solid var(--line);max-width:520px}
.sc-hero__proof li{display:flex;flex-direction:column}
.sc-hero__proof b{font:500 28px/1.1 var(--serif);letter-spacing:-.02em}
.sc-hero__proof span{font-size:12.5px;color:var(--mute)}
.sc-hero__art{position:relative;justify-self:end;width:min(100%,640px);aspect-ratio:1/1.08;display:grid;place-items:center}
.sc-hero__disc{position:absolute;width:86%;aspect-ratio:1;border-radius:50%;background:#EBBFA8;left:6%;top:2%}
.sc-hero__img{position:relative;width:118%;margin-left:-4%;mix-blend-mode:multiply;transform:rotate(calc(var(--rot,0)*1deg)) scale(var(--sc,1));transition:transform .15s linear;will-change:transform}
.sc-hero__img img{width:100%;aspect-ratio:1/1;object-fit:cover}
.sc-hero__tag{position:absolute;left:-2%;bottom:6%;z-index:4;display:flex;flex-direction:column;gap:2px;background:var(--bg);border:1px solid var(--ink);border-radius:14px;padding:12px 16px;text-decoration:none;font-size:13px;box-shadow:6px 6px 0 var(--ink);transition:transform .3s var(--ease),box-shadow .3s}
.sc-hero__tag:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0 var(--cobalt);color:var(--ink)}
.sc-hero__tag small{color:var(--mute);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.sc-hero__tag b{font:500 17px/1.2 var(--serif)}
.sc-hero__tag span{display:inline-flex;gap:6px;align-items:center;color:var(--clay-ink);font-weight:600}
@keyframes sc-rise{from{opacity:0;transform:translateY(34px)}to{opacity:1;transform:none}}

/* ---- section heads ---- */
.sc-sechead{margin-bottom:clamp(32px,5vw,72px);max-width:900px}
.sc-sechead--row{max-width:none;display:flex;justify-content:space-between;align-items:flex-end;gap:28px;flex-wrap:wrap}
.sc-sechead__p{margin-top:20px;max-width:520px;color:var(--mute);font-size:18px}

/* ---- spaces stack ---- */
.sc-spaces{background:var(--bg)}
.sc-stack{display:block}
.sc-space{position:sticky;top:calc(var(--hh) + 14px + var(--i)*22px);margin-bottom:clamp(14px,2vw,26px)}
.sc-space:nth-child(1) .sc-space__in{background:var(--paper)}
.sc-space:nth-child(2) .sc-space__in{background:#E4E9F4}
.sc-space:nth-child(3) .sc-space__in{background:#F0DCD2}
.sc-space:nth-child(4) .sc-space__in{background:#E1DDD2}
.sc-space__in{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:clamp(380px,62vh,560px);border-radius:28px;overflow:hidden;text-decoration:none;color:var(--ink);border:1px solid var(--line);box-shadow:0 -18px 40px -26px rgba(0,0,0,.25)}
.sc-space__txt{padding:clamp(24px,4vw,56px);display:flex;flex-direction:column;justify-content:flex-end;gap:14px;position:relative;z-index:2}
.sc-space__no{font:400 15px var(--serif);font-style:italic;color:var(--mute);position:absolute;top:clamp(20px,3vw,40px);left:clamp(24px,4vw,56px)}
.sc-space__name{font-size:clamp(48px,7.4vw,112px);line-height:.9;letter-spacing:-.045em;margin-right:-28%;position:relative;z-index:3}
.sc-space__txt p{color:var(--mute);max-width:320px}
.sc-space__go{display:inline-flex;align-items:center;gap:10px;font-weight:600;margin-top:6px}
.sc-space__img{position:relative;overflow:hidden}
.sc-space__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.sc-space__in:hover .sc-space__img img{transform:scale(1.05)}

/* ---- size tool ---- */
.sc-size{background:var(--paper)}
.sc-size__grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.15fr) minmax(260px,.9fr);gap:clamp(18px,3vw,44px);align-items:start}
.sc-size__lbl{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.sc-size__area{display:flex;align-items:baseline;gap:8px;font-family:var(--serif);margin:6px 0 14px}
.sc-size__area output{font-size:clamp(76px,9vw,128px);line-height:.9;letter-spacing:-.05em;color:var(--cobalt)}
.sc-size__area span{font-size:28px;font-style:italic}
.sc-size input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--ink) var(--p,28%),var(--line) var(--p,28%));margin:12px 0;padding:0;border:0;min-height:0}
.sc-size input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;border-radius:50%;background:var(--clay);border:4px solid var(--bg);box-shadow:0 0 0 1.5px var(--ink);cursor:grab}
.sc-size input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--clay);border:4px solid var(--bg);box-shadow:0 0 0 1.5px var(--ink)}
.sc-size__num{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--mute)}
.sc-size__num input{width:96px;margin:0;min-height:42px}
.sc-size__ppl{border:0;padding:0;margin:26px 0 0}
.sc-size__ppl legend{font-size:13px;font-weight:600;margin-bottom:10px;padding:0}
.sc-size__ppl label{display:inline-block;margin:0 6px 8px 0}
.sc-size__ppl input{position:absolute;opacity:0}
.sc-size__ppl span{display:inline-block;padding:10px 16px;border:1.5px solid var(--ink);border-radius:999px;font-weight:500;font-size:14px;transition:.2s}
.sc-size__ppl input:checked+span{background:var(--ink);color:#fff}
.sc-size__ppl input:focus-visible+span{outline:2px solid var(--cobalt);outline-offset:2px}
.sc-size__res{margin-top:20px;padding:16px 18px;background:var(--bg);border-radius:14px;border:1px solid var(--line);font-size:15px}
.sc-size__res b{color:var(--cobalt)}
.sc-size__viz{background:var(--bg);border-radius:22px;border:1px solid var(--line);padding:14px}
.sc-size__viz svg{width:100%;height:auto}
.sc-viz__room{fill:#fff;stroke:var(--ink);stroke-width:3}
.sc-viz__door{fill:var(--bg);stroke:var(--ink);stroke-width:2}
.sc-viz__rug{fill:#E7DCCB}
.sc-viz__sofa{fill:var(--clay);stroke:var(--ink);stroke-width:2.5;transition:all .35s var(--ease)}
.sc-viz__table{fill:var(--ink);transition:all .35s var(--ease)}
.sc-viz__rug{transition:all .35s var(--ease)}
.sc-viz__lbl{font:600 14px var(--sans);fill:#fff}
.sc-viz__dim{font:500 12px var(--sans);fill:var(--mute)}
.sc-size__tip{font-size:13px;color:var(--mute);margin-top:10px;text-align:center}
.sc-size__list{display:flex;flex-direction:column;gap:12px;margin:18px 0 20px;counter-reset:r}
.sc-size__list li{display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:10px;transition:.25s var(--ease)}
.sc-size__list li:hover{border-color:var(--ink);transform:translateX(4px)}
.sc-size__list img{width:72px;height:72px;border-radius:10px;object-fit:cover}
.sc-size__list a{text-decoration:none;display:contents;color:inherit}
.sc-size__list b{display:block;font:500 16px/1.25 var(--serif)}
.sc-size__list small{color:var(--mute);font-size:12.5px;display:block}

/* ---- materials ---- */
.sc-mat__grid{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.5fr) minmax(260px,.8fr);gap:clamp(18px,3vw,48px);align-items:center}
.sc-mat__tabs{display:flex;flex-direction:column;gap:6px}
.sc-mat__tabs button{text-align:left;padding:14px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:4px;color:var(--mute);transition:color .3s}
.sc-mat__tabs button span{font:300 clamp(44px,6vw,84px)/1 var(--serif);letter-spacing:-.04em;font-style:italic;transition:transform .35s var(--ease)}
.sc-mat__tabs button small{font-size:14px}
.sc-mat__tabs button.is-on{color:var(--ink)}
.sc-mat__tabs button.is-on span{color:var(--clay);transform:translateX(10px)}
.sc-mat__stage{position:relative;background:var(--paper);border-radius:28px;padding:clamp(20px,3vw,44px);aspect-ratio:16/11;display:grid;place-items:center;overflow:hidden}
.sc-mat__stage svg{width:100%;height:auto;transition:filter .3s}
.sc-sofa__legs rect{fill:#2a2522}
.sc-mat__macro{position:absolute;right:16px;top:16px;width:clamp(76px,12vw,128px);aspect-ratio:1;border-radius:50%;overflow:hidden;border:3px solid var(--bg);box-shadow:0 0 0 1.5px var(--ink)}
.sc-mat__macro img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.5);transition:opacity .4s}
.sc-mat__macro img.is-off{opacity:0}
.sc-mat__macro span{position:absolute;left:0;right:0;bottom:0;background:rgba(17,17,17,.7);color:#fff;font:500 9px/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;text-align:center;padding:5px 0}
.sc-mat__color{position:absolute;left:20px;bottom:16px;font:italic 400 22px var(--serif)}
.sc-mat__info{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.sc-mat__sw{display:flex;flex-wrap:wrap;gap:12px}
.sc-mat__sw button{width:44px;height:44px;border-radius:50%;background:var(--sw);border:3px solid var(--bg);box-shadow:0 0 0 1.5px var(--line);transition:.25s var(--ease)}
.sc-mat__sw button:hover{transform:scale(1.1)}
.sc-mat__sw button[aria-checked=true]{box-shadow:0 0 0 2px var(--ink);transform:scale(1.08)}
.sc-mat__facts{display:grid;gap:8px;width:100%}
.sc-mat__facts li{display:flex;justify-content:space-between;gap:12px;font-size:14px;border-bottom:1px dashed var(--line);padding-bottom:8px}
.sc-mat__facts b{font-weight:600}

/* ---- product card / grid / carousel ---- */
.sc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3vw,40px) clamp(14px,2vw,28px)}
.sc-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.sc-pc{position:relative;display:flex;flex-direction:column}
.sc-pc__media{position:relative;display:block;aspect-ratio:5/4;background:var(--paper);border-radius:16px;overflow:hidden}
.sc-pc__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.sc-pc:hover .sc-pc__media img{transform:scale(1.05)}
.sc-pc__badge{position:absolute;left:12px;top:12px;background:var(--ink);color:#fff;font:600 11px/1 var(--sans);letter-spacing:.06em;text-transform:uppercase;padding:7px 10px;border-radius:999px;z-index:2}
.sc-pc__tools{position:absolute;left:0;right:0;top:0;aspect-ratio:5/4;display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding:12px;pointer-events:none;opacity:0;transform:translateY(8px);transition:.3s var(--ease)}
.sc-pc:hover .sc-pc__tools,.sc-pc:focus-within .sc-pc__tools{opacity:1;transform:none}
.sc-pc__tools>*{pointer-events:auto}
.sc-pc__qv,.sc-pc__cmp span{display:inline-flex;align-items:center;gap:6px;background:var(--bg);border:1px solid var(--ink);border-radius:999px;padding:9px 14px;font:600 12.5px/1 var(--sans);cursor:pointer;transition:.2s}
.sc-pc__qv:hover,.sc-pc__cmp:hover span{background:var(--ink);color:#fff}
.sc-pc__cmp{display:inline-block;position:relative;margin:0;font-weight:inherit}
.sc-pc__cmp input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;min-height:0;cursor:pointer}
.sc-pc__cmp input:checked+span{background:var(--cobalt);border-color:var(--cobalt);color:#fff}
.sc-pc__cmp input:focus-visible+span{outline:2px solid var(--cobalt);outline-offset:2px}
.sc-pc__body{padding:14px 2px 0;display:flex;flex-direction:column;gap:4px}
.sc-pc__meta{font:600 11.5px/1.3 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.sc-pc__title{font:500 clamp(18px,1.7vw,22px)/1.2 var(--serif);letter-spacing:-.01em}
.sc-pc__title a{text-decoration:none}
.sc-pc__title a::after{content:none}
.sc-pc__price{font-weight:600;font-size:15px}
.sc-pc__price del,.sc-price del{color:var(--mute);font-weight:400;margin-right:6px;text-decoration:line-through}
.sc-pc__price ins{text-decoration:none}
.sc-pc__dots{display:flex;align-items:center;gap:6px;margin-top:4px}
.sc-pc__dots small{font-size:12px;color:var(--mute)}
.sc-dot{display:inline-block;width:14px;height:14px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
.sc-car{overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-left:max(var(--gut),calc((100vw - var(--wrap))/2));scrollbar-width:none;padding:6px 0 10px;-webkit-overflow-scrolling:touch}
.sc-car::-webkit-scrollbar{display:none}
.sc-car__track{display:flex;gap:clamp(14px,2vw,28px);padding:0 max(var(--gut),calc((100vw - var(--wrap))/2));width:max-content}
.sc-car .sc-pc{width:clamp(250px,25vw,340px);scroll-snap-align:start}
.sc-car__ctl{display:flex;gap:10px}
.sc-best{background:var(--bg)}

/* ---- room banner ---- */
.sc-room{background:var(--cobalt);color:#fff;position:relative;overflow:hidden}
.sc-room::before{content:"";position:absolute;right:-12%;top:-30%;width:60vw;aspect-ratio:1;border-radius:50%;border:1.5px solid rgba(255,255,255,.18);pointer-events:none}
.sc-room::after{content:"";position:absolute;right:4%;bottom:-40%;width:44vw;aspect-ratio:1;border-radius:50%;background:rgba(198,93,59,.35);filter:blur(2px);pointer-events:none}
.sc-room__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:center;position:relative;z-index:2}
.sc-room__copy p{font-size:18px;color:rgba(255,255,255,.85);max-width:480px;margin-top:22px}
.sc-room .sc-h1 em{color:#F3B39B}
.sc-room__steps{margin-top:30px;display:grid;gap:12px}
.sc-room__steps li{display:flex;align-items:center;gap:14px;font-weight:500}
.sc-room__steps b{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:var(--cobalt);font:600 15px var(--sans)}
.sc-room__form{background:var(--bg);color:var(--ink);border-radius:26px;padding:clamp(20px,3vw,36px);box-shadow:0 40px 80px -40px rgba(0,0,0,.55)}
.sc-drop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;min-height:190px;border:2px dashed var(--ink);border-radius:18px;padding:22px;cursor:pointer;transition:.25s;margin-bottom:16px;overflow:hidden;background:#fff;font-weight:400}
.sc-drop:hover,.sc-drop.is-drag{background:var(--paper);border-color:var(--clay)}
.sc-drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;min-height:0}
.sc-drop__ic{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--ink);color:#fff}
.sc-drop__t{font-size:16px}
.sc-drop small{color:var(--mute);font-size:12.5px}
.sc-drop__prev{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sc-drop.has-file .sc-drop__ic,.sc-drop.has-file .sc-drop__t,.sc-drop.has-file small{position:relative;z-index:2;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.6)}

/* ---- pledge ---- */
.sc-pledge{background:var(--paper)}
.sc-pledge__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,40px)}
.sc-pledge__grid article{border-top:2px solid var(--ink);padding-top:22px}
.sc-pledge__n{display:flex;align-items:baseline;gap:10px;font:300 clamp(96px,13vw,200px)/.85 var(--serif);letter-spacing:-.06em;color:var(--clay);margin-bottom:18px;font-style:italic}
.sc-pledge__n small{font:600 14px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-style:normal}
.sc-pledge h3{font:500 clamp(22px,2vw,28px)/1.15 var(--serif);margin-bottom:10px}
.sc-pledge p{color:var(--mute);max-width:380px}

/* ---- reviews ---- */
.sc-rev__sum{display:flex;align-items:center;gap:16px;font-size:13px;color:var(--mute)}
.sc-rev__sum b{font:300 clamp(64px,8vw,104px)/.9 var(--serif);color:var(--ink);letter-spacing:-.05em}
.sc-rev__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(14px,2vw,26px)}
.sc-rcard{grid-column:span 4;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}
.sc-rcard:nth-child(1){grid-column:span 5}
.sc-rcard:nth-child(2){grid-column:span 4;margin-top:48px}
.sc-rcard:nth-child(3){grid-column:span 3}
.sc-rcard:nth-child(4){grid-column:span 3}
.sc-rcard:nth-child(5){grid-column:span 5}
.sc-rcard:nth-child(6){grid-column:span 4}
.sc-rcard__img{aspect-ratio:4/3;overflow:hidden;background:var(--paper)}
.sc-rcard__img img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.sc-rcard:hover .sc-rcard__img img{transform:scale(1.04)}
.sc-rcard figcaption{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1}
.sc-rcard__stars{color:var(--clay);letter-spacing:.1em;font-size:15px}
.sc-rcard blockquote{font:400 18px/1.45 var(--serif);flex:1}
.sc-rcard__who{font-size:13px;color:var(--mute)}
.sc-rcard__who b{color:var(--ink)}
.sc-rcard__p{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--cobalt);text-decoration:none}

/* ---- lookbook ---- */
.sc-look{background:var(--bg)}
.sc-look__grid{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);gap:clamp(14px,2vw,26px)}
.sc-look__main{position:relative;border-radius:24px;overflow:hidden;background:var(--paper)}
.sc-look__main>img{width:100%;aspect-ratio:16/11;object-fit:cover}
.sc-look__cap{position:absolute;left:16px;top:16px;right:auto;max-width:min(520px,calc(100% - 32px));background:rgba(250,248,245,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;padding:12px 16px;font-size:14px}
.sc-look__cap a{font-weight:600;display:inline-flex;gap:6px;align-items:center;margin-left:6px;color:var(--cobalt)}
.sc-hot{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);z-index:3;text-decoration:none}
.sc-hot i{display:block;width:30px;height:30px;border-radius:50%;background:var(--clay);border:3px solid #fff;box-shadow:0 0 0 0 rgba(198,93,59,.6);animation:sc-pulse 2.2s infinite}
.sc-hot__card{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%,6px);display:grid;grid-template-columns:48px 1fr;gap:4px 10px;align-items:center;width:230px;background:var(--bg);border:1px solid var(--ink);border-radius:12px;padding:8px;opacity:0;pointer-events:none;transition:.25s var(--ease);box-shadow:5px 5px 0 var(--ink)}
.sc-hot__card img{grid-row:span 2;width:48px;height:48px;border-radius:8px;object-fit:cover}
.sc-hot__card b{font:500 14px/1.2 var(--serif);color:var(--ink)}
.sc-hot__card small{font-size:12px;color:var(--mute)}
.sc-hot__card small del{display:none}
.sc-hot:hover .sc-hot__card,.sc-hot:focus .sc-hot__card,.sc-hot:focus-visible .sc-hot__card{opacity:1;transform:translate(-50%,0)}
@keyframes sc-pulse{70%{box-shadow:0 0 0 16px rgba(198,93,59,0)}100%{box-shadow:0 0 0 0 rgba(198,93,59,0)}}
.sc-look__side{display:grid;grid-template-rows:1fr 1fr;gap:clamp(14px,2vw,26px)}
.sc-look__s{position:relative;border-radius:20px;overflow:hidden;display:block;min-height:220px;background:var(--paper)}
.sc-look__s img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.sc-look__s:hover img{transform:scale(1.05)}
.sc-look__s span{position:absolute;left:14px;bottom:14px;background:var(--bg);padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600}
.sc-blogsec{margin-top:clamp(64px,9vw,130px)}
.sc-blogsec .sc-sechead{margin-bottom:28px}

/* ---- posts ---- */
.sc-posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,44px) clamp(16px,2vw,28px)}
.sc-posts--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.sc-post{display:flex;flex-direction:column;gap:16px}
.sc-post__img{display:block;aspect-ratio:4/3;border-radius:16px;overflow:hidden;background:var(--paper)}
.sc-post__img img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.sc-post:hover .sc-post__img img{transform:scale(1.05)}
.sc-post__title{font-size:clamp(21px,2vw,27px);line-height:1.15}
.sc-post__title a{text-decoration:none}
.sc-post__title a:hover{color:var(--clay-ink)}
.sc-post__body p:last-child{color:var(--mute);font-size:15px;margin-top:8px}
.sc-post__body .sc-eyebrow{margin-bottom:10px}
.sc-post--lead{grid-column:1/-1}
.sc-post--lead .sc-post{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(20px,3vw,48px);align-items:center}
.sc-post--lead .sc-post__img{aspect-ratio:16/10}
.sc-post--lead .sc-post__title{font-size:clamp(30px,4vw,54px);line-height:1.03}

/* ---- FAQ + CTA ---- */
.sc-faq{margin-top:clamp(40px,5vw,72px)}
.sc-faq .sc-h2{font-size:clamp(28px,3.4vw,44px);margin-bottom:22px}
.sc-faq__list details{border-bottom:1px solid var(--line)}
.sc-faq__list details:first-child{border-top:1px solid var(--line)}
.sc-faq summary,.sc-acc summary{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 0;cursor:pointer;font:500 clamp(18px,1.8vw,22px)/1.3 var(--serif);list-style:none}
.sc-faq summary::-webkit-details-marker,.sc-acc summary::-webkit-details-marker{display:none}
.sc-faq summary .sc-i,.sc-acc summary .sc-i{transition:transform .3s var(--ease);flex:none}
.sc-faq details[open] summary .sc-i,.sc-acc details[open]>summary .sc-i{transform:rotate(45deg)}
.sc-faq__a{padding:0 0 22px;color:var(--mute);max-width:720px}
.sc-home-faq__grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,80px);align-items:start}
.sc-home-faq__intro p{margin-top:16px;color:var(--mute)}
.sc-home-faq__intro a:not(.sc-link){color:var(--cobalt);font-weight:600}
.sc-home-faq .sc-faq{margin-top:0}
.sc-cta{margin:clamp(40px,6vw,80px) 0;background:var(--ink);color:#fff;border-radius:28px;padding:clamp(28px,5vw,64px);display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap}
.sc-cta .sc-h2{max-width:640px;color:#fff}

/* ---- page heads ---- */
.sc-pagehead{padding:clamp(28px,5vw,64px) 0 clamp(20px,3vw,40px)}
.sc-pagehead--sm{padding-bottom:0}
.sc-pagehead__t{margin-bottom:18px}
.sc-pagehead__p{max-width:640px;font-size:18px;color:var(--mute)}
.sc-pagehead__p a{color:var(--cobalt);font-weight:600}
.sc-crumbs{margin-bottom:22px;font-size:13px;color:var(--mute)}
.sc-crumbs ol{display:flex;flex-wrap:wrap;gap:4px 0}
.sc-crumbs li+li::before{content:"/";margin:0 9px;opacity:.5}
.sc-crumbs a{text-decoration:none}
.sc-crumbs a:hover{color:var(--cobalt);text-decoration:underline}
.sc-crumbs [aria-current]{color:var(--ink)}
.sc-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.sc-chips a{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border:1.5px solid var(--ink);border-radius:999px;font-size:14px;font-weight:500;text-decoration:none;transition:.2s}
.sc-chips a small{opacity:.6;font-size:12px}
.sc-chips a:hover,.sc-chips a.is-on{background:var(--ink);color:#fff}
.sc-pager ul{display:flex;gap:8px;justify-content:center;margin-top:clamp(32px,5vw,56px);flex-wrap:wrap}
.sc-pager a,.sc-pager span{display:grid;place-items:center;min-width:44px;height:44px;padding:0 12px;border:1.5px solid var(--ink);border-radius:999px;text-decoration:none;font-weight:600;font-size:14px}
.sc-pager .current{background:var(--ink);color:#fff}
.sc-pager a:hover{background:var(--paper);color:var(--ink)}

/* ---- shop ---- */
.sc-cathead__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:0;align-items:center}
.sc-cathead__h1{font-size:clamp(46px,8vw,120px);line-height:.92;margin-right:-14vw;position:relative;z-index:3}
.sc-cathead__h1 small{font:400 .26em var(--sans);letter-spacing:0;color:var(--mute)}
.sc-cathead__desc{margin-top:20px;max-width:560px;color:var(--mute);font-size:17px}
.sc-cathead__desc p+p{margin-top:.8em}
.sc-cathead__img{border-radius:24px;overflow:hidden;aspect-ratio:4/5;max-height:420px;justify-self:end;width:min(100%,420px);background:var(--paper)}
.sc-cathead__img img{width:100%;height:100%;object-fit:cover}
.sc-shop__grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}
.sc-filter{position:sticky;top:calc(var(--hh) + 16px);max-height:calc(100vh - var(--hh) - 32px);overflow:auto;padding-right:6px;scrollbar-width:thin}
.sc-filter__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.sc-filter [data-sc-filter-close]{display:none}
.sc-fs{border:0;border-top:1px solid var(--line);padding:18px 0;margin:0}
.sc-fs legend{font:600 12px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);padding:0;float:left;width:100%;margin-bottom:12px}
.sc-fs legend+*{clear:both}
.sc-check{display:flex;align-items:center;gap:10px;padding:6px 0;font-size:15px;font-weight:400;cursor:pointer}
.sc-check input{appearance:none;-webkit-appearance:none;width:20px;height:20px;margin:0;min-height:0;padding:0;border:1.5px solid var(--ink);border-radius:5px;background:#fff;display:grid;place-items:center;flex:none;cursor:pointer}
.sc-check input[type=radio]{border-radius:50%}
.sc-check input:checked{background:var(--ink)}
.sc-check input:checked::after{content:"";width:8px;height:8px;background:#fff;border-radius:2px}
.sc-check input[type=radio]:checked::after{border-radius:50%}
.sc-fs--sw{display:flex;flex-wrap:wrap;gap:10px}
.sc-fs--sw legend{margin-bottom:2px}
.sc-swatch{margin:0;cursor:pointer;position:relative;display:inline-block}
.sc-swatch input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;min-height:0;cursor:pointer}
.sc-swatch span{display:block;width:34px;height:34px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(0,0,0,.2);border:3px solid var(--bg);outline:1.5px solid transparent;transition:.2s}
.sc-swatch:hover span{transform:scale(1.08)}
.sc-swatch input:checked+span{outline-color:var(--ink)}
.sc-swatch input:focus-visible+span{outline:2px solid var(--cobalt)}
.sc-filter__act{display:flex;align-items:center;gap:18px;padding-top:6px}
.sc-toolbar{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.sc-toolbar__n{margin-right:auto;color:var(--mute);font-size:15px}
.sc-toolbar__n b{color:var(--ink)}
.sc-toolbar__f{display:none}
.sc-sort{display:flex;align-items:center;gap:10px;margin:0;font-weight:500;color:var(--mute)}
.sc-sort select{margin:0;min-height:42px;padding:8px 36px 8px 14px;border-radius:999px;width:auto;appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23111' stroke-width='1.6'%3E%3Cpath d='m1 1.5 5 5 5-5'/%3E%3C/svg%3E") no-repeat right 14px center}
.sc-active{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;align-items:center}
.sc-active a:not(.sc-link){display:inline-flex;gap:8px;align-items:center;background:var(--ink);color:#fff;padding:7px 12px;border-radius:999px;font-size:13px;text-decoration:none}
.sc-empty{padding:60px 0;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.sc-seotext{background:var(--paper)}

/* ---- PDP ---- */
.sc-pdp__top{padding-top:22px}
.sc-pdp__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);align-items:start}
.sc-gal{position:sticky;top:calc(var(--hh) + 18px)}
.sc-gal__main{position:relative;background:var(--paper);border-radius:22px;overflow:hidden;aspect-ratio:1/1;user-select:none}
.sc-gal__main img{width:100%;height:100%;object-fit:cover;transition:opacity .25s}
.sc-gal__main.is-360{cursor:ew-resize}
.sc-gal__hint{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:9px 16px;border-radius:999px;font-size:13px;display:inline-flex;gap:8px;align-items:center;pointer-events:none}
.sc-gal__bar{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-top:14px;flex-wrap:wrap}
.sc-gal__thumbs{display:flex;gap:10px}
.sc-gal__thumbs button{width:70px;height:70px;border-radius:12px;overflow:hidden;border:2px solid transparent;opacity:.7;transition:.2s;background:var(--paper)}
.sc-gal__thumbs button.is-on,.sc-gal__thumbs button:hover{opacity:1;border-color:var(--ink)}
.sc-gal__thumbs img{width:100%;height:100%;object-fit:cover}
.sc-pdp__title{font-size:clamp(34px,4.2vw,58px);line-height:1;margin:6px 0 12px}
.sc-rating{display:inline-flex;gap:6px;align-items:center;font-size:14px;text-decoration:none;color:var(--mute)}
.sc-rating span:first-child{color:var(--clay);font-size:17px}
.sc-rating b{color:var(--ink)}
.sc-price{margin:14px 0 4px;font:500 clamp(28px,3vw,38px)/1.1 var(--serif);display:flex;align-items:baseline;gap:12px}
.sc-price del{font:400 18px var(--sans)}
.sc-pdp__short{margin:14px 0 22px;color:var(--mute);font-size:16px}
.sc-opt{border:0;padding:0;margin:0 0 22px}
.sc-opt legend{font-size:13px;font-weight:600;margin-bottom:10px;padding:0}
.sc-opt legend b{font-weight:500;color:var(--mute)}
.sc-swatches{display:flex;flex-wrap:wrap;gap:12px}
.sc-opt .sc-swatch span{width:40px;height:40px}
.sc-sizes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.sc-szopt{margin:0;position:relative;display:block;cursor:pointer}
.sc-szopt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;min-height:0;cursor:pointer}
.sc-szopt span{display:flex;flex-direction:column;gap:2px;border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;background:#fff;transition:.2s;height:100%}
.sc-szopt b{font-size:15px}
.sc-szopt small{color:var(--mute);font-size:12.5px;font-weight:400}
.sc-szopt em{font-style:normal;font-size:12px;color:var(--clay-ink);font-weight:600}
.sc-szopt input:checked+span{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--paper)}
.sc-szopt input:focus-visible+span{outline:2px solid var(--cobalt);outline-offset:2px}
.sc-buy__row{display:flex;gap:12px;margin-bottom:12px}
.sc-buy__row .sc-btn{flex:1}
.sc-qty{display:inline-flex;align-items:center;border:1.5px solid var(--ink);border-radius:999px;height:58px;background:#fff}
.sc-qty button{width:48px;height:100%;display:grid;place-items:center}
.sc-qty input{width:44px;margin:0;border:0;min-height:0;text-align:center;padding:0;background:transparent;-moz-appearance:textfield;font-weight:600}
.sc-qty input::-webkit-outer-spin-button,.sc-qty input::-webkit-inner-spin-button{-webkit-appearance:none}
.sc-buy__links{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:16px;font-size:14px;font-weight:500;align-items:center}
.sc-buy__links a{text-decoration:none;border-bottom:1px solid var(--line)}
.sc-buy__links .sc-pc__cmp input:checked+span{background:var(--cobalt);color:#fff}
.sc-buy__links .sc-pc__cmp span{padding:8px 12px}
.sc-trust{display:grid;gap:12px;margin-top:26px;padding:20px;background:var(--paper);border-radius:18px}
.sc-trust li{display:flex;gap:14px;align-items:center;font-size:14px;color:var(--mute)}
.sc-trust b{color:var(--ink);display:block}
.sc-trust .sc-i{color:var(--clay-ink)}
.sc-pdp__info{margin-top:clamp(40px,6vw,90px);max-width:calc(900px + var(--gut)*2)}
.sc-acc details{border-top:1px solid var(--line)}
.sc-acc details:last-child{border-bottom:1px solid var(--line)}
.sc-acc details>div{padding:0 0 26px}
.sc-tablewrap{overflow-x:auto}
.sc-table{width:100%;border-collapse:collapse;font-size:15px}
.sc-table th,.sc-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.sc-table thead th{font:600 12px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);border-bottom:1.5px solid var(--ink)}
.sc-table tbody th{font-weight:600}
.sc-specs{display:grid;grid-template-columns:repeat(2,1fr);gap:0 32px;margin:18px 0}
.sc-specs div{display:flex;justify-content:space-between;gap:14px;border-bottom:1px dashed var(--line);padding:10px 0}
.sc-specs dt{color:var(--mute);font-size:14px}
.sc-specs dd{font-weight:500;text-align:right}
.sc-sticky{position:fixed;left:0;right:0;bottom:0;z-index:50;background:rgba(250,248,245,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--ink);transform:translateY(105%);transition:transform .35s var(--ease)}
.sc-sticky.is-on{transform:none}
.sc-sticky__in{display:flex;align-items:center;gap:18px;padding-top:12px;padding-bottom:12px}
.sc-sticky__n{margin-right:auto;font:500 18px var(--serif);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ---- quick view / modal / compare ---- */
.sc-modal{border:0;padding:0;background:var(--bg);border-radius:26px;width:min(1000px,94vw);max-height:92vh;overflow:auto;color:var(--ink);box-shadow:0 50px 120px -30px rgba(0,0,0,.6)}
.sc-modal::backdrop{background:rgba(17,17,17,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.sc-modal__x{position:absolute;right:14px;top:14px;z-index:3;width:44px;height:44px;border-radius:50%;background:var(--bg);border:1.5px solid var(--ink);display:grid;place-items:center}
.sc-modal__x:hover{background:var(--ink);color:#fff}
.sc-modal__body{min-height:200px}
.sc-qv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.sc-qv__img{background:var(--paper);min-height:360px}
.sc-qv__img img{width:100%;height:100%;object-fit:cover}
.sc-qv__body{padding:clamp(22px,3vw,44px);display:flex;flex-direction:column;gap:10px}
.sc-qv__title{font:400 clamp(28px,3vw,40px)/1.05 var(--serif);letter-spacing:-.02em}
.sc-qv__price{font:500 24px var(--serif)}
.sc-qv__price del{font:400 15px var(--sans);color:var(--mute);margin-right:6px}
.sc-qv__price ins{text-decoration:none}
.sc-qv__desc{color:var(--mute);font-size:15px;margin-bottom:6px}
.sc-qv__act{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.sc-qv .sc-opt{margin-bottom:14px}
.sc-qv .sc-sizes{grid-template-columns:repeat(2,1fr)}
.sc-cmp__scroll{overflow-x:auto;padding:clamp(18px,3vw,36px)}
.sc-cmp__table{width:100%;min-width:640px;border-collapse:collapse;font-size:15px}
.sc-cmp__table th,.sc-cmp__table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.sc-cmp__table tbody th{width:150px;color:var(--mute);font-weight:500;font-size:13px}
.sc-cmp__table thead th{position:relative;vertical-align:bottom}
.sc-cmp__table thead a{display:flex;flex-direction:column;gap:8px;text-decoration:none;font:500 17px/1.2 var(--serif)}
.sc-cmp__table thead img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}
.sc-cmp__rm{position:absolute;right:16px;top:6px;width:30px;height:30px;border-radius:50%;background:var(--bg);border:1px solid var(--ink);display:grid;place-items:center}
.sc-cmpbar{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:55;background:var(--ink);color:#fff;border-radius:999px;padding:10px 12px 10px 24px;display:flex;align-items:center;gap:18px;font-size:14px;box-shadow:0 20px 50px -20px rgba(0,0,0,.6)}
.sc-cmpbar[hidden]{display:none}
.sc-cmpbar .sc-link{color:#fff}
.sc-cmpbar .sc-btn{min-height:42px;padding:0 20px}

/* ---- article ---- */
.sc-article__head{padding-top:clamp(24px,4vw,48px)}
.sc-article__title{font-size:clamp(38px,6.2vw,86px);line-height:.98;letter-spacing:-.04em;max-width:1100px;position:relative;z-index:3;margin-bottom:-.3em}
.sc-article__cover{margin-top:0}
.sc-article__cover img{width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:26px;padding-top:0}
.sc-article__grid{display:grid;grid-template-columns:240px minmax(0,740px);gap:clamp(24px,5vw,80px);padding-top:clamp(36px,5vw,70px);justify-content:center}
.sc-toc{position:sticky;top:calc(var(--hh) + 20px);align-self:start;font-size:14px}
.sc-toc ol{counter-reset:t;display:grid;gap:10px;margin-top:10px}
.sc-toc li{counter-increment:t}
.sc-toc a{text-decoration:none;color:var(--mute);display:flex;gap:10px}
.sc-toc a::before{content:counter(t,decimal-leading-zero);font-style:italic;font-family:var(--serif);color:var(--clay-ink)}
.sc-toc a:hover,.sc-toc a.is-on{color:var(--ink)}
.sc-prose table{width:100%;border-collapse:collapse;font-size:15px;margin:1.4em 0}
.sc-prose th,.sc-prose td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left}
.sc-prose thead th{border-bottom:1.5px solid var(--ink);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}

/* ---- projects ---- */
.sc-projects{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(30px,5vw,64px) clamp(14px,2vw,28px)}
.sc-proj{display:flex;flex-direction:column;gap:18px}
.sc-proj__img{display:block;overflow:hidden;border-radius:22px;background:var(--paper)}
.sc-proj__img img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.sc-proj:hover .sc-proj__img img{transform:scale(1.04)}
.sc-proj__title{font-size:clamp(26px,3vw,42px);line-height:1.04;position:relative}
.sc-proj__title a{text-decoration:none}
.sc-proj__txt p:last-child{color:var(--mute);margin-top:8px;max-width:520px}
.sc-proj--0{grid-column:span 8}.sc-proj--0 .sc-proj__img{aspect-ratio:16/10}
.sc-proj--1{grid-column:span 4;margin-top:clamp(0px,8vw,110px)}.sc-proj--1 .sc-proj__img{aspect-ratio:4/5}
.sc-proj--2{grid-column:span 5}.sc-proj--2 .sc-proj__img{aspect-ratio:4/5}
.sc-proj--3{grid-column:span 7;margin-top:clamp(0px,6vw,80px)}.sc-proj--3 .sc-proj__img{aspect-ratio:16/10}
.sc-proj--4{grid-column:span 12}.sc-proj--4 .sc-proj__img{aspect-ratio:21/9}
.sc-dproj__head{padding-top:clamp(24px,4vw,48px)}
.sc-dproj__title{font-size:clamp(42px,7.4vw,112px);line-height:.92;letter-spacing:-.045em;max-width:1200px;position:relative;z-index:3;margin-bottom:-.28em}
.sc-dproj__cover img{width:100%;aspect-ratio:16/8;object-fit:cover;border-radius:28px}
.sc-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:0;margin:clamp(24px,4vw,44px) 0;border-block:1.5px solid var(--ink)}
.sc-facts div{padding:18px 18px 18px 0}
.sc-facts div+div{border-left:1px solid var(--line);padding-left:18px}
.sc-facts dt{font:600 11px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-bottom:8px}
.sc-facts dd{font:500 20px/1.2 var(--serif)}
.sc-pgal{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(12px,2vw,24px);margin:clamp(36px,5vw,72px) 0}
.sc-pgal__i{border-radius:20px;overflow:hidden;background:var(--paper)}
.sc-pgal__i img{width:100%;height:100%;object-fit:cover}
.sc-pgal__i--0{grid-column:span 7;aspect-ratio:4/3}
.sc-pgal__i--1{grid-column:span 5;aspect-ratio:4/5;margin-top:48px}
.sc-pgal__i--2{grid-column:span 5;aspect-ratio:4/5;margin-top:-48px}
.sc-pgal__i--3{grid-column:span 7;aspect-ratio:4/3}
.sc-quote{margin:clamp(36px,5vw,72px) 0;padding:0}
.sc-quote p{font:italic 300 clamp(28px,3.6vw,46px)/1.15 var(--serif);letter-spacing:-.02em;color:var(--clay-ink)}
.sc-quote cite{display:block;margin-top:16px;font-size:14px;color:var(--mute);font-style:normal}
.sc-prevnext{display:flex;justify-content:space-between;gap:20px;margin-bottom:60px}
.sc-prevnext a{display:flex;align-items:center;gap:14px;text-decoration:none;font:500 20px/1.2 var(--serif);max-width:46%}
.sc-prevnext small{display:block;font:600 11px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-bottom:4px}
.sc-prevnext a:last-child{margin-left:auto;text-align:right}

/* ---- about / stats / split / steps / rooms ---- */
.sc-about__grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center}
.sc-about__h1{font-size:clamp(46px,7.8vw,118px);line-height:.92;letter-spacing:-.045em;display:flex;flex-direction:column;margin:0 -12vw 24px 0;position:relative;z-index:3}
.sc-about__img{border-radius:26px;overflow:hidden;aspect-ratio:4/5;background:var(--paper)}
.sc-about__img img{width:100%;height:100%;object-fit:cover}
.sc-stats{display:grid;grid-template-columns:repeat(4,1fr);border-block:1.5px solid var(--ink)}
.sc-stats div{padding:28px 20px 28px 0}
.sc-stats div+div{padding-left:24px;border-left:1px solid var(--line)}
.sc-stats b{display:block;font:300 clamp(44px,5.4vw,78px)/1 var(--serif);letter-spacing:-.04em;color:var(--cobalt)}
.sc-stats span{font-size:14px;color:var(--mute)}
.sc-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,90px);align-items:center}
.sc-split__img{border-radius:26px;overflow:hidden;aspect-ratio:4/5;background:var(--paper)}
.sc-split__img img{width:100%;height:100%;object-fit:cover}
.sc-split__txt p{margin-top:16px;color:var(--mute);font-size:17px}
.sc-split__txt .sc-link{margin-top:22px}
.sc-values{background:var(--paper)}
.sc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2vw,32px)}
.sc-steps li{border-top:2px solid var(--ink);padding-top:18px}
.sc-steps b{font:italic 300 52px/1 var(--serif);color:var(--clay)}
.sc-steps h3{font:500 22px/1.15 var(--serif);margin:10px 0 8px}
.sc-steps p{color:var(--mute);font-size:15px}
.sc-rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px)}
.sc-roomcard__img{aspect-ratio:4/3;border-radius:18px;overflow:hidden;margin-bottom:14px;background:var(--paper)}
.sc-roomcard__img img{width:100%;height:100%;object-fit:cover}
.sc-roomcard h3{font:500 24px/1.1 var(--serif)}
.sc-roomcard p{color:var(--mute);font-size:15px;margin-top:4px}
.sc-roomcard a{color:var(--cobalt);font-weight:600}

/* ---- contact / forms / services ---- */
.sc-contact{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(18px,3vw,40px);align-items:stretch}
.sc-contact__rooms{display:flex;flex-direction:column;gap:12px}
.sc-croom{display:flex;gap:16px;align-items:center;text-align:left;border:1.5px solid var(--line);border-radius:18px;padding:12px;background:#fff;transition:.25s var(--ease)}
.sc-croom:hover{border-color:var(--ink)}
.sc-croom.is-on{border-color:var(--ink);box-shadow:5px 5px 0 var(--ink)}
.sc-croom__img{width:88px;height:88px;border-radius:12px;overflow:hidden;flex:none;background:var(--paper)}
.sc-croom__img img{width:100%;height:100%;object-fit:cover}
.sc-croom b{display:block;font:500 20px/1.15 var(--serif)}
.sc-croom small{display:block;color:var(--mute);font-size:13px;line-height:1.4;margin-top:2px}
.sc-contact__map{border-radius:22px;overflow:hidden;border:1.5px solid var(--ink);min-height:360px;background:var(--paper)}
.sc-contact__map iframe{width:100%;height:100%;min-height:360px;border:0;filter:grayscale(.4) contrast(1.05)}
.sc-forms__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,3vw,40px)}
.sc-card-form{background:#fff;border:1px solid var(--line);border-radius:26px;padding:clamp(22px,3vw,40px)}
.sc-card-form .sc-h3{margin-bottom:14px}
.sc-card-form--ink{background:var(--ink);color:#fff;border-color:var(--ink)}
.sc-card-form--ink p{color:rgba(255,255,255,.75);margin-bottom:12px}
.sc-card-form--ink input,.sc-card-form--ink select{background:#fff;color:var(--ink)}
.sc-card-form--ink .sc-form__msg.is-ok{color:#8fe3b0}.sc-card-form--ink .sc-form__msg.is-err{color:#ffaba0}
.sc-svc{display:grid;gap:clamp(36px,6vw,90px)}
.sc-svc__item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:center}
.sc-svc__item.is-rev .sc-svc__img{order:2}
.sc-svc__img{border-radius:26px;overflow:hidden;aspect-ratio:4/3;background:var(--paper)}
.sc-svc__img img{width:100%;height:100%;object-fit:cover}
.sc-svc__no{font:italic 300 64px/1 var(--serif);color:var(--clay)}
.sc-svc__txt p{margin-top:12px;color:var(--mute);font-size:17px;max-width:480px}
.sc-svc__txt .sc-svc__price{font-weight:600;color:var(--ink);margin:16px 0}
.sc-404__n{font:italic 300 clamp(120px,24vw,340px)/.8 var(--serif);color:var(--clay);letter-spacing:-.06em}

/* ---- footer ---- */
.sc-footer{background:var(--paper);margin-top:clamp(40px,6vw,80px);border-top:1px solid var(--ink)}
.sc-footer__grid{display:grid;grid-template-columns:1.5fr .7fr .7fr 1.2fr;gap:clamp(24px,4vw,56px);padding-top:clamp(28px,4vw,56px);padding-bottom:clamp(36px,5vw,64px)}
.sc-footer__brand p{margin:14px 0 22px;color:var(--mute);max-width:380px;font-size:15px}
.sc-news label{margin-bottom:6px}
.sc-news__row{display:flex;gap:8px}
.sc-news__row input[type=email]{margin:0;flex:1;min-width:0}
.sc-footer__h{font:600 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:18px}
.sc-footer__col li+li{margin-top:9px}
.sc-footer__col a{text-decoration:none}
.sc-footer__col a:hover{color:var(--clay-ink);text-decoration:underline}
.sc-footer__rooms li{display:flex;flex-direction:column;font-size:14px;margin-bottom:12px}
.sc-footer__rooms span{color:var(--mute)}
.sc-footer__hot{margin-top:6px}
.sc-footer__hot a{font:500 26px var(--serif);text-decoration:none;display:block}
.sc-footer__hot span{font-size:13px;color:var(--mute)}
.sc-footer__legal{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:20px;padding-bottom:28px;position:relative;font-size:13px;color:var(--mute)}
.sc-footer__legal a{text-decoration:none}

/* ---- WooCommerce: giỏ hàng, thanh toán, tài khoản, đánh giá ---- */
.sc-woo{max-width:calc(1180px + var(--gut)*2)}
.woocommerce-notices-wrapper{margin-bottom:16px}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;padding:16px 20px;border-radius:14px;margin:0 0 18px;background:var(--paper);border-left:4px solid var(--cobalt);display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:15px}
.woocommerce-error{border-color:#c0392b;background:#fbeceb;display:block}
.woocommerce-message .button{order:2}
.sc-woo .button,.woocommerce .button,.woocommerce button.button,.woocommerce a.button,#place_order,.woocommerce-Button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border-radius:999px;background:var(--ink);color:#fff;font:600 15px/1 var(--sans);border:0;text-decoration:none;cursor:pointer;transition:.25s}
.sc-woo .button:hover,.woocommerce .button:hover,#place_order:hover{background:var(--cobalt);color:#fff}
#place_order{width:100%;min-height:58px;background:var(--clay-d);font-size:16px}
#place_order:hover{background:var(--ink)}
table.shop_table{width:100%;border-collapse:collapse;font-size:15px}
table.shop_table th,table.shop_table td{padding:16px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
table.shop_table thead th{font:600 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);border-bottom:1.5px solid var(--ink)}
table.shop_table .product-thumbnail img{width:84px;height:84px;object-fit:cover;border-radius:12px}
table.shop_table .product-name a{font:500 19px var(--serif);text-decoration:none}
table.shop_table dl.variation{margin:6px 0 0;font-size:13px;color:var(--mute)}
table.shop_table dl.variation dt,table.shop_table dl.variation dd{display:inline;margin:0}
table.shop_table dl.variation dd p{display:inline}
table.shop_table dl.variation dt{font-weight:600}
table.shop_table a.remove{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--ink);text-decoration:none;font-size:18px;line-height:1}
table.shop_table a.remove:hover{background:var(--ink);color:#fff}
table.shop_table .quantity input{width:70px;margin:0;min-height:44px;text-align:center}
.cart-collaterals{display:flex;justify-content:flex-end;margin-top:30px}
.cart_totals{width:min(100%,460px);background:var(--paper);border-radius:22px;padding:24px 26px}
.cart_totals h2{font:400 28px var(--serif);margin-bottom:10px}
.wc-proceed-to-checkout .checkout-button{width:100%;min-height:58px;background:var(--clay-d);font-size:16px}
.coupon{display:flex;gap:10px;align-items:center}
.coupon input{width:200px;margin:0}
.actions .button{background:transparent;border:1.5px solid var(--ink);color:var(--ink)}
.woocommerce-checkout .col2-set{display:grid;gap:0}
form.checkout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);gap:clamp(24px,4vw,64px);align-items:start}
form.checkout h3,.woocommerce-billing-fields h3,#order_review_heading{font:400 28px var(--serif);margin-bottom:16px}
.woocommerce-billing-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-row{margin:0;display:block}
.form-row-wide{grid-column:1/-1}
.form-row .required{color:#c0392b;text-decoration:none}
#order_review{background:var(--paper);border-radius:22px;padding:24px 26px;position:sticky;top:calc(var(--hh) + 16px)}
#customer_details{grid-column:1;grid-row:1/span 2}
#order_review_heading{grid-column:2;grid-row:1;margin:0}
#order_review{grid-column:2;grid-row:2}
.woocommerce-checkout-payment ul{margin:18px 0;padding:0}
.woocommerce-checkout-payment li{background:#fff;border:1.5px solid var(--ink);border-radius:14px;padding:14px 16px}
.woocommerce-checkout-payment .payment_box{font-size:14px;color:var(--mute);margin-top:6px}
.woocommerce-checkout-payment input[type=radio]{width:auto;min-height:0;margin:0 8px 0 0}
.woocommerce-checkout-payment label{display:inline}
.woocommerce-privacy-policy-text{font-size:13px;color:var(--mute);margin-bottom:14px}
.woocommerce-order-details,.woocommerce-customer-details,.woocommerce-order-overview{margin-top:24px}
.woocommerce-order-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;background:var(--paper);padding:20px;border-radius:16px;font-size:14px}
.woocommerce-order-overview li strong{display:block;font-size:17px}
.woocommerce-MyAccount-navigation ul{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.woocommerce-MyAccount-navigation a{display:inline-block;padding:9px 16px;border:1.5px solid var(--ink);border-radius:999px;text-decoration:none;font-weight:500;font-size:14px}
.woocommerce-MyAccount-navigation .is-active a{background:var(--ink);color:#fff}
.u-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.woocommerce form.login,.woocommerce form.register{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px}
.woocommerce-cart-form{overflow-x:auto}
/* sao & đánh giá */
.star-rating{position:relative;display:inline-block;overflow:hidden;width:5.4em;height:1.1em;line-height:1.1;font-size:15px;letter-spacing:.1em;white-space:nowrap}
.star-rating::before{content:"☆☆☆☆☆";color:var(--clay);position:absolute;left:0;top:0}
.star-rating span{position:absolute;left:0;top:0;overflow:hidden;padding-top:1.5em;height:0;width:100%}
.star-rating span::before{content:"★★★★★";color:var(--clay);position:absolute;left:0;top:0;padding-top:0;height:1.1em}
#reviews .woocommerce-Reviews-title{font:400 26px var(--serif);margin-bottom:16px}
#reviews ol.commentlist{display:grid;gap:18px;margin-bottom:26px;padding:0}
#reviews li.review{list-style:none}
#reviews .comment_container{display:grid;grid-template-columns:56px 1fr;gap:14px;background:var(--paper);border-radius:16px;padding:16px}
#reviews .comment_container img.avatar{border-radius:50%;width:56px;height:56px}
#reviews .meta{font-size:14px;color:var(--mute);margin:4px 0}
#reviews .meta strong{color:var(--ink)}
#reviews .description p{font-size:16px}
#review_form #respond{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px}
#review_form .comment-reply-title{font:400 24px var(--serif);display:block;margin-bottom:12px}
#review_form .comment-form-rating select{width:auto}
p.stars{margin:6px 0 14px}
p.stars a{position:relative;display:inline-block;width:1.2em;height:1.2em;text-indent:-999em;overflow:hidden;margin-right:2px}
p.stars a::before{content:"☆";position:absolute;left:0;top:0;text-indent:0;color:var(--clay);font-size:26px;line-height:1.1}
p.stars.selected a.active::before,p.stars.selected a:not(.active)::before,p.stars:hover a::before{content:"★"}
p.stars.selected a.active~a::before{content:"☆"}
p.stars:hover a:hover~a::before{content:"☆"}

/* ---- responsive ---- */
@media (max-width:1180px){
  .sc-grid,.sc-posts,.sc-posts--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sc-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sc-size__grid{grid-template-columns:1fr 1fr}
  .sc-size__rec{grid-column:1/-1}
  .sc-footer__grid{grid-template-columns:1fr 1fr}
  .sc-mat__grid{grid-template-columns:1fr 1fr}
  .sc-mat__tabs{grid-column:1/-1;flex-direction:row;gap:20px;overflow-x:auto}
  .sc-mat__tabs button{flex:none;border:0}
}
@media (max-width:1100px){
  :root{--hh:66px}
  .sc-burger{display:inline-grid;place-items:center;width:44px;height:44px;margin-left:-10px}
  .sc-header__in{gap:8px}
  .sc-logo{margin-right:auto;font-size:26px}
  .sc-nav{position:fixed;inset:0;top:var(--hh);background:var(--bg);padding:24px var(--gut) 40px;overflow-y:auto;transform:translateX(-100%);transition:transform .4s var(--ease);margin:0;z-index:59;display:flex;flex-direction:column}
  .sc-nav.is-open{transform:none}
  .sc-nav__list{flex-direction:column;align-items:stretch;gap:0}
  .sc-nav__list>li{border-bottom:1px solid var(--line)}
  .sc-nav__list>li>a{font:400 34px/1.1 var(--serif);padding:18px 0;letter-spacing:-.02em}
  .sc-nav__list>li>a::after{display:none}
  .sc-nav__list .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:transparent;padding:0 0 14px 4px;min-width:0}
  .sc-nav__list .sub-menu a{font-size:17px;padding:7px 0}
  .sc-nav__foot{display:flex;flex-direction:column;gap:4px;margin-top:28px;font-size:14px;color:var(--mute)}
  .sc-nav__foot a{font:500 28px var(--serif);text-decoration:none}
  body.sc-nav-open{overflow:hidden}
}
@media (max-width:980px){
  .sc-announce__in a{display:none}
  .sc-announce__in{justify-content:center;text-align:center}
  .sc-hero__grid{grid-template-columns:1fr;min-height:0}
  .sc-hero__title{margin-right:0;font-size:clamp(56px,16vw,120px)}
  .sc-hero__art{justify-self:center;margin-top:-6vw;width:min(96%,560px)}
  .sc-hero__img{width:108%}
  .sc-space{top:calc(var(--hh) + 8px + var(--i)*14px)}
  .sc-space__in{grid-template-columns:1fr;grid-template-rows:auto 1fr;min-height:0}
  .sc-space__img{order:-1;aspect-ratio:16/9}
  .sc-space__name{margin-right:0;font-size:clamp(44px,12vw,80px)}
  .sc-space__txt{padding:22px;gap:8px}
  .sc-space__no{display:none}
  .sc-room__grid,.sc-home-faq__grid,.sc-contact,.sc-forms__grid,.sc-split,.sc-svc__item,.sc-about__grid,.sc-cathead__grid,.sc-pdp__grid,.sc-look__grid,.sc-qv{grid-template-columns:1fr}
  .sc-svc__item.is-rev .sc-svc__img{order:0}
  .sc-about__h1,.sc-cathead__h1{margin-right:0}
  .sc-cathead__img{display:none}
  .sc-about__img{aspect-ratio:16/10;margin-top:12px}
  .sc-pledge__grid{grid-template-columns:1fr}
  .sc-pledge__n{font-size:clamp(88px,26vw,140px)}
  .sc-rev__grid{grid-template-columns:1fr 1fr}
  .sc-rcard,.sc-rcard:nth-child(n){grid-column:auto;margin-top:0}
  .sc-look__side{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .sc-shop__grid{grid-template-columns:1fr}
  .sc-filter{position:fixed;left:0;top:0;bottom:0;width:min(88vw,380px);max-height:none;background:var(--bg);z-index:80;padding:20px;transform:translateX(-102%);transition:transform .35s var(--ease);box-shadow:20px 0 60px rgba(0,0,0,.25)}
  .sc-filter.is-open{transform:none}
  .sc-filter [data-sc-filter-close]{display:inline-grid}
  .sc-toolbar__f{display:inline-flex}
  .sc-gal{position:static}
  .sc-article__grid{grid-template-columns:1fr}
  .sc-toc{display:none}
  .sc-steps,.sc-rooms{grid-template-columns:1fr 1fr}
  .sc-stats{grid-template-columns:1fr 1fr}
  .sc-stats div:nth-child(3){border-left:0;padding-left:0}
  .sc-projects{grid-template-columns:1fr}
  .sc-proj,.sc-proj--0,.sc-proj--1,.sc-proj--2,.sc-proj--3,.sc-proj--4{grid-column:auto;margin-top:0}
  .sc-proj .sc-proj__img{aspect-ratio:4/3!important}
  .sc-post--lead .sc-post{grid-template-columns:1fr}
  form.checkout{grid-template-columns:1fr}
  #order_review_heading,#order_review,#customer_details{grid-column:auto;grid-row:auto}
  #order_review{position:static}
  .sc-pc__tools{opacity:1;transform:none;position:static;aspect-ratio:auto;padding:8px 0 0;order:3}
  .sc-pc{display:flex}
  .sc-pc__tools{order:2}
}
@media (hover:none){
  .sc-pc__tools{opacity:1;transform:none}
}
@media (max-width:720px){
  .sc-wrap{--gut:18px}
  .sc-grid,.sc-grid--4,.sc-posts,.sc-posts--3{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}
  .sc-pc__title{font-size:17px}
  .sc-pc__qv,.sc-pc__cmp span{padding:7px 10px;font-size:11.5px}
  .sc-pc__qv{display:none}
  .sc-posts,.sc-posts--3{grid-template-columns:1fr}
  .sc-size__grid{grid-template-columns:1fr}
  .sc-mat__grid{grid-template-columns:1fr}
  .sc-form__row{grid-template-columns:1fr}
  .sc-rev__grid,.sc-steps,.sc-rooms,.sc-look__side{grid-template-columns:1fr}
  .sc-footer__grid{grid-template-columns:1fr}
  .sc-specs{grid-template-columns:1fr}
  .sc-pgal__i--0,.sc-pgal__i--1,.sc-pgal__i--2,.sc-pgal__i--3{grid-column:span 12;margin-top:0}
  .sc-car .sc-pc{width:68vw}
  .sc-hero__tag{left:0;bottom:2%}
  .sc-hero__proof{flex-wrap:wrap}
  .sc-cmpbar{width:calc(100vw - 24px);justify-content:space-between;padding-left:16px;gap:8px}
  .sc-cmpbar span{font-size:12px}
  .sc-buy__row{flex-direction:column}
  .sc-qty{align-self:flex-start}
  .sc-prevnext a{max-width:48%;font-size:16px}
  .sc-announce{font-size:12px}
  .woocommerce-billing-fields__field-wrapper,.woocommerce-additional-fields__field-wrapper,.u-columns{grid-template-columns:1fr}
  .sc-hot__card{width:190px}
  .sc-look__cap{font-size:12.5px}
  table.shop_table_responsive tr{display:block;margin-bottom:14px;border:1px solid var(--line);border-radius:14px;padding:6px 12px}
  table.shop_table_responsive td{display:flex;justify-content:space-between;align-items:center;border:0;padding:8px 0}
  table.shop_table_responsive td::before{content:attr(data-title);font-weight:600;font-size:12px;color:var(--mute);margin-right:12px}
  table.shop_table_responsive thead{display:none}
  table.shop_table_responsive .product-thumbnail,.cart_item .product-remove{justify-content:flex-start}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .sc-marquee__track{animation:none}
  .sc-hero__img{transform:none!important}
}
