:root{--paper:#f4f0e4;--ink:#18382f;--accent:#c54d36;--button-text:#fff;--display:'Space Grotesk',sans-serif;--mono:'DM Sans',sans-serif;--input-bg:#fffdf7;--field-radius:0;--button-radius:0}
html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font:400 16px/1.55 'DM Sans',sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);line-height:1.04;letter-spacing:-.055em}a{text-decoration-thickness:1px;text-underline-offset:4px}.topbar{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:1px solid rgba(24,56,47,.25)}.topbar .brand{font:700 .95rem/1.1 var(--display);letter-spacing:-.04em}.topbar nav{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2.75rem)}.topbar nav a{display:inline-flex;align-items:center;min-height:44px;font-size:.82rem;font-weight:700;text-decoration:none}.topbar nav a:last-child{border-bottom:2px solid var(--accent)}.topbar nav a:hover{text-decoration:underline}.kicker{display:block;font:700 .72rem/1.4 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase}.hero{min-height:min(820px,100dvh);display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);align-items:center;gap:clamp(2rem,5vw,6rem);padding-block:clamp(3.5rem,7vw,7.5rem)}.hero-copy{max-width:630px}.hero h1{font-size:clamp(4rem,6.8vw,8.25rem);margin:2rem 0;max-width:11ch}.hero h1 em{font:400 .83em/1.08 Fraunces,serif;letter-spacing:-.065em;color:var(--accent)}.hero-copy p{max-width:44ch;font-size:clamp(1.05rem,1.4vw,1.28rem);line-height:1.6}.primary-link{min-height:52px;display:inline-flex;align-items:center;gap:3rem;padding:0 1.2rem;margin-top:1.4rem;background:var(--ink);color:#fff;text-decoration:none;font-weight:700;transition:transform .25s ease,background-color .25s ease}.primary-link span{font-size:1.45rem;font-weight:400}.primary-link:hover{transform:translateY(-3px);background:#285c4b}.plan-wrap{position:relative;padding:1.1rem;background:#dde6d8;border:1px solid #aac4b2;box-shadow:0 12px 30px rgba(24,56,47,.06),0 2px 5px rgba(24,56,47,.04)}.plan-top{display:block;padding:.15rem .15rem 1rem;font:700 .68rem/1 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase}.room-plan{position:relative;aspect-ratio:1.13;background:#f9f8ee;border:12px solid #295b4b;overflow:hidden}.room-plan::before{content:'';position:absolute;left:7%;top:10%;width:29%;height:28%;border:3px solid #315848;background:linear-gradient(135deg,#cce0d4 0 47%,#a2c4b2 47% 53%,#d6e7da 53%);box-shadow:13px 13px 0 #e9bd88}.room-plan::after{content:'';position:absolute;right:8%;bottom:10%;width:28%;height:27%;border:4px solid #bc6c4b;background:#da9773;transform:rotate(-7deg);box-shadow:10px 8px 0 rgba(24,56,47,.12)}.room-window{position:absolute;right:18%;top:-12px;width:32%;height:24px;border:4px solid #4b846c;background:#b9d8c5;z-index:1}.room-desk{position:absolute;left:48%;top:27%;width:34%;height:20%;background:#dfba87;border:4px solid #9e754e;transform:rotate(-5deg);z-index:2;box-shadow:9px 12px 0 #b8c6ad}.room-desk i{position:absolute;left:14%;top:15%;width:42%;height:49%;background:#fffdf5;border:2px solid #9e754e;transform:rotate(8deg)}.room-chair{position:absolute;left:42%;bottom:22%;width:19%;aspect-ratio:1;border:8px solid #3f674f;border-radius:50%;background:#80a77d;z-index:2}.room-door{position:absolute;left:-12px;bottom:7%;width:24px;height:28%;border:3px solid #295b4b;background:#f4f0e4;z-index:2}.plan-point{position:absolute;z-index:5;width:54px;height:54px;padding:0;border:2px solid #fff;border-radius:50%;background:#c54d36;color:#fff;font:700 .92rem/1 var(--display);box-shadow:0 0 0 5px rgba(197,77,54,.22),0 8px 17px rgba(53,47,39,.23);transition:transform .25s ease,background-color .25s ease}.plan-point:hover,.plan-point:focus-visible{transform:scale(1.13)}.plan-point.is-active{background:#18382f;box-shadow:0 0 0 6px rgba(24,56,47,.22),0 8px 17px rgba(53,47,39,.23)}.point-one{left:10%;bottom:22%}.point-two{right:13%;top:27%}.point-three{right:13%;bottom:13%}.plan-caption{display:grid;grid-template-columns:170px 1fr;gap:1rem;align-items:start;padding:1.15rem .2rem .2rem;min-height:74px}.plan-caption span{font:700 .7rem/1.4 'DM Sans',sans-serif;letter-spacing:.08em}.plan-caption p{font:400 1.03rem/1.35 Fraunces,serif;margin:0}.idea{background:#1c4035;color:#f7f3e9;padding:clamp(5rem,10vw,11rem) 0}.idea-grid{display:grid;grid-template-columns:.55fr 1.5fr .8fr;gap:2rem;align-items:start}.idea h2{font:400 clamp(3.4rem,6vw,7.4rem)/.97 Fraunces,serif;letter-spacing:-.055em;max-width:12ch;margin:0}.idea p{font-size:1.08rem;max-width:27ch;line-height:1.6;margin:1rem 0 0}.guide{padding-block:clamp(5rem,10vw,10rem)}.guide-heading{display:grid;grid-template-columns:.5fr 1.5fr;gap:2rem;align-items:start;margin-bottom:4rem}.guide-heading h2{font-size:clamp(3.25rem,5vw,6.5rem);max-width:17ch;margin:0}.guide-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink)}.guide-list article{padding:1.7rem 1.5rem 4rem;border-right:1px solid #b7c7b8;min-height:300px;position:relative}.guide-list article:first-child{padding-left:0}.guide-list article:last-child{border-right:0}.guide-list article>span{font:700 .7rem 'DM Sans',sans-serif}.guide-list h3{font-size:clamp(1.7rem,2.35vw,2.7rem);margin:3.5rem 0 1.25rem}.guide-list p{max-width:24ch;margin:0;color:#4d6559}.casey{background:#dce9df;padding-block:clamp(5rem,8vw,9rem)}.casey-grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1fr);gap:clamp(3rem,8vw,9rem);align-items:center}.casey-photo{max-width:430px;position:relative}.casey-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;filter:saturate(.85);box-shadow:16px 16px 0 #9bb9a8}.casey-photo span{display:block;margin-top:2rem;font:700 .72rem 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase}.casey h2{font:400 clamp(3.3rem,5.2vw,6.2rem)/1 Fraunces,serif;max-width:11ch;margin:1.5rem 0 2rem}.casey p{max-width:51ch;font-size:1.1rem;line-height:1.65}.close{padding-block:clamp(5rem,9vw,10rem);background:#eac3a6}.close-grid{display:grid;grid-template-columns:1fr .85fr;gap:clamp(3rem,7vw,8rem);align-items:center}.close h2{font:400 clamp(3.7rem,6vw,7rem)/1 Fraunces,serif;max-width:11ch;margin:1rem 0 1.5rem}.close p{max-width:39ch}.close .signup-shell{padding:clamp(1.2rem,3vw,2.5rem);background:#f7f3e9;border:1px solid #b18d70;box-shadow:12px 12px 0 rgba(24,56,47,.12)}.signup-form>label:first-child{font:700 .8rem 'DM Sans',sans-serif}.signup-form button{width:100%}.signup-consent{margin-top:.3rem}.site-footer{background:#18382f;color:#fff;border-top:0}.site-footer .brand{font-family:var(--display)}.site-footer nav a{font-weight:700}
@media(max-width:1000px){.hero{grid-template-columns:1fr;min-height:0}.hero-copy{max-width:750px}.plan-wrap{max-width:680px;width:100%;margin-left:auto}.idea-grid{grid-template-columns:1fr 2fr}.idea p{grid-column:2;max-width:55ch;margin-top:0}.guide-list{grid-template-columns:repeat(2,1fr)}.guide-list article:nth-child(2){border-right:0}.guide-list article:nth-child(n+3){border-top:1px solid #b7c7b8}}
@media(max-width:700px){.topbar{min-height:70px}.topbar .brand{max-width:170px}.topbar nav{gap:.7rem}.topbar nav a:not(:last-child){display:none}.hero{padding-block:4rem 5rem;gap:3rem}.hero h1{font-size:clamp(3.6rem,13vw,5.4rem);margin:1.3rem 0}.hero-copy p{font-size:1.04rem}.plan-wrap{padding:.7rem}.room-plan{border-width:7px}.plan-point{width:44px;height:44px}.plan-caption{grid-template-columns:1fr;gap:.35rem;min-height:95px}.idea-grid,.guide-heading,.casey-grid,.close-grid{grid-template-columns:1fr;gap:1.4rem}.idea h2{font-size:clamp(3.5rem,11vw,5.4rem)}.idea p{grid-column:1;margin-top:1rem}.guide{padding-block:5rem}.guide-heading{margin-bottom:2.5rem}.guide-heading h2{font-size:clamp(3.3rem,11vw,5rem)}.guide-list{grid-template-columns:1fr}.guide-list article{border-right:0;border-top:1px solid #b7c7b8;padding:1.3rem 0 2rem;min-height:0}.guide-list article:first-child{border-top:0;padding-left:0}.guide-list h3{margin:1.3rem 0 .7rem}.casey-grid{gap:3rem}.casey-photo{width:min(70%,290px)}.casey h2,.close h2{font-size:clamp(3.4rem,11vw,5.5rem)}.close-grid{gap:2.5rem}}
@media(max-width:360px){.topbar .brand{font-size:.78rem;max-width:155px}.topbar nav a:last-child{font-size:.72rem}.hero h1{font-size:3.35rem}.room-plan{aspect-ratio:1}.plan-caption p{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.plan-point,.primary-link{transition:none}}
.example{padding-top:clamp(4rem,7vw,7rem)}.example figure{position:relative;margin:0 0 clamp(2rem,5vw,5rem) 12%;width:88%}.example picture,.example img{display:block;width:100%}.example img{height:auto;aspect-ratio:3/2;object-fit:cover}.example figcaption{position:absolute;right:0;bottom:0;width:min(390px,60%);padding:1.3rem 1.5rem;background:#dce9df}.example figcaption span,.guide-photo figcaption{font:700 .68rem/1.4 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase}.example figcaption p{font:400 1.3rem/1.2 Fraunces,serif;margin:.6rem 0 0}.guide-photo{display:grid;grid-template-columns:minmax(0,280px) auto;align-items:end;gap:1.5rem;width:min(100%,650px);margin:4rem 0 0 auto}.guide-photo picture,.guide-photo img{display:block;width:100%}.guide-photo img{height:auto;aspect-ratio:3/4;object-fit:cover}.guide-photo figcaption{max-width:220px;padding-bottom:1rem}
@media(max-width:700px){.example{padding-top:3rem}.example figure{width:100%;margin:0 0 2rem}.example figcaption{position:static;width:100%;padding:1rem}.guide-photo{grid-template-columns:1fr;width:100%;margin-top:3rem}.guide-photo picture{width:min(75%,280px)}.guide-photo figcaption{padding-bottom:0}}
/* The floor plan leads the opening on large screens; copy reads from its right margin. */
@media(min-width:1001px){.hero{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(3rem,5vw,6rem)}.hero .plan-wrap{grid-column:1;grid-row:1;width:100%;max-width:none;margin:0}.hero .hero-copy{grid-column:2;grid-row:1;max-width:470px}.hero h1{font-size:clamp(4.3rem,5.5vw,6.4rem)}.hero-copy p{max-width:34ch}}
