*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"DM Sans",sans-serif;background:var(--paper);color:#172638}.wrap{max-width:1220px;margin:auto;padding:0 64px}
nav{height:76px;position:fixed;inset:0 0 auto;z-index:100;background:rgba(15,45,82,.97);border-bottom:1px solid rgba(255,255,255,.08)}.navin{height:100%;display:flex;align-items:center;justify-content:space-between}.logo{font-family:"Newsreader",serif;color:#fff;text-decoration:none;font-size:1.28rem;letter-spacing:.18em;text-transform:uppercase}.navlinks{display:flex;align-items:center;list-style:none}.navlinks a{color:rgba(255,255,255,.72);text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:.7rem;font-weight:500}.navlinks a:hover,.navlinks a.active{color:#fff}.contact{border:1px solid rgba(155,197,186,.7);padding:10px 18px!important;color:#fff!important}
header{background:var(--navy);padding:160px 0 102px;position:relative;overflow:hidden}header:before{content:"";position:absolute;width:680px;height:680px;border-radius:50%;right:-250px;top:15px;border:1px solid rgba(155,197,186,.12)}.headin{position:relative;z-index:2}.eyebrow{color:var(--sage-light);text-transform:uppercase;font-weight:600;margin-bottom:26px}h1{max-width:860px;font-family:"Newsreader",serif;font-size:clamp(3rem,5vw,4.8rem);line-height:1.05;font-weight:400;color:#fff;letter-spacing:-.025em}h1 em{color:var(--sage-light);font-weight:400}.intro{margin-top:34px;max-width:660px;color:rgba(255,255,255,.63);font-size:1rem;line-height:1.88;font-weight:300}

/* FOUR-AREA NAVIGATOR */
.focus-nav{padding:64px 0 76px;background:#fff;border-bottom:1px solid var(--line)}
.focus-nav .label{margin-bottom:26px}
.focus-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.focus-card{background:#fff;padding:32px 34px;text-decoration:none;display:block;transition:background .2s}
.focus-card:hover{background:rgba(74,124,111,.05)}
.focus-num{display:block;font-family:"Newsreader",serif;font-size:2.1rem;line-height:1;color:transparent;-webkit-text-stroke:1px var(--steel);margin-bottom:12px}
.focus-card:hover .focus-num{-webkit-text-stroke:1px var(--sage)}
.focus-name{display:block;font-family:"Newsreader",serif;font-size:1.2rem;color:var(--navy);font-weight:500;margin-bottom:10px}
.focus-desc{font-size:.86rem;line-height:1.7;color:#5B646D;font-weight:300;margin-bottom:16px}
.focus-arrow{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--sage);font-weight:600}
@media(max-width:620px){.focus-grid{grid-template-columns:1fr}.focus-card{padding:26px 4px}}
.overview{padding:92px 0}.twocol{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px}.label{color:var(--sage);text-transform:uppercase;font-weight:600;padding-top:7px}.overview h2,.service h2{font-family:"Newsreader",serif;font-weight:400;color:var(--navy);letter-spacing:-.02em}.overview h2{font-size:clamp(2.15rem,3.4vw,3.35rem);line-height:1.14}.copy{font-size:.96rem;line-height:1.9;color:var(--text);font-weight:300}.copy p+p{margin-top:18px}
.service{padding:100px 0;border-top:1px solid var(--line);scroll-margin-top:76px}.service.alt{background:var(--warm)}.grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:90px;align-items:start}.meta{position:sticky;top:116px}.num{font-family:"Newsreader",serif;font-size:4rem;line-height:1;color:transparent;-webkit-text-stroke:1px var(--steel);margin-bottom:20px}.alt .num{-webkit-text-stroke:1px var(--sage)}.name{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--steel);font-weight:600;max-width:240px;line-height:1.6}.alt .name{color:var(--sage)}.service h2{font-size:clamp(2rem,3vw,2.8rem);line-height:1.16;margin-bottom:28px;max-width:700px}.body{max-width:760px}
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:38px}.card{background:rgba(255,255,255,.7);padding:25px 28px}.card.wide{grid-column:1/-1}.card h3{font-family:"Newsreader",serif;font-size:1.16rem;font-weight:500;color:var(--navy);margin-bottom:7px}.card p{font-size:.84rem;line-height:1.72;color:#626B73;font-weight:300}
.list{margin-top:38px;border-top:1px solid var(--line)}.item{display:grid;grid-template-columns:190px 1fr;gap:34px;padding:28px 0;border-bottom:1px solid var(--line)}.item h3{font-family:"Newsreader",serif;font-size:1.18rem;line-height:1.3;color:var(--navy);font-weight:500}.item p{font-size:.88rem;line-height:1.8;color:#5B646D;font-weight:300}.callout{margin-top:38px;padding:34px 36px;background:#fff;border:1px solid rgba(15,45,82,.1);box-shadow:0 14px 36px rgba(15,45,82,.06)}.callout h3{font-family:"Newsreader",serif;font-size:1.45rem;color:var(--navy);font-weight:500;margin-bottom:13px}.callout p{font-size:.9rem;line-height:1.82;color:#59636C;font-weight:300}
.principle{padding:105px 0;background:linear-gradient(135deg,var(--navy),var(--navy-2))}.principle blockquote{max-width:900px;font-family:"Newsreader",serif;font-size:clamp(2rem,3.5vw,3.4rem);line-height:1.18;color:#fff;font-weight:400}.principle blockquote em{color:var(--sage-light)}.principle p{margin-top:28px;max-width:680px;color:rgba(255,255,255,.58);line-height:1.85;font-size:.92rem}
.cta{padding:92px 0;background:linear-gradient(135deg,var(--sage-dark),var(--sage))}.ctain{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{font-family:"Newsreader",serif;font-size:clamp(2rem,3.3vw,3.2rem);color:#fff;font-weight:400}.cta p{margin-top:10px;color:rgba(255,255,255,.75);font-size:.9rem}.cta a{flex:none;border:1px solid rgba(255,255,255,.75);padding:15px 27px;color:#fff;text-decoration:none;text-transform:uppercase;font-size:.7rem;letter-spacing:.13em;font-weight:600}
footer{background:#091F39;padding:64px 0 30px;color:#fff}.footgrid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.4fr;gap:55px}.flogo{font-family:"Newsreader",serif;font-size:1.2rem;letter-spacing:.16em;text-transform:uppercase}.ftag{color:var(--sage-light);font-size:.75rem;margin-top:9px}.fnote{font-size:.76rem;line-height:1.75;color:rgba(255,255,255,.4);margin-top:18px}.fcol h4{color:var(--sage-light);font-size:.62rem;text-transform:uppercase;letter-spacing:.18em;margin-bottom:17px}.fcol ul{list-style:none}.fcol li{margin-bottom:9px}.fcol a,.fcol p{font-size:.77rem;color:rgba(255,255,255,.46);text-decoration:none;line-height:1.8}.bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:45px;padding-top:25px;display:flex;justify-content:space-between}.bottom p{font-size:.66rem;color:rgba(255,255,255,.25)}
@media(max-width:900px){.wrap{padding:0 30px}.twocol,.grid{grid-template-columns:1fr;gap:30px}.meta{position:static}.item{grid-template-columns:1fr;gap:8px}.footgrid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.wrap{padding:0 24px}header{padding:135px 0 78px}.cards{grid-template-columns:1fr}.ctain{display:block}.cta a{display:inline-block;margin-top:28px}.footgrid{grid-template-columns:1fr}.bottom{display:block}}

/* CROSS-PAGE ALIGNMENT: HOME DESIGN SYSTEM */

body{font-family:"DM Sans",sans-serif;background:var(--paper);color:#172638}
nav{height:76px;background:rgba(15,45,82,.97);border-bottom:1px solid rgba(255,255,255,.08)}
.logo{font-family:"Newsreader",serif;font-size:1.28rem;letter-spacing:.18em}
.navlinks{letter-spacing:.13em}
.contact{border:1px solid rgba(155,197,186,.7);background:transparent;padding:10px 18px!important}
header{background:var(--navy)}
.service.alt{background:var(--warm)}
.principle{background:linear-gradient(135deg,var(--navy),var(--navy-2))}
.cta{background:linear-gradient(135deg,var(--sage-dark),var(--sage))}
footer{background:#091F39}