#hero{position:relative;display:flex;align-items:flex-end;min-height:calc(100svh - var(--header-h));overflow:hidden;background:var(--c-dark-bg)} #hero .hero__media{position:absolute;inset:0;z-index:0} #hero .hero__img{width:100%;height:100%;object-fit:cover;object-position:70% 18%} #hero .hero__scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(32,38,47,.95) 0%,rgba(32,38,47,.9) 46%,rgba(32,38,47,.62) 64%,rgba(32,38,47,.24) 85%,rgba(32,38,47,.12) 100%)} #hero .hero__inner{position:relative;z-index:2;width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter);padding-block:clamp(2rem,8vh,4rem) clamp(2.25rem,7vh,4rem)} #hero .kicker{color:var(--c-dark-text);margin-bottom:var(--sp-3)} #hero .door-rule{margin-bottom:16px} #hero h1{color:#F7F1E7;font-size:clamp(1.9rem,1.15rem + 3.1vw,4.4rem);line-height:1.08;margin-bottom:var(--sp-4);max-width:20ch} #hero .period{color:var(--c-primary)} #hero .hero__sub{color:#F0E8DC;font-size:1rem;line-height:1.55;max-width:44ch;margin-bottom:var(--sp-5)} #hero .hero__tail{display:none} #hero .hero__actions{display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-3)} #hero .hero__actions .btn{width:100%} #hero .hero__link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;color:#F7F1E7;font-weight:500;font-size:1rem;text-decoration:underline;text-underline-offset:.22em} #hero .hero__link:hover,#hero .hero__link:focus-visible{color:var(--c-accent)} @media (min-width:768px){#hero .hero__tail{display:inline} #hero .hero__sub{font-size:1.0625rem;max-width:52ch} #hero .hero__actions{flex-direction:row;align-items:center;gap:24px} #hero .hero__actions .btn{width:auto}} @media (min-width:1100px){#hero .hero__scrim{background:linear-gradient(95deg,rgba(32,38,47,.95) 0%,rgba(32,38,47,.9) 48%,rgba(32,38,47,.58) 62%,rgba(32,38,47,.2) 80%,rgba(32,38,47,.1) 100%)} #hero .hero__copy{width:58.333%} #hero h1{max-width:13ch} #hero .hero__img{object-position:60% 20%}}

#the-housing-we-provide{padding-block:var(--section-y)} #the-housing-we-provide .housing{display:grid;gap:clamp(2rem,4vw,3rem)} #the-housing-we-provide .housing__rail h2{margin-bottom:var(--sp-4);max-width:16ch} #the-housing-we-provide .rail__link{display:inline-block;min-height:44px;line-height:44px;font-weight:700;color:var(--c-primary)} #the-housing-we-provide .housing-row:first-child{padding-top:0} #the-housing-we-provide .housing-row__rule{margin-bottom:14px} #the-housing-we-provide .housing-row__head{display:flex;align-items:baseline;gap:.9rem;flex-wrap:wrap} #the-housing-we-provide .housing-num{margin:0} #the-housing-we-provide .housing-name{margin:0} #the-housing-we-provide .housing-row p{margin:var(--sp-3) 0 0;max-width:58ch} @media (min-width:768px){#the-housing-we-provide .housing-row__head{display:block} #the-housing-we-provide .housing-num{margin-bottom:var(--sp-2)} #the-housing-we-provide .housing-name{margin-bottom:var(--sp-3)} #the-housing-we-provide .housing-row p{margin-top:0}} @media (min-width:1100px){#the-housing-we-provide .housing{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(3rem,5vw,5rem)} #the-housing-we-provide .housing__rail{grid-column:2;grid-row:1;position:sticky;top:calc(var(--header-h) + 2.5rem);align-self:start} #the-housing-we-provide .housing-list{grid-column:1;grid-row:1}}

#who-lives-here{border-top:1px solid var(--c-rule);padding-block:clamp(2.25rem,1.9rem + 1.4vw,3.25rem)} #who-lives-here .who{display:grid;gap:var(--sp-4)} #who-lives-here .who__label .kicker{margin:0} #who-lives-here .who__list{list-style:none;margin:0;padding:0} #who-lives-here .who__list li{position:relative;padding-left:1.6rem;font-weight:500;font-size:1.125rem;line-height:1.45;color:var(--c-text)} #who-lives-here .who__list li + li{margin-top:16px} #who-lives-here .who__list li::before{content:"—";position:absolute;left:0;top:0;color:var(--c-primary)} @media (min-width:768px){#who-lives-here .who__list li{font-size:1.25rem}} @media (min-width:900px){#who-lives-here .who{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,4vw,4rem);align-items:start}}

#about-koko-house-of-gems{position:relative;overflow:hidden;background:var(--c-bg)} #about-koko-house-of-gems .about__grid{display:grid;grid-template-columns:1fr} #about-koko-house-of-gems .about__copy{padding-inline:var(--gutter);padding-block:var(--section-y)} #about-koko-house-of-gems .about__copy h2{max-width:18ch} #about-koko-house-of-gems .about__copy p{max-width:62ch;line-height:1.7} #about-koko-house-of-gems .about__field{background:var(--c-primary);color:#FFFDF9;padding:28px;min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--sp-5)} #about-koko-house-of-gems .about__mark{width:96px;height:96px;flex:0 0 auto} #about-koko-house-of-gems .about__pull{font-family:var(--ff-display);font-weight:600;font-variation-settings:"SOFT" 50,"WONK" 0;font-size:1.5rem;line-height:1.25;margin:0;color:#FFFDF9;max-width:18ch} @media (min-width:1100px){#about-koko-house-of-gems .about__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:stretch} #about-koko-house-of-gems .about__copy{padding-left:max(var(--gutter),calc((100vw - var(--maxw)) / 2 + var(--gutter)));padding-right:clamp(2rem,4vw,4rem)} #about-koko-house-of-gems .about__field{min-height:0;padding:clamp(2.5rem,4vw,4rem);padding-right:max(var(--gutter),calc((100vw - var(--maxw)) / 2 + var(--gutter)))}}

#questions-answered{background:var(--c-surface);padding-block:clamp(3rem,2.4rem + 2vw,4.5rem)} #questions-answered .faq__head{margin-bottom:clamp(1.5rem,3vw,2.5rem)} #questions-answered .faq__head h2{margin-bottom:0} #questions-answered .faq__list{margin:0} #questions-answered .faq__row{display:grid;gap:var(--sp-3);padding-block:var(--sp-5);border-bottom:1px solid var(--c-rule)} #questions-answered .faq__row:first-child{border-top:1px solid var(--c-rule)} #questions-answered .faq__row dt{font-family:var(--ff-display);font-weight:600;font-variation-settings:"SOFT" 50,"WONK" 0;font-size:1.125rem;line-height:1.3;margin:0;color:var(--c-text)} #questions-answered .faq__row dd{margin:0;max-width:58ch} @media (min-width:768px){#questions-answered .faq__row{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(1.5rem,3vw,3rem);align-items:start;padding-block:var(--sp-6)}}

#ask-about-a-room{background:var(--c-dark-bg);color:var(--c-dark-text);padding-block:var(--section-y) clamp(2.5rem,2rem + 2vw,4rem)} #ask-about-a-room .contact__grid{display:grid;gap:clamp(2.5rem,5vw,4rem)} #ask-about-a-room h2{font-size:clamp(1.9rem,1.5rem + 1.4vw,2.2rem);color:var(--c-dark-text);margin-bottom:var(--sp-3)} #ask-about-a-room .period{color:var(--c-primary)} #ask-about-a-room .kicker{color:var(--c-dark-text);opacity:.86} #ask-about-a-room .contact__line{font-size:1.125rem;margin:0 0 var(--sp-6);color:var(--c-dark-text);opacity:.88} #ask-about-a-room .contact__form{max-width:34rem} #ask-about-a-room .field__label{color:var(--c-dark-text);font-size:.9375rem} #ask-about-a-room .field input,#ask-about-a-room .field textarea,#ask-about-a-room .field select{background:transparent;color:var(--c-dark-text);border:0;border-bottom:2px solid rgba(227,216,198,.5);border-radius:0;padding-left:0} #ask-about-a-room .field input::placeholder,#ask-about-a-room .field textarea::placeholder{color:rgba(242,234,220,.6)} #ask-about-a-room .field input:focus,#ask-about-a-room .field textarea:focus,#ask-about-a-room .field select:focus{border-bottom-color:var(--c-primary);outline:none} #ask-about-a-room .field select{appearance:none;-webkit-appearance:none;padding-right:2rem} #ask-about-a-room .field select option{background:var(--c-surface);color:var(--c-text)} #ask-about-a-room .field--select{position:relative} #ask-about-a-room .field--select::after{content:"";position:absolute;right:10px;bottom:20px;width:8px;height:8px;border-right:2px solid var(--c-accent);border-bottom:2px solid var(--c-accent);transform:rotate(45deg);pointer-events:none} #ask-about-a-room .contact__submit{margin-top:var(--sp-2);width:100%} #ask-about-a-room .contact__where-line{font-family:var(--ff-display);font-weight:600;font-size:1.25rem;line-height:1.3;color:var(--c-dark-text);margin:0 0 var(--sp-5);max-width:22ch} #ask-about-a-room .map{display:block;width:100%;height:auto} #ask-about-a-room .map__label{font-family:var(--ff-body);font-weight:500;font-size:12px;fill:#F2EADC} #ask-about-a-room .map__label--home{font-size:13px;font-weight:700;fill:#FFFDF9} #ask-about-a-room .map__note{margin:var(--sp-3) 0 0;font-size:.875rem;color:var(--c-dark-text);opacity:.7} @media (max-width:560px){#ask-about-a-room .map__cluster .map__label{display:none}} @media (min-width:768px){#ask-about-a-room .contact__submit{width:auto;min-width:15rem}} @media (min-width:1100px){#ask-about-a-room .contact__grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(3rem,5vw,5rem);align-items:start}}