/* Hallmark / Impeccable: extend the established forest, paper and champagne brand. */
:root{--structure-paper:#fffdf8;--structure-ink:#203a2d;--structure-accent:#006039;--structure-champagne:#dfbe98;--structure-field:#f1f6f2;--structure-display:var(--serif);--structure-text:var(--sans)}
body .site-header.site-architecture{position:relative;z-index:20;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:none;height:112px;margin:0;padding:0 40px;gap:24px;background:var(--structure-ink);color:var(--structure-paper);border:0;box-shadow:none;backdrop-filter:none}
.site-architecture .home-brand{display:block;flex:none;width:124px;line-height:1}
.site-architecture .home-brand img{display:block;width:100%;height:auto;object-fit:contain}
.site-architecture .architecture-desktop{display:flex;align-items:center;gap:22px;margin-left:auto;font:500 14px/1.5 var(--structure-text)}
.site-architecture .architecture-desktop>a,.site-architecture .architecture-menu>summary{display:flex;align-items:center;gap:8px;min-height:48px;padding:8px 0;color:var(--structure-paper);white-space:nowrap;text-decoration:none;cursor:pointer;letter-spacing:0;text-transform:none;font:inherit}
.site-architecture .architecture-desktop>a:hover,.site-architecture .architecture-menu>summary:hover{color:var(--structure-champagne);text-decoration:underline;text-underline-offset:6px}
.site-architecture .architecture-menu{position:relative;display:block}
.site-architecture .architecture-menu>summary{list-style:none}
.site-architecture .architecture-menu>summary::-webkit-details-marker{display:none}
.site-architecture .nav-chevron{display:block;width:7px;height:7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);margin:0 2px 4px}
.site-architecture .architecture-menu[open] .nav-chevron{transform:rotate(225deg);margin-top:4px}
.site-architecture .architecture-panel{position:absolute;top:100%;right:0;width:280px;padding:14px;background:var(--structure-paper);color:var(--structure-ink);box-shadow:0 12px 24px rgb(0 0 0 / .16)}
.site-architecture .architecture-panel>a{display:flex;align-items:center;min-height:48px;padding:10px 12px;text-decoration:none;color:var(--structure-ink);font:500 15px/1.45 var(--structure-text)}
.site-architecture .architecture-panel>a:hover{background:var(--structure-field);text-decoration:underline;text-underline-offset:4px}
.site-architecture .header-cta{flex:none;background:var(--structure-champagne);color:var(--structure-ink);min-height:52px;white-space:nowrap;border:0;border-radius:0;font:600 14px/1.5 var(--structure-text);padding:15px 22px}
.site-architecture .header-cta:hover{background:var(--structure-paper);color:var(--structure-ink)}
.site-architecture :is(a,button,summary):focus-visible{outline:3px solid var(--structure-champagne);outline-offset:4px}
.site-architecture .architecture-panel a:focus-visible,.site-architecture .mobile-nav nav :is(a,button,summary):focus-visible{outline-color:var(--structure-accent)}
.site-architecture .mobile-nav{display:none}
body .site-footer{color:var(--structure-paper);background:var(--structure-ink)}
.site-footer .footer-home-types{display:flex;flex-wrap:wrap;gap:8px 24px;padding:20px 0 0;font:500 15px/1.6 var(--structure-text)}
.site-footer .footer-home-types a{color:var(--structure-paper);display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.site-footer .footer-home-types a:hover{text-decoration:underline;text-underline-offset:4px}
.site-footer a:focus-visible,.site-footer button:focus-visible{outline:3px solid var(--structure-accent);outline-offset:4px}
/* The entire facade stays visible. The photograph has its own dimensions, independent of copy height. */
.home-experience .home-hero-stage{width:calc(100% - 80px);max-width:1360px;margin:auto;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);gap:40px;min-height:560px;padding:48px 0;overflow:visible;align-items:center}
.home-experience .home-original-visual .hero-copy{padding:0;align-self:center}
.home-experience .home-original-visual h1{font-size:clamp(42px,4vw,60px);line-height:1.08}
.home-experience .home-original-visual h1>span{display:inline}
.home-experience .home-hero-portrait{min-height:0;height:auto;aspect-ratio:auto;overflow:visible;background:none;align-self:center}
.home-experience .home-hero-portrait>img{position:static;display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;animation:none}
.home-experience .home-hero-portrait figcaption{position:static;display:block;max-width:none;margin:0;padding:13px 0;background:none;color:var(--structure-ink);font:400 13px/1.5 var(--structure-text)}
.home-types-section{padding-block:64px}
.home-type-list,.journal-resource-list{display:flex;flex-direction:column;gap:12px}
.home-type-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) auto;align-items:center;gap:30px;padding:30px 32px;text-decoration:none;background:var(--structure-field);color:var(--structure-ink)}
.home-type-row:hover{background:var(--structure-ink);color:var(--structure-paper)}
.home-experience .home-type-row h3{font:500 clamp(26px,2.5vw,34px)/1.15 var(--structure-display);margin:0;color:inherit;letter-spacing:-.02em}
.home-experience .home-type-row p{margin:0;color:inherit;font:400 16px/1.6 var(--structure-text)}
.type-action{font:600 14px/1.5 var(--structure-text);text-decoration:underline;text-underline-offset:5px}
.home-type-row:focus-visible{outline:3px solid var(--structure-accent);outline-offset:4px}
.home-experience .home-journal-section{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center;padding-block:56px;margin-block:32px}
.home-journal-section p{max-width:64ch;margin-bottom:0}
.structure-page .structure-breadcrumb{padding-block:28px 0}
.structure-breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px 20px;list-style:none;padding:0;margin:0;font:400 14px/1.5 var(--structure-text)}
.structure-breadcrumb a{color:var(--structure-accent);text-underline-offset:4px;min-height:44px;display:flex;align-items:center}
.structure-breadcrumb li[aria-current]{display:flex;align-items:center;min-height:44px}
.structure-page .structure-intro{padding-block:50px 72px;max-width:1120px}
.structure-page .structure-intro h1{font:500 clamp(44px,5.7vw,76px)/1.05 var(--structure-display);letter-spacing:-.025em;color:var(--structure-ink);max-width:940px;margin:0 0 28px;text-wrap:balance;overflow-wrap:break-word}
.structure-page .structure-intro p{max-width:65ch;font-size:19px;line-height:1.65;margin:0 0 24px}
.structure-page .structure-section{padding-block:48px 64px;max-width:1120px}
.structure-page .structure-section h2{font-size:clamp(32px,3.5vw,48px);line-height:1.12;max-width:30ch;margin-bottom:24px}
.structure-page .structure-section>p{max-width:70ch}
.structure-page .structure-comparison{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px}
.structure-comparison dl{margin:0}
.structure-comparison dl>div{margin-bottom:30px}
.structure-comparison dt{font:600 20px/1.4 var(--structure-text);margin-bottom:8px}
.structure-comparison dd{font:400 17px/1.7 var(--structure-text);margin:0;max-width:65ch}
.structure-page .structure-field{padding:40px;background:var(--structure-field)}
.structure-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 28px;margin-top:24px}
.home-experience .structure-note{font-size:14px;line-height:1.6;margin-top:24px}
@media(max-width:1180px){
 body .site-header.site-architecture{height:96px;padding-inline:24px}
 .site-architecture .architecture-desktop,.site-architecture>.header-cta{display:none}
 .site-architecture .home-brand{width:104px}
 .site-architecture .mobile-nav{display:block;position:static}
 .site-architecture .mobile-nav>summary{display:flex;flex-direction:row;justify-content:center;align-items:center;height:48px;gap:14px;min-height:48px;width:auto;min-width:96px;padding:8px;color:var(--structure-paper);list-style:none;cursor:pointer;font:500 17px/1.5 var(--structure-text);background:none;border:0}
 .site-architecture .mobile-nav>summary::-webkit-details-marker{display:none}
 .site-architecture .mobile-nav>summary .menu-label{background:none;display:inline;width:auto;height:auto;color:inherit;font:inherit}
 .site-architecture .menu-lines{display:flex;flex-direction:column;gap:7px;width:26px;background:none}
 .site-architecture .menu-lines i{display:block;width:26px;height:2px;background:var(--structure-paper)}
 .site-architecture .mobile-nav nav{position:absolute;left:0;right:0;top:100%;width:auto;max-width:none;min-width:0;max-height:calc(100dvh - 96px);overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:16px 24px 24px;background:var(--structure-paper);color:var(--structure-ink);box-shadow:0 12px 24px rgb(0 0 0 / .14);border:0;border-radius:0}
 .site-architecture .mobile-nav:not([open]) nav{display:none}
 .site-architecture .mobile-nav nav a,.site-architecture .mobile-nav-group>summary{display:flex;align-items:center;min-height:48px;padding:10px 8px;margin:0;color:var(--structure-ink);text-decoration:none;font:500 17px/1.5 var(--structure-text);cursor:pointer}
 .site-architecture .mobile-nav-group>summary{display:list-item;width:100%;height:auto;list-style:disclosure-closed inside}
 .site-architecture .mobile-nav-group[open]>summary{list-style:disclosure-open inside}
 .site-architecture .mobile-nav-group>div{padding-left:18px;background:var(--structure-field)}
 .site-architecture .mobile-nav nav>button{min-height:48px;margin-top:12px;padding:12px;background:var(--structure-accent);color:var(--structure-paper);border:0;font:600 16px/1.5 var(--structure-text)}
 .home-type-row{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
 .type-action{grid-column:2}
}
@media(max-width:700px){
 body .site-header.site-architecture{height:80px;padding-inline:20px}
 .site-architecture .home-brand{width:84px}
 .site-architecture .mobile-nav nav{max-height:calc(100dvh - 80px);padding-inline:20px}
 .home-experience .home-hero-stage{width:calc(100% - 40px);display:flex;gap:30px;min-height:0;padding:32px 0 28px}
 .home-experience .home-original-visual .hero-copy{padding:0}
 .home-experience .home-original-visual h1{font-size:clamp(34px,7.5vw,46px)}
 .home-experience .home-hero-portrait{width:100%;aspect-ratio:auto;min-height:0}
 .home-experience .home-hero-portrait figcaption{font-size:12px;padding:10px 0 0}
 .home-types-section{padding-block:40px}
 .home-type-row{grid-template-columns:minmax(0,1fr);gap:14px;padding:24px}
 .type-action{grid-column:1;min-height:28px}
 .home-experience .home-journal-section{grid-template-columns:minmax(0,1fr);gap:16px;padding-block:36px;margin-block:16px}
 .structure-page .structure-intro{padding-block:30px 40px}
 .structure-page .structure-intro h1{font-size:clamp(38px,9vw,52px)}
 .structure-page .structure-intro p{font-size:17px}
 .structure-page .structure-section{padding-block:32px 40px}
 .structure-page .structure-comparison{grid-template-columns:minmax(0,1fr);gap:4px}
 .structure-page .structure-field{padding:24px}
 .structure-actions{align-items:stretch;flex-direction:column;gap:12px}
 .structure-actions .button{justify-content:center;white-space:normal}
 .site-footer .footer-home-types{gap:4px 20px}
}
@media(prefers-reduced-motion:reduce){.home-type-row{transition:none}}

/* Shared footer sizing also applies to area pages which do not load home.css. */
body .site-footer.home-original-footer{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;width:100%;max-width:none;margin:60px 0 0;padding:48px max(40px,calc((100% - 1360px)/2)) 100px;border:0;background:var(--structure-ink);color:var(--structure-paper)}
body .site-footer.home-original-footer :is(a,button,p){color:var(--structure-paper)}
.site-footer.home-original-footer .footer-areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px 24px;margin:0;padding:0;border:0}
.site-footer.home-original-footer .footer-areas>span{grid-column:1/-1;font:500 26px/1.4 var(--structure-display);margin-bottom:12px}
.site-footer.home-original-footer .footer-areas>a{display:flex;align-items:center;min-height:44px;font:400 14px/1.5 var(--structure-text);letter-spacing:0;text-transform:none}
.site-footer.home-original-footer .footer-resources{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0;padding:0;border:0}
.site-footer.home-original-footer .footer-resources a{display:flex;align-items:center;min-height:44px;font:500 15px/1.5 var(--structure-text)}
.site-footer.home-original-footer .footer-brand{display:block;width:min(330px,100%);margin:8px auto 0}
.site-footer.home-original-footer .footer-brand img{display:block;width:100%;height:auto}
.site-footer.home-original-footer>span,.site-footer.home-original-footer>p{text-align:center;margin:0}
.site-footer.home-original-footer>div{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px}
.site-footer.home-original-footer :focus-visible{outline-color:var(--structure-champagne)}
@media(max-width:700px){body .site-footer.home-original-footer{padding:32px 20px 110px;margin-top:40px}.site-footer.home-original-footer .footer-areas{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px}.site-footer.home-original-footer .footer-resources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px}.site-footer.home-original-footer .footer-home-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px}}

@media(min-width:1181px){.home-experience .home-original-visual h1>span{display:block}}
@media(max-width:1180px){.site-architecture .mobile-nav>summary>span{height:auto;width:auto;margin:0;background:none;transform:none}.site-architecture .mobile-nav>summary>.menu-lines{display:flex;flex-direction:column;gap:7px;width:26px}.site-architecture .mobile-nav>summary>.menu-lines i{width:26px;height:2px;margin:0;background:var(--structure-paper)}}
.home-experience .buying-path-photos>figure:only-child{flex-basis:100%}
/* At tablet widths the facade follows the copy instead of shrinking into a narrow side column. */
@media(min-width:701px) and (max-width:1000px){.home-experience .home-hero-stage{display:flex;flex-direction:column;align-items:stretch;width:calc(100% - 48px);gap:28px;min-height:0;padding:40px 0}.home-experience .home-original-visual .hero-copy{width:100%;padding:0;align-self:stretch}.home-experience .home-original-visual h1{max-width:720px}.home-experience .home-original-visual .hero-lede{max-width:65ch}.home-experience .home-hero-portrait{width:100%;min-height:0;align-self:stretch}}
