:root{
 --char:#22252A;--char-2:#2E3238;--off:#F5F4F0;--white:#FFFFFF;
 --amber:#E8A33D;--jade:#2E7D6B;--garnet:#A63446;--glacier:#5C8DAF;
 --ink:#22252A;--soft:#565B63;--line:#DEDBD2;
 --f-head:"Sora",system-ui,sans-serif;--f-body:"Karla",system-ui,sans-serif;
 --wrap:1180px;--pad:clamp(16px,3.2vw,40px);
 color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--white);color:var(--ink);font:400 1.0625rem/1.62 var(--f-body);overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2,h3{font-family:var(--f-head);line-height:1.12;margin:0;letter-spacing:-.02em}
p{margin:0}
.fc-wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.fc-skip{position:absolute;left:-999px;top:8px;background:var(--amber);color:var(--char);padding:8px 14px;font-weight:700;z-index:60}
.fc-skip:focus{left:8px}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px}

/* hexagon shapes */
.fc-pip,.fc-card,.fc-card__in,.fc-cell,.fc-cell__in,.fc-ph,.fc-ph__in,.fc-sat,.fc-note__hex,.fc-mini,.fc-kicker__pips i,.fc-phead__art--deco span,.fc-legend li::before{
 --hx:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}

/* header */
.fc-bar{background:var(--char);color:var(--off);position:relative;z-index:40}
.fc-bar__in{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad);height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.fc-logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--off)}
.fc-mark{width:38px;height:38px;flex:none}
.fc-logo__word{font:800 1.28rem/1 var(--f-head);letter-spacing:-.03em;display:flex;flex-direction:column;gap:4px}
.fc-logo__word small{font:700 .66rem/1 var(--f-body);letter-spacing:.2em;text-transform:uppercase;color:var(--amber)}
.fc-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px}
.fc-nav a{display:flex;align-items:center;gap:9px;padding:10px 12px;text-decoration:none;font-weight:500;font-size:.98rem;color:var(--off);border-radius:2px}
.fc-pip{width:12px;height:14px;flex:none;clip-path:var(--hx);background:var(--c,var(--amber));position:relative;display:inline-block}
.fc-pip::after{content:"";position:absolute;inset:2px;clip-path:var(--hx);background:var(--char);transition:opacity .18s ease}
.fc-nav a:hover .fc-pip::after,.fc-nav a[aria-current] .fc-pip::after,.fc-pip--on::after{opacity:0}
.fc-nav a[aria-current]{background:var(--char-2)}
.fc-nav a:hover{color:#fff}
.fc-burger{display:none;align-items:center;gap:10px;background:none;border:1.5px solid #5A5F67;color:var(--off);font:700 .9rem var(--f-body);padding:9px 14px;border-radius:3px;cursor:pointer}
.fc-burger__lines{display:grid;gap:4px;width:18px}
.fc-burger__lines i{display:block;height:2px;background:var(--amber);transition:transform .2s ease,opacity .2s ease}
.fc-burger[aria-expanded="true"] .fc-burger__lines i:nth-child(1){transform:translateY(6px) rotate(45deg)}
.fc-burger[aria-expanded="true"] .fc-burger__lines i:nth-child(2){opacity:0}
.fc-burger[aria-expanded="true"] .fc-burger__lines i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* shared bits */
.fc-kicker,.fc-label{display:flex;align-items:center;gap:12px;font:700 .78rem/1.2 var(--f-body);letter-spacing:.16em;text-transform:uppercase;color:var(--soft);margin-bottom:22px}
.fc-kicker__pips{display:flex;gap:3px}
.fc-kicker__pips i{width:13px;height:15px;clip-path:var(--hx);background:var(--c)}
.fc-btn{display:inline-flex;align-items:center;gap:10px;background:var(--char);color:var(--off);text-decoration:none;font-weight:700;padding:15px 26px;border-radius:3px;transition:background .18s ease}
.fc-btn::after{content:"";width:10px;height:12px;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:var(--amber)}
.fc-btn:hover{background:#000}
.fc-crumb{font-size:.9rem;color:var(--soft);margin-bottom:18px}
.fc-crumb a{color:var(--soft)}

/* home hero */
.fc-hero{padding:clamp(48px,7vw,96px) 0 clamp(56px,7vw,100px)}
.fc-hero__grid{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(32px,5vw,72px);align-items:center}
.fc-hero h1{font-size:clamp(2.6rem,6.2vw,5rem);font-weight:800;letter-spacing:-.045em;line-height:1.02}
.fc-hero h1 span{display:block;color:var(--garnet)}
.fc-stand{font-size:clamp(1.1rem,1.6vw,1.3rem);color:var(--soft);max-width:34ch;margin:24px 0 34px}
.fc-hero__art{position:relative;justify-self:center;width:min(430px,100%);padding:6% 9%}
.fc-ph{position:relative;clip-path:var(--hx);background:var(--char);aspect-ratio:866/1000;padding:10px;width:100%;box-sizing:border-box}
.fc-ph__img{position:absolute;inset:10px;clip-path:var(--hx);display:block;width:calc(100% - 20px);height:calc(100% - 20px);object-fit:cover;object-position:center}
.fc-sat{position:absolute;clip-path:var(--hx);aspect-ratio:866/1000}
.fc-sat--a{width:24%;background:var(--amber);left:0;top:2%}
.fc-sat--b{width:17%;background:var(--jade);right:2%;top:36%}
.fc-sat--c{width:21%;background:var(--glacier);left:6%;bottom:0}
.fc-sat--a::after{content:"";position:absolute;inset:24%;clip-path:var(--hx);background:var(--white)}

/* home facets */
.fc-facets{background:var(--off);padding:clamp(56px,7vw,104px) 0;border-top:6px solid var(--char)}
.fc-facets__grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(28px,4vw,64px);align-items:center}
.fc-facets h2{font-size:clamp(2rem,3.6vw,2.9rem);font-weight:800;margin-bottom:18px}
.fc-facets__copy>p{color:var(--soft);max-width:38ch}
.fc-legend{list-style:none;margin:30px 0 0;padding:0;border-top:1.5px solid var(--char)}
.fc-legend li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-weight:700}
.fc-legend li::before{content:"";width:14px;height:16px;clip-path:var(--hx);background:var(--c);flex:none}
.fc-legend a{text-decoration:none;flex:1}
.fc-legend a:hover{text-decoration:underline;text-underline-offset:3px}
.fc-legend span{font:700 .95rem var(--f-head);color:var(--soft)}

.fc-comb-wrap{container-type:inline-size;width:100%}
.fc-comb{--cw:40cqw;--ch:calc(var(--cw)*1.2);--t:.25;position:relative;width:calc(var(--cw)*2.5);height:calc(var(--ch)*(2 - var(--t)));margin:0 auto}
.fc-cell{position:absolute;width:var(--cw);height:var(--ch);clip-path:var(--hx);background:var(--char);text-decoration:none;color:var(--on)}
.fc-cell--1{left:0;top:0}
.fc-cell--2{left:var(--cw);top:0}
.fc-cell--3{left:calc(var(--cw)*.5);top:calc(var(--ch)*(1 - var(--t)))}
.fc-cell--4{left:calc(var(--cw)*1.5);top:calc(var(--ch)*(1 - var(--t)))}
.fc-cell__in{position:absolute;inset:4px;clip-path:var(--hx);background:var(--c);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 13%;gap:.5em;transition:inset .2s ease}
.fc-cell__count{font:700 max(11px,1.6cqw)/1 var(--f-body);letter-spacing:.16em;text-transform:uppercase;opacity:.85}
.fc-cell__name{font:800 max(17px,3.7cqw)/1.05 var(--f-head);letter-spacing:-.03em}
.fc-cell__desc{font:500 max(13px,1.95cqw)/1.35 var(--f-body);max-width:23ch}
.fc-cell__go{font:700 max(12px,1.5cqw)/1 var(--f-body);margin-top:.35em;padding-bottom:3px;border-bottom:2px solid currentColor}
.fc-cell:hover .fc-cell__in{inset:11px}
.fc-cell:focus-visible{outline:none}
.fc-cell:focus-visible .fc-cell__in{inset:14px}
.fc-cell:focus-visible .fc-cell__name{text-decoration:underline;text-underline-offset:4px}

/* how */
.fc-how{padding:clamp(56px,6vw,88px) 0}
.fc-how__h{font-size:clamp(1.6rem,2.6vw,2.1rem);font-weight:800;margin-bottom:34px}
.fc-notes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,3vw,40px)}
.fc-note{border-top:4px solid var(--c);padding-top:22px}
.fc-note__hex{display:grid;place-items:center;width:52px;height:60px;clip-path:var(--hx);background:var(--c);color:var(--char);font:800 1rem var(--f-head);margin-bottom:16px}
.fc-note:nth-child(2) .fc-note__hex,.fc-note:nth-child(3) .fc-note__hex{color:#fff}
.fc-note h3{font-size:1.28rem;font-weight:700;margin-bottom:8px}
.fc-note p{color:var(--soft)}

/* category head */
.fc-phead{padding:clamp(40px,6vw,80px) 0 clamp(36px,5vw,64px)}
.fc-phead__grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(28px,5vw,72px);align-items:center}
.fc-phead h1{font-size:clamp(2.6rem,6vw,4.6rem);font-weight:800;letter-spacing:-.045em}
.fc-phead__line{font:600 clamp(1.15rem,1.8vw,1.4rem)/1.35 var(--f-head);letter-spacing:-.01em;margin:16px 0 18px;max-width:30ch}
.fc-phead__intro{color:var(--soft);max-width:58ch}
.fc-phead__count{display:flex;align-items:center;gap:10px;margin-top:24px;font-weight:700;font-size:.92rem;letter-spacing:.08em;text-transform:uppercase}
.fc-phead__art{justify-self:center;width:min(330px,100%)}
.fc-phead__art--deco{position:relative;aspect-ratio:1/1.05}
.fc-phead__art--deco span{position:absolute;width:52%;aspect-ratio:866/1000;clip-path:var(--hx)}
.fc-phead__art--deco span:nth-child(1){left:0;top:0;background:var(--c)}
.fc-phead__art--deco span:nth-child(2){left:calc(52% + 6px);top:0;background:var(--char)}
.fc-phead__art--deco span:nth-child(3){left:calc(26% + 3px);top:calc(42.9% + 5px);background:var(--c)}
.fc-phead__art--deco span:nth-child(3)::after{content:"";position:absolute;inset:22%;clip-path:var(--hx);background:var(--white)}

/* hotel honeycomb */
.fc-plate{background:var(--off);padding:clamp(48px,6vw,88px) 0;border-top:6px solid var(--c)}
.fc-grid{--tip:48px;--g:14px;display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:1fr;row-gap:var(--g);column-gap:0}
.fc-card{grid-row:var(--i) / span 2;grid-column:1;margin-right:calc(var(--tip) / -2 + var(--g) / 2);
 --fx:polygon(var(--tip) 0,calc(100% - var(--tip)) 0,100% 50%,calc(100% - var(--tip)) 100%,var(--tip) 100%,0 50%);
 clip-path:var(--fx);background:var(--c);padding:4px;position:relative}
.fc-card:nth-child(even){grid-column:2;margin-right:0;margin-left:calc(var(--tip) / -2 + var(--g) / 2)}
.fc-card__in{clip-path:var(--fx);background:var(--white);height:100%;display:flex;flex-direction:column}
.fc-card__head{background:var(--c);color:var(--on);padding:30px calc(var(--tip) + 14px) 40px;clip-path:polygon(0 0,100% 0,100% calc(100% - 16px),50% 100%,0 calc(100% - 16px));display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:baseline}
.fc-card__num{grid-row:span 2;font:800 .95rem/1 var(--f-head);border:2px solid currentColor;padding:6px 7px;align-self:start}
.fc-card__head h2{font-size:clamp(1.5rem,2.4vw,1.95rem);font-weight:800;letter-spacing:-.03em}
.fc-card__place{grid-column:2;margin-top:6px;font-weight:700;font-size:.95rem;opacity:.92}
.fc-card__body{padding:22px calc(var(--tip) + 14px) 44px;display:flex;flex-direction:column;gap:14px;flex:1}
.fc-card__body p{font-size:1.02rem}
.fc-tags{list-style:none;margin:auto 0 0;padding:10px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.fc-tags li{border:1.5px solid var(--c);padding:4px 10px;font-size:.84rem;font-weight:700;line-height:1.3;border-radius:2px}
.fc-card--note{background:var(--char);align-self:start}
.fc-grid--2{grid-auto-rows:auto}
.fc-grid--2 .fc-card--note{margin-top:22%}
@media (max-width:760px){.fc-grid--2 .fc-card--note{margin-top:0}}
.fc-card--note .fc-card__in{background:var(--off)}
.fc-card--note .fc-card__head{background:var(--char);color:var(--off)}

/* other facets */
.fc-others{padding:clamp(44px,5vw,72px) 0}
.fc-others__grid{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap}
.fc-others h2{font-size:clamp(1.4rem,2.2vw,1.8rem);font-weight:800}
.fc-minis{display:flex;gap:6px}
.fc-mini{width:150px;aspect-ratio:866/1000;clip-path:var(--hx);background:var(--c);color:var(--on);text-decoration:none;display:grid;place-items:center;text-align:center;padding:0 10%;transition:transform .18s ease}
.fc-mini:nth-child(2){margin-top:64px}
.fc-mini span{font:800 1rem/1.1 var(--f-head);display:grid;gap:6px}
.fc-mini small{font:700 .7rem var(--f-body);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.fc-mini:hover{transform:translateY(-4px)}
.fc-mini:focus-visible{outline:none;box-shadow:inset 0 0 0 6px var(--char)}

/* text pages */
.fc-text{padding:clamp(40px,6vw,80px) 0 clamp(56px,7vw,100px)}
.fc-text__wrap{max-width:760px}
.fc-text h1{font-size:clamp(2.3rem,5vw,3.6rem);font-weight:800;letter-spacing:-.04em;margin-bottom:26px}
.fc-text h2{font-size:1.35rem;font-weight:700;margin:38px 0 10px}
.fc-text p{margin:0 0 14px}
.fc-text__lead{font-size:1.22rem;line-height:1.55}
.fc-text a{color:var(--jade);font-weight:700;text-underline-offset:3px}
.fc-text__date{color:var(--soft);font-size:.92rem;margin-top:30px!important}
.fc-text__list{padding-left:20px}

/* footer */
.fc-foot{background:var(--char);color:var(--off);margin-top:0}
.fc-foot__in{max-width:var(--wrap);margin:0 auto;padding:64px var(--pad) 48px;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:40px}
.fc-foot__brand p{color:#C9C7C0;margin-top:18px;max-width:40ch;font-size:.98rem}
.fc-foot__col h2{font:700 .78rem var(--f-body);letter-spacing:.18em;text-transform:uppercase;color:var(--amber);margin-bottom:14px}
.fc-foot__col ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.fc-foot__col a{text-decoration:none;color:var(--off)}
.fc-foot__col a:hover{text-decoration:underline;text-underline-offset:3px}
.fc-foot__close{border-top:1px solid #3A3E45}
.fc-foot__close p{max-width:var(--wrap);margin:0 auto;padding:20px var(--pad);font-size:.88rem;color:#B5B3AC}

/* responsive */
@media (max-width:980px){
 .fc-nav a{padding:10px 8px;font-size:.92rem;gap:7px}
 .fc-facets__grid{grid-template-columns:1fr}
 .fc-facets__copy{max-width:640px}
 .fc-comb-wrap{max-width:720px;margin:0 auto}
}
@media (max-width:880px){
 .fc-burger{display:inline-flex}
 .js .fc-nav{position:absolute;left:0;right:0;top:72px;background:var(--char);border-top:1px solid #3A3E45;padding:8px var(--pad) 20px;display:none}
 .js .fc-nav.is-open{display:block}
 .fc-nav ul{flex-direction:column;gap:2px}
 .fc-nav a{padding:14px 6px;font-size:1.05rem}
 .no-js .fc-bar__in{height:auto;flex-wrap:wrap;padding-top:14px;padding-bottom:10px}
 .no-js .fc-burger{display:none}
 .no-js .fc-nav ul{flex-direction:row;flex-wrap:wrap}
 .fc-hero__grid,.fc-phead__grid{grid-template-columns:1fr}
 .fc-hero__art{width:min(360px,92%)}
 .fc-phead__art{width:min(260px,70%);justify-self:start}
 .fc-notes{grid-template-columns:1fr}
 .fc-foot__in{grid-template-columns:1fr 1fr}
 .fc-foot__brand{grid-column:1 / -1}
}
@media (max-width:760px){
 .fc-grid{--tip:26px;grid-template-columns:1fr;grid-auto-rows:auto;row-gap:12px}
 .fc-card,.fc-card:nth-child(even){grid-row:auto;grid-column:1;margin:0}
 .fc-card__head{padding:26px calc(var(--tip) + 12px) 34px}
 .fc-card__body{padding:18px calc(var(--tip) + 12px) 40px}
 .fc-minis{width:100%;justify-content:flex-start}
 .fc-mini{width:calc((100% - 12px) / 3);max-width:150px}
 .fc-mini:nth-child(2){margin-top:34px}
 .fc-mini span{font-size:.86rem}
 .fc-mini small{font-size:.62rem;letter-spacing:.06em}
}
@media (max-width:640px){
 .fc-comb{--cw:50cqw;--ch:calc(var(--cw)*1.34);--t:.2;width:calc(var(--cw)*2);height:calc(var(--ch)*(3 - 2*var(--t)))}
 .fc-cell{--hx:polygon(50% 0,100% 20%,100% 80%,50% 100%,0 80%,0 20%)}
 .fc-cell__in{--hx:polygon(50% 0,100% 20%,100% 80%,50% 100%,0 80%,0 20%);padding:0 9%;inset:3px}
 .fc-cell--1{left:calc(var(--cw)*.5);top:0}
 .fc-cell--2{left:0;top:calc(var(--ch)*(1 - var(--t)))}
 .fc-cell--3{left:var(--cw);top:calc(var(--ch)*(1 - var(--t)))}
 .fc-cell--4{left:calc(var(--cw)*.5);top:calc(var(--ch)*(2 - 2*var(--t)))}
 .fc-cell__name{font-size:max(17px,6.6cqw)}
 .fc-cell__count{font-size:max(10.5px,3cqw)}
 .fc-cell__desc{font-size:max(12px,3.55cqw)}
 .fc-cell__go{display:none}
 .fc-cell:hover .fc-cell__in{inset:8px}
 .fc-foot__in{grid-template-columns:1fr;gap:30px}
 body{font-size:1rem}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
