@font-face{font-family:Editorial;src:url('/assets/serif.woff2')}@font-face{font-family:LocalSans;src:url('/assets/sans.woff2')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f6f0;color:#183b48;font:17px/1.6 LocalSans,Arial,sans-serif;--ink:#183b48;--accent:#104f77;--paper:#f7f6f0;--line:#c9d1cc}body[data-theme=family]{--accent:#1870b8;--paper:#fff;background:#fff;color:#104f77}body[data-theme=family] h1,body[data-theme=family] h2{font-family:LocalSans,Arial,sans-serif;font-weight:500}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #1870b8}.skip{position:absolute;left:10px;top:-100px;z-index:20;background:#fff;padding:16px}.skip:focus{top:10px}.reviewbar{background:#173e4c;color:#fff;font-size:11px;letter-spacing:.08em;text-align:center;padding:8px 20px}.reviewbar span{margin:0 24px;letter-spacing:0}.reviewbar a{white-space:nowrap}header{display:flex;align-items:center;justify-content:space-between;padding:24px 5vw;gap:30px;background:var(--paper);border-bottom:1px solid var(--line)}.identity{text-decoration:none;display:block;flex:none}.identity img{display:block;width:205px;height:auto}.identity small{font-size:8px;letter-spacing:.12em;display:block;margin-top:9px}nav{display:flex;gap:25px;align-items:center}nav a{text-decoration:none;font-size:14px;white-space:nowrap}nav a:hover,nav a[aria-current]{border-bottom:1px solid var(--accent)}#menu{display:none}.wrap{max-width:1400px;padding:0 5vw;margin:0 auto}section{margin-bottom:100px}h1,h2,h3{font-family:Editorial,Georgia,serif;font-weight:500;line-height:1.05;letter-spacing:-.025em;margin:0 0 24px}h1{font-size:clamp(48px,5.5vw,83px)}h2{font-size:clamp(37px,3.5vw,54px)}h3{font-size:31px}em{font-weight:normal;color:#597a75}p{margin:0 0 24px;max-width:64ch}.eyebrow,.number{font:12px/1.5 LocalSans,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}.eyebrow{margin-bottom:24px}.lede{font-size:20px;max-width:47ch}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:5vw;padding-top:55px;align-items:center}.hero h1{font-size:clamp(48px,5vw,76px)}.hero-photo{position:relative;min-height:620px;margin:0;overflow:hidden;background:#173e4c}.hero-photo>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:44%;opacity:.8}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,#173e4ccc)}figcaption{font-size:11px;line-height:1.5;margin:12px 0;color:#526870}.hero-photo figcaption{position:absolute;bottom:15px;left:26px;right:26px;color:white;z-index:2;font-size:10px}.photo-note{position:absolute;bottom:110px;left:30px;z-index:2;color:#fff;font:38px/1.1 Editorial,Georgia,serif}.actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin:30px 0}.button,button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--accent);color:#fff;padding:15px 22px;border:1px solid var(--accent);text-decoration:none;font-size:14px;cursor:pointer;min-height:48px}.button:hover,button:hover{background:#183b48}.textlink{display:inline-block;text-decoration:none;border-bottom:1px solid #899e99;padding:12px 0;margin:8px 20px 8px 0;font-size:14px}.micro{font-size:11px;color:#526870;margin-top:20px}.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.paths{border-top:1px solid var(--line);padding-top:45px}.paths article{padding:20px 25px 20px 0}.number{color:#597a75;display:block;margin-bottom:26px}.paths h2{font-size:39px}.explore-section{background:#e8eeea;padding:75px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:35px}.section-head p{max-width:42ch}.place-card{display:block;position:relative;text-decoration:none;background:var(--paper);border-top:2px solid #8fa99d;padding:32px;min-height:245px;transition:transform .2s}.place-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #173e4c0d}.place-card h3{margin-top:25px}.place-card p{font-size:12px;margin-bottom:0}.place-card .eyebrow{font-size:10px}.arrow{position:absolute;right:25px;bottom:24px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.empty,.factbox{background:#e8eeea;padding:40px;border:1px solid var(--line)}.empty h2{font-size:38px}.status{display:block;font-size:11px;letter-spacing:.12em;margin-bottom:25px}.partner{background:#eee5d0;padding-top:60px;padding-bottom:60px;display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:center}.partner>img{width:100%;height:auto;max-width:340px}.intro{padding-top:65px;max-width:1400px}.intro h1{max-width:22ch}.directory .three{gap:18px}.directory{margin-top:-45px}.tabs{display:flex;gap:25px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:30px}.tab{padding:16px 0;text-decoration:none;font-size:15px}.tab.selected{border-bottom:3px solid var(--accent)}.search{margin-bottom:35px;max-width:650px}.search label{display:block;margin-bottom:8px}.search>div{display:flex}.search input{min-width:0;flex:1;padding:14px;border:1px solid #8fa99d;background:#fff;color:#183b48}.notice{padding:24px;background:#eee5d0;max-width:none}.details{padding-left:20px}.details li{margin:14px 0}.factbox dt{font-size:12px;text-transform:uppercase;letter-spacing:.1em}.factbox dd{margin:4px 0 18px}.filterbox{max-width:900px;margin-bottom:45px}fieldset{border:1px solid #9caeaa;padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:22px}fieldset label{display:flex;flex-direction:column;gap:7px}fieldset input,fieldset textarea,fieldset select{padding:12px;width:100%;color:#5f6a6e;background:#e8eeea;border:1px solid #bbc7c3}fieldset:disabled,button:disabled{cursor:not-allowed}fieldset button:disabled{background:#6a7c80;border-color:#6a7c80}.step{border-top:1px solid var(--line);padding-top:30px}.step h2{font-size:38px}.project{width:100%;height:430px;object-fit:cover}.partner-logo{width:260px;height:auto;margin-bottom:40px}figure{margin:0}footer{background:#173e4c;color:#eef3ee;padding:65px 5vw;display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;margin-top:100px}footer p{font-size:13px;max-width:52ch}footer a{display:block;margin-bottom:20px}footer h2{font-size:42px}footer .eyebrow{font-size:12px}main>.button{margin:0 5vw}body[data-theme=family] .explore-section{background:#e8f4f0}body[data-theme=family] .partner{background:#e8eff5}@media(max-width:1100px){nav{gap:14px}nav a{font-size:12px}.identity img{width:170px}.hero-photo{min-height:570px}}@media(max-width:850px){header{flex-wrap:wrap;padding:20px 5vw}#menu{display:block;background:transparent;color:var(--ink);padding:8px 16px}nav{display:none;width:100%;flex-direction:column;align-items:start;padding:20px 0}nav.open{display:flex}nav a{font-size:18px;padding:8px}.hero{grid-template-columns:1fr;padding-top:40px;gap:30px}.hero h1{font-size:58px}.hero-photo{min-height:460px}.three{grid-template-columns:1fr}.paths article{border-bottom:1px solid var(--line)}.section-head,.split,.partner{display:grid;grid-template-columns:1fr;gap:30px}.section-head{align-items:start}.split{gap:35px}.partner>img{max-width:230px}.reviewbar span{display:none}.reviewbar a{margin-left:20px}.intro{padding-top:40px}section{margin-bottom:65px}.directory{margin-top:-25px}.place-card{min-height:190px}.place-card h3{margin-top:12px}footer{grid-template-columns:1fr;gap:20px}fieldset{grid-template-columns:1fr}.empty,.factbox{padding:28px}.hero-photo figcaption{font-size:11px}.project{height:300px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.place-card[hidden]{display:none!important}

/* Phase 1: preserve connection status on small screens and search recovery. */
.clear-search{margin-top:12px;background:transparent;color:var(--ink)}
.clear-search[hidden],.search-empty[hidden]{display:none!important}
@media(max-width:850px){.reviewbar span{display:block;margin:5px 0}.reviewbar a{display:inline-block;margin:0;padding:8px}.search-empty{padding:18px;background:#eee5d0}}

/* Phase 2: documented brand values; original logo artwork unchanged. */
@font-face{font-family:Cormorant;src:url('/assets/cormorant-garamond-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Cormorant;src:url('/assets/cormorant-garamond-500-italic.woff2') format('woff2');font-weight:500;font-style:italic;font-display:swap}
body,body[data-theme=family]{--ink:#1C3A28;--accent:#1C3A28;--paper:#F8F5EE;--line:#d2caba;background:#F8F5EE;color:#1C3A28;font-size:17px;line-height:1.75}
h1,h2,h3,body[data-theme=family] h1,body[data-theme=family] h2{font-family:Cormorant,Georgia,serif;font-weight:500;letter-spacing:-.035em}
h1{font-size:clamp(48px,6.4vw,96px);line-height:1.02}h2{font-size:clamp(38px,4vw,60px)}h3{font-size:36px}em{color:inherit}
header{padding:28px 5vw;border-bottom:1px solid var(--line);gap:24px}nav{gap:24px}nav a{font-size:13px}.identity{background:#fff;padding:10px 12px}.identity small{font-size:8px;color:#104f77}.reviewbar{background:#1C3A28}.wrap{max-width:1440px;padding-left:6vw;padding-right:6vw}section{margin-bottom:130px}
.hero{grid-template-columns:1.35fr .8fr;gap:9vw;padding-top:100px;padding-bottom:10px;align-items:center}.hero h1{font-size:clamp(68px,8.8vw,132px);line-height:.95;margin-bottom:38px}.hero .lede{max-width:35ch;font-size:21px}.hero .eyebrow{color:#53644e}.hero-index{border-top:1px solid #B08A4F;padding:30px 0 0}.hero-index>a{display:grid;grid-template-columns:1fr auto;text-decoration:none;border-bottom:1px solid var(--line);padding:26px 0;gap:10px}.hero-index>a>span:first-child{grid-column:1/-1;font-size:11px;text-transform:uppercase;letter-spacing:.13em}.hero-index strong{font:500 31px/1.1 Cormorant,Georgia,serif}.hero-index .micro{margin-top:24px}
.button,button{background:#1C3A28;border-color:#1C3A28;min-height:50px;padding:16px 24px}.button:hover,button:hover{background:#2e5038;color:#fff}.textlink{border-color:#B08A4F}.micro,figcaption{color:#53604e}.eyebrow,.number{font-size:11px;letter-spacing:.17em}.number{color:#56634d}.paths{padding-top:50px}.paths h2{font-size:44px}.paths article{padding-right:25px}.three{gap:35px}
.explore-section,body[data-theme=family] .explore-section{background:#EEE5D0;padding:90px 0}.place-card{background:#F8F5EE;border-top:1px solid #B08A4F;padding:32px;min-height:230px;transition:none}.place-card:hover{transform:none;box-shadow:inset 0 0 0 1px #1C3A28}.place-card .eyebrow{color:#53604e}.place-card p{font-size:13px}.place-card h3{font-size:35px}.empty,.factbox{background:#EEE5D0;padding:42px}.empty h2,.factbox h2{font-size:46px}.split{gap:8vw}.partner,body[data-theme=family] .partner{background:transparent;border-top:1px solid var(--line);padding-top:60px;padding-bottom:0;grid-template-columns:1fr 1fr}.intro{padding-top:90px}.intro h1{max-width:20ch}.intro .lede{max-width:55ch}.directory{margin-top:-65px}.step h2{font-size:43px}footer{background:#1C3A28;padding:80px 6vw}footer h2{font-size:55px}footer a{min-height:44px}.status{font-size:12px}fieldset{min-width:0}input,select,textarea{min-width:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #704d22;outline-offset:5px}footer a:focus-visible,.reviewbar a:focus-visible{outline-color:#EEE5D0}
@media(max-width:1100px){nav{gap:14px}nav a{font-size:12px}.hero{gap:5vw}.hero-index strong{font-size:28px}}
@media(max-width:850px){header{padding:18px 6vw;gap:16px}.identity img{width:155px}.identity small{font-size:7px}nav a{font-size:18px;min-height:44px}section{margin-bottom:85px}.hero{grid-template-columns:1fr;gap:55px;padding-top:65px}.hero h1{font-size:clamp(64px,12vw,100px)}.hero .lede{font-size:19px}.hero-index{max-width:none}.hero-index strong{font-size:32px}.three,.partner{grid-template-columns:1fr}.intro{padding-top:60px}.intro h1{font-size:clamp(46px,8.5vw,70px);overflow-wrap:break-word}.directory{margin-top:-35px}.section-head{gap:20px}.explore-section{padding:65px 0}.place-card{min-height:200px}.split{gap:35px}.empty,.factbox{padding:28px}.partner{gap:25px}.paths h2{font-size:42px}footer{margin-top:80px;padding-top:65px}footer h2{font-size:48px}.tabs{gap:18px}.actions{gap:16px}.button{padding:15px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

.scenes{display:grid;gap:90px}.scene img{display:block;width:100%;height:auto;object-fit:contain}.scene figcaption{font-size:13px;max-width:80ch;margin-top:18px;line-height:1.7}.scene figcaption a{display:inline-block;padding:8px 2px}.scene:not(:first-child){max-width:1050px}.scenes .scene:nth-child(3){justify-self:end}@media(max-width:850px){.scenes{gap:55px}}

.article-body{max-width:820px;font-size:18px;line-height:1.8}.article-body h2{margin-top:2.2em;font-size:clamp(28px,4vw,40px)}.article-body a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.article-related{display:block;border-top:1px solid var(--line);margin-top:60px;padding-top:24px}.guide-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px}.guide-list h2{font-size:32px}.guide-list li{border-top:1px solid #c8c1af;padding-top:24px}@media(max-width:700px){.guide-list{grid-template-columns:1fr}.article-body{font-size:17px}}

.guide-list h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:30px;line-height:1.15}.article-body p{margin-bottom:1.25em}

/* Supplied Revival Rooflines logo */
.identity img{width:244px;height:auto;object-fit:contain}.footer-brand{display:block;width:150px;height:auto;margin:0 0 22px}@media(max-width:600px){.identity img{width:180px}.footer-brand{width:130px}}
