:root{
  --ink:#15120f;
  --ink-2:#1e1915;
  --ink-3:#2b241e;
  --on-ink:#efe6d6;
  --on-ink-2:#b8ab96;
  --gold:#cfae68;
  --stone:#d8c9ae;
  --stone-2:#c7b593;
  --paper:#ece3d4;
  --paper-2:#f6f0e6;
  --on-stone:#1b1612;
  --on-stone-2:#3b3127;
  --bronze:#5e4520;
  --glow:rgba(255,246,226,.82);
  --glow-0:rgba(255,246,226,0);
  --shade:rgba(58,40,20,.22);
  --shade-0:rgba(58,40,20,0);
  --slab:rgba(70,50,28,.045);
  --slab-0:rgba(70,50,28,0);
  --serif:"Didot","Bodoni 72","Times New Roman",serif;
  --sans:system-ui,-apple-system,"Apple SD Gothic Neo",sans-serif;
  --gut:clamp(20px,6vw,96px);
  --max:1248px;
  --r1:12px;
  --r2:24px;
  --pill:999px;
  --bar-h:72px;
}
[data-theme="dark"]{
  --stone:#2a231c;
  --stone-2:#211b16;
  --paper:#1d1814;
  --paper-2:#28211b;
  --on-stone:#efe6d6;
  --on-stone-2:#bcae97;
  --bronze:#d3b36f;
  --glow:rgba(255,226,170,.16);
  --glow-0:rgba(255,226,170,0);
  --shade:rgba(0,0,0,.35);
  --shade-0:rgba(0,0,0,0);
  --slab:rgba(0,0,0,.18);
  --slab-0:rgba(0,0,0,0);
}

*{box-sizing:border-box;margin:0}
html{font-size:16px;scroll-padding-top:88px;scroll-padding-bottom:96px;scroll-behavior:smooth}
body{font-family:var(--sans);font-size:16px;line-height:1.6;color:var(--on-stone);background:var(--stone);word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased}
a{color:inherit}
button{font:inherit;color:inherit;background:none;padding:0;border:0;cursor:pointer}
:focus-visible{outline:3px solid currentColor;outline-offset:3px;border-radius:4px}
.sg-in{max-width:var(--max);margin-left:auto;margin-right:auto}

.sg-skip{position:absolute;left:16px;top:-80px;z-index:50;display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border-radius:var(--pill);background:var(--on-ink);color:var(--ink);font-weight:700;text-decoration:none}
.sg-skip:focus{top:12px}

.sg-kick{font-size:16px;line-height:1.4;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--on-stone-2);margin-bottom:16px}
.sg-h2{font-size:clamp(34px,2rem + 1.8vw,56px);line-height:1.15;font-weight:800;letter-spacing:-.02em}
.sg-body{font-size:18px;line-height:1.7;color:var(--on-stone-2);max-width:34em}
.sg-body+.sg-body{margin-top:16px}

.sg-btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 32px;border-radius:var(--pill);background:var(--on-stone);color:var(--stone);font-size:17px;font-weight:700;text-decoration:none}
.sg-link{display:inline-flex;align-items:center;min-height:44px;font-size:17px;font-weight:600;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.sg-act{display:flex;align-items:center;gap:12px 28px;flex-wrap:wrap}

.sg-bar{position:sticky;top:0;z-index:20;background:var(--ink);color:var(--on-ink);padding:0 var(--gut)}
.sg-bar-row{display:flex;align-items:center;gap:24px;min-height:var(--bar-h)}
.sg-bar-mark{display:inline-flex;align-items:center;min-height:44px;margin-right:auto;font-family:var(--serif);font-size:22px;letter-spacing:.32em;color:var(--gold);text-decoration:none}
.sg-nav{display:flex;gap:4px}
.sg-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 10px;color:var(--on-ink-2);text-decoration:none;font-size:16px}
.sg-nav a:hover{color:var(--on-ink)}
.sg-lang{display:flex;gap:2px;padding:4px;border-radius:var(--pill);background:var(--ink-2)}
.sg-lang a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 10px;border-radius:var(--pill);font-size:14px;font-weight:600;color:var(--on-ink-2);text-decoration:none}
.sg-lang a[aria-current]{background:var(--ink-3);color:var(--on-ink)}
.sg-lang-m{display:none;position:relative}
.sg-lang-m summary{list-style:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:52px;padding:0 12px;border-radius:var(--pill);background:var(--ink-2);font-size:14px;font-weight:700;cursor:pointer}
.sg-lang-m summary::-webkit-details-marker{display:none}
.sg-lang-pop{position:absolute;right:0;top:52px;display:grid;min-width:160px;padding:8px;border-radius:var(--r1);background:var(--ink-3);box-shadow:0 16px 40px rgba(0,0,0,.4)}
.sg-lang-pop a{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:8px;text-decoration:none}
.sg-lang-pop a[aria-current]{background:var(--ink-2)}
.sg-theme{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--pill);background:var(--ink-2);color:var(--on-ink-2)}
.sg-bar-tel{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:var(--pill);background:var(--on-ink);color:var(--ink);font-weight:700;text-decoration:none}
.sg-bar-icon{display:none;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--pill);background:var(--on-ink);color:var(--ink)}

.sg-wall{position:relative;display:grid;grid-template-rows:1fr auto;min-height:clamp(640px,calc(100svh - var(--bar-h)),920px);padding:0 var(--gut);color:var(--on-stone);background-color:var(--stone);background-image:radial-gradient(ellipse 72% 62% at 50% 0%,var(--glow),var(--glow-0)),linear-gradient(to bottom,var(--shade-0),var(--shade)),linear-gradient(to bottom,var(--slab),var(--slab-0)),linear-gradient(to right,var(--slab),var(--slab-0));background-size:100% 100%,100% 100%,100% 312px,480px 100%}
.sg-wall-body{width:100%;align-self:end;padding:56px 0 64px}
.sg-wall .sg-kick{color:var(--on-stone-2);margin-bottom:24px}
.sg-name{font-weight:400}
.sg-mark{display:block;font-family:var(--serif);font-size:clamp(44px,15vw,224px);line-height:.95;letter-spacing:.18em;color:var(--bronze);font-weight:400;text-shadow:0 14px 28px var(--shade)}
.sg-ko{display:block;margin-top:clamp(20px,2.4vw,36px);font-family:var(--sans);font-size:clamp(36px,2rem + 2.6vw,64px);line-height:1.15;font-weight:800;letter-spacing:-.02em;color:var(--on-stone)}
.sg-wall-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;align-items:end;margin-top:32px}
.sg-lead{grid-column:1/7;font-size:19px;line-height:1.65;color:var(--on-stone-2);font-weight:500}
.sg-wall-row .sg-act{grid-column:7/-1;justify-content:flex-end}
.sg-facts-band{margin:0 calc(-1 * var(--gut));padding:32px var(--gut) 36px;background:var(--stone-2)}
.sg-facts{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr 1.15fr 1.5fr;column-gap:24px}
.sg-facts li{display:flex;flex-direction:column;gap:8px}
.sg-fact-big{white-space:nowrap;font-size:clamp(28px,1.2rem + 1.9vw,46px);line-height:1.05;font-weight:300;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--on-stone)}
.sg-fact-lab{font-size:16px;color:var(--on-stone-2)}

.sg-ph{position:relative;overflow:hidden;background-color:#2a2119}
.sg-ph-lounge{background-image:radial-gradient(ellipse 60% 45% at 32% 18%,rgba(255,212,150,.55),rgba(255,212,150,0)),linear-gradient(170deg,#4a3a2b,#120e0b)}
.sg-ph-stone{background-color:#cdbc9d;background-image:radial-gradient(ellipse 80% 70% at 70% 0%,rgba(255,247,228,.7),rgba(255,247,228,0)),linear-gradient(to bottom,rgba(80,58,32,.10),rgba(80,58,32,0));background-size:100% 100%,100% 96px}
.sg-ph-letter{background-image:linear-gradient(to right,rgba(207,174,104,.38),rgba(207,174,104,0)),linear-gradient(180deg,#3a2e23,#16110d)}

.sg-room{padding:clamp(80px,9vw,144px) var(--gut);background:var(--ink);color:var(--on-ink)}
.sg-room .sg-kick{color:var(--on-ink-2)}
.sg-room .sg-body{color:var(--on-ink-2)}
.sg-room-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.sg-room-a{grid-column:1/8;grid-row:1/3;aspect-ratio:4/5;border-radius:var(--r2)}
.sg-room-txt{grid-column:9/-1;grid-row:1;align-self:end;padding-bottom:48px}
.sg-room-txt .sg-h2{margin-bottom:28px}
.sg-room-b{grid-column:9/-1;grid-row:2;aspect-ratio:4/3;border-radius:var(--r2)}
.sg-room-c{grid-column:3/-1;grid-row:3;aspect-ratio:21/8;margin-top:24px;border-radius:var(--r2)}

.sg-price{padding:clamp(80px,9vw,144px) var(--gut);background-color:var(--stone-2);background-image:linear-gradient(to bottom,var(--slab),var(--slab-0));background-size:100% 232px}
.sg-price-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px;align-items:end}
.sg-price-head{grid-column:1/-1;margin-bottom:24px}
.sg-price-big{grid-column:1/-1;white-space:nowrap;font-size:clamp(52px,12.4vw,184px);line-height:1;font-weight:800;letter-spacing:-.04em;color:var(--on-stone)}
.sg-price-link{grid-column:1/-1;margin-top:28px}

.sg-steps{padding:clamp(80px,9vw,144px) var(--gut) clamp(96px,11vw,176px);background:var(--paper);counter-reset:st}
.sg-steps-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.sg-steps-head{grid-column:1/6}
.sg-steps-head .sg-h2{margin-bottom:16px}
.sg-stair{grid-column:1/-1;list-style:none;padding:0;margin-top:56px;display:grid;grid-template-columns:1fr 1fr 1.1fr 1.25fr;column-gap:32px;align-items:start}
.sg-stair li{counter-increment:st;display:flex;flex-direction:column}
.sg-stair li:nth-child(2){margin-top:56px}
.sg-stair li:nth-child(3){margin-top:112px}
.sg-stair li:nth-child(4){margin-top:168px}
.sg-stair li::before{content:counter(st,decimal-leading-zero) / "";display:block;font-family:var(--serif);line-height:.9;color:var(--on-stone-2);margin-bottom:20px;font-variant-numeric:lining-nums}
.sg-stair li:nth-child(1)::before{font-size:64px}
.sg-stair li:nth-child(2)::before{font-size:88px}
.sg-stair li:nth-child(3)::before{font-size:112px}
.sg-stair li:nth-child(4)::before{font-size:144px}
.sg-step-t{font-size:22px;line-height:1.3;font-weight:800;margin-bottom:8px}
.sg-step-d{font-size:17px;line-height:1.6;color:var(--on-stone-2)}

.sg-way{padding:clamp(80px,9vw,144px) var(--gut);background:var(--ink-2);color:var(--on-ink)}
.sg-way .sg-kick{color:var(--on-ink-2)}
.sg-way-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.sg-way-head{grid-column:1/-1;display:flex;justify-content:space-between;align-items:end;gap:16px 24px;flex-wrap:wrap;margin-bottom:40px}
.sg-map{grid-column:1/9;position:relative;aspect-ratio:16/11;border-radius:var(--r2);background-color:#2a241e;background-image:linear-gradient(to right,rgba(239,230,214,.12),rgba(239,230,214,.12)),linear-gradient(to bottom,rgba(239,230,214,.08),rgba(239,230,214,.08)),linear-gradient(160deg,#2f2821,#1a1612);background-size:22px 100%,100% 14px,100% 100%;background-position:56% 0,0 38%,0 0;background-repeat:no-repeat}
.sg-map-pin{position:absolute;left:calc(56% - 7px);top:calc(38% - 46px);width:36px;height:36px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);background:var(--gold)}
.sg-route-col{grid-column:9/-1;align-self:center;margin-left:8px}
.sg-way-addr{font-size:clamp(24px,1rem + 1vw,30px);line-height:1.35;font-weight:800;margin-bottom:28px}
.sg-route{list-style:none;padding:0;counter-reset:rt}
.sg-route li{counter-increment:rt;display:grid;grid-template-columns:44px 1fr;column-gap:16px;padding:12px 0}
.sg-route li::before{content:counter(rt) / "";grid-row:1/3;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--ink-3);color:var(--gold);font-weight:700}
.sg-route-t{font-size:19px;font-weight:700;line-height:1.3;padding-top:2px}
.sg-route-d{font-size:16px;line-height:1.55;color:var(--on-ink-2)}

.sg-faq{padding:clamp(80px,9vw,144px) var(--gut);background:var(--stone)}
.sg-faq-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.sg-faq-head{grid-column:1/5}
.sg-faq-list{grid-column:5/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;align-items:start}
.sg-faq-list details{background:var(--paper-2);border-radius:var(--r1);padding:0 24px}
.sg-faq-list summary{list-style:none;cursor:pointer;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:19px;font-weight:700;line-height:1.35}
.sg-faq-list summary::-webkit-details-marker{display:none}
.sg-faq-list summary::after{content:"+" / "";font-size:26px;font-weight:300;color:var(--on-stone-2)}
.sg-faq-list details[open] summary::after{content:"\2212" / ""}
.sg-faq-list details p{padding:0 0 22px;font-size:17px;line-height:1.65;color:var(--on-stone-2)}

.sg-call{position:relative;padding:clamp(96px,10vw,160px) var(--gut);color:var(--on-ink);background-color:var(--ink);background-image:radial-gradient(ellipse 55% 70% at 85% 10%,rgba(207,174,104,.20),rgba(207,174,104,0)),linear-gradient(200deg,#2b231b,#0f0c0a)}
.sg-call .sg-kick{color:var(--on-ink-2)}
.sg-call-num{font-family:var(--serif);font-size:clamp(40px,9.4vw,140px);line-height:1;font-weight:400;letter-spacing:.02em;color:var(--gold);white-space:nowrap;font-variant-numeric:lining-nums tabular-nums}
.sg-call-note{display:flex;flex-wrap:wrap;gap:4px 24px;margin:20px 0 36px;font-size:16px;color:var(--on-ink-2)}
.sg-call-note span{min-width:0;overflow-wrap:anywhere;letter-spacing:-.02em}
.sg-call .sg-btn,.sg-dock .sg-btn{background:var(--on-ink);color:var(--ink)}

.sg-foot{padding:72px var(--gut) 56px;background:#0e0c0a;color:var(--on-ink-2)}
.sg-foot-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.sg-foot-mark{grid-column:1/5;font-family:var(--serif);font-size:24px;letter-spacing:.32em;color:var(--gold)}
.sg-foot-rows{grid-column:5/-1;display:grid;gap:8px}
.sg-foot-rows{min-width:0}
.sg-foot-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 24px;font-size:16px}
.sg-foot-row span{min-width:0;overflow-wrap:anywhere}
.sg-foot-row a,.sg-foot-theme{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
.sg-age{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:var(--pill);background:var(--ink-3);color:var(--on-ink);font-weight:700}
.sg-foot-theme{text-decoration:underline;text-underline-offset:5px}

.sg-dock{display:none}

@media (max-width:1199px){
  .sg-nav{display:none}
}
@media (max-width:1023px){
  .sg-room-a{grid-column:1/7}
  .sg-room-txt,.sg-room-b{grid-column:7/-1}
  .sg-faq-head{grid-column:1/-1;margin-bottom:32px}
  .sg-faq-list{grid-column:1/-1}
  .sg-stair{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}
  .sg-stair li:nth-child(3){margin-top:0}
  .sg-stair li:nth-child(4){margin-top:56px}
}
@media (max-width:767px){
  :root{--bar-h:60px}
  .sg-bar-row{gap:8px}
  .sg-bar-mark{font-size:18px;letter-spacing:.26em}
  .sg-lang,.sg-bar-tel{display:none}
  .sg-lang-m{display:block}
  .sg-bar-icon{display:inline-flex}
  .sg-wall{min-height:clamp(560px,calc(100svh - var(--bar-h) - 80px),760px)}
  .sg-wall-body{padding:36px 0 32px}
  .sg-wall .sg-kick{margin-bottom:16px}
  .sg-wall-row{display:block;margin-top:20px}
  .sg-lead{font-size:17px}
  .sg-wall-row .sg-act{display:none}
  .sg-facts-band{padding:24px var(--gut) 28px}
  .sg-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}
  .sg-room-grid,.sg-price-grid,.sg-steps-grid,.sg-way-grid,.sg-faq-grid,.sg-foot-grid{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:16px}
  .sg-room-a{grid-column:1/-1;grid-row:auto;aspect-ratio:4/5}
  .sg-room-txt{grid-column:1/-1;grid-row:auto;padding:36px 0 0}
  .sg-room-b{grid-column:1/4;grid-row:auto;margin-top:32px}
  .sg-room-c{grid-column:2/-1;grid-row:auto;aspect-ratio:4/3;margin-top:16px}
  .sg-steps-head{grid-column:1/-1}
  .sg-stair{grid-template-columns:1fr;row-gap:36px;margin-top:40px}
  .sg-stair li{display:grid;grid-template-columns:76px 1fr;column-gap:16px;margin-top:0}
  .sg-stair li:nth-child(n){margin-top:0}
  .sg-stair li:nth-child(2){padding-left:12px}
  .sg-stair li:nth-child(3){padding-left:24px}
  .sg-stair li:nth-child(4){padding-left:36px}
  .sg-stair li::before{grid-row:1/3;margin:0}
  .sg-stair li:nth-child(1)::before{font-size:48px}
  .sg-stair li:nth-child(2)::before{font-size:56px}
  .sg-stair li:nth-child(3)::before{font-size:64px}
  .sg-stair li:nth-child(4)::before{font-size:72px}
  .sg-map{grid-column:1/-1;aspect-ratio:4/3}
  .sg-route-col{grid-column:1/-1;margin:32px 0 0}
  .sg-faq-list details{padding:0 20px}
  .sg-faq-list summary{font-size:18px;min-height:64px}
  .sg-faq-list{grid-template-columns:1fr}
  .sg-call-num{font-size:clamp(34px,11vw,72px)}
  .sg-call .sg-act{display:none}
  .sg-call-note{margin-bottom:0}
  .sg-foot-mark,.sg-foot-rows{grid-column:1/-1}
  .sg-foot-mark{margin-bottom:24px}
  .sg-foot{padding-bottom:128px}
  .sg-dock{display:flex;align-items:center;position:fixed;left:0;right:0;bottom:0;z-index:30;gap:16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--ink);color:var(--on-ink);box-shadow:0 -8px 24px rgba(0,0,0,.25)}
  .sg-dock-tel{flex:1 1 auto;min-height:52px;padding:0 16px}
  .sg-dock-sms{flex:0 0 auto;min-height:52px;padding:0 20px}
  .sg-dock-tg{flex:0 0 auto;padding:0 4px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
