@import url('./assets/fonts/fonts.css');
:root{--paper:#f6f1e6;--ink:#282923;--muted:#656257;--gold:#9a7c42;--line:#d7cfbd;--display:'Fraunces',Georgia,serif;--body:'Source Sans 3',Arial,sans-serif;color-scheme:light;font-family:var(--body);color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0}a{color:inherit}button,input,textarea{font:inherit}button,a,input,textarea{ -webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}img{max-width:100%;display:block}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400}h1{font-size:clamp(46px,5.3vw,78px);line-height:1.06;letter-spacing:-2.5px}h2{font-size:38px;line-height:1.15;letter-spacing:-.8px}p{font-size:18px;line-height:1.65}em{font-weight:400;color:#80652e}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #876515;outline-offset:5px}.skip{position:fixed;left:15px;top:-80px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.preview-bar{background:#282923;color:#fff7e8;font-size:13px;min-height:42px;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:8px 30px;letter-spacing:.02em}.preview-bar a{text-decoration:none}.preview-bar a:hover{text-decoration:underline}.preview-links{display:flex;gap:18px}.preview-links a{opacity:.76;padding:5px 0}.preview-links a[aria-current]{opacity:1;border-bottom:1px solid #c6ab74}.site-header{display:flex;justify-content:space-between;align-items:center;padding:27px 0;border-bottom:1px solid var(--line)}.brand{display:inline-block}.brand img{width:90px;height:93px}.location{font-size:12px;line-height:1.65;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.header-link{font-size:15px;text-decoration:none;border-bottom:1px solid var(--gold);padding:10px 0}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.19em;text-transform:uppercase;line-height:1.6}.intro{max-width:470px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border:1px solid var(--ink);background:var(--ink);color:#fffdf6;padding:15px 21px;font-size:16px;text-decoration:none;min-height:53px;transition:background .2s,transform .2s}.button:hover{background:#46483b;transform:translateY(-1px)}.arrow{font-size:23px;line-height:1}.form-card{background:#fffdf8;padding:38px;border:1px solid var(--line)}.form-card h2{font-size:32px}.form-card .form-intro{font-size:16px;color:var(--muted);margin:11px 0 25px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field.full{grid-column:1/-1}label{font-size:14px;font-weight:600}label span{font-weight:400;color:var(--muted)}input,textarea{width:100%;border:1px solid #a8a393;border-radius:0;background:transparent;color:var(--ink);padding:12px;min-height:47px;font-size:16px;box-shadow:none}textarea{resize:vertical;min-height:95px}input:user-invalid{border-color:#9a3930}input::placeholder,textarea::placeholder{color:#827e74}form .button{width:100%;margin-top:22px}.preview-note{font-size:13px;line-height:1.5;color:var(--muted);margin-top:13px}.form-status{font-size:15px;line-height:1.5;background:#e9eddc;border-left:3px solid #536244;padding:13px;margin-top:15px}.form-status:empty{display:none}details{font-size:13px;color:var(--muted);margin-top:10px}summary{cursor:pointer;width:fit-content;padding:5px 0}details p{font-size:13px;line-height:1.5;margin-top:5px}.site-footer{border-top:1px solid var(--line);padding:28px 0;display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-brand{font-family:var(--display);font-size:24px}.footer-meta{font-size:12px;line-height:1.7;color:var(--muted);text-align:right}.compass{letter-spacing:.18em;font-size:15px;color:var(--ink);margin-bottom:4px}.portrait{background:#fff;object-fit:contain}.section-number{font-size:12px;letter-spacing:.16em;color:var(--muted)}
/* 01 — a warm, printed invitation */
.heritage{background-color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23887755' opacity='.035' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.heritage .site-header .location{text-align:center}.heritage-main{display:grid;grid-template-columns:1.12fr 1fr;gap:76px;padding:67px 0 64px;align-items:start}.heritage-copy .eyebrow{margin:6px 0 25px;color:#705a31}.heritage-copy h1{margin-bottom:26px}.heritage-copy h1 em{display:block}.heritage-copy .intro{max-width:445px}.local-rule{display:flex;align-items:center;gap:15px;margin:36px 0 27px;color:#7b663b}.local-rule:before{content:'';height:1px;flex:1;background:var(--line)}.local-rule:after{content:'✦';font-size:18px}.meet-small{display:grid;grid-template-columns:168px 1fr;gap:23px;align-items:center}.meet-small img{width:168px;border:0;border-radius:0;background:transparent;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 500 500'%3E%3Ccircle cx='159' cy='160' r='144' fill='white'/%3E%3Ccircle cx='342' cy='342' r='144' fill='white'/%3E%3C/svg%3E");mask-size:100% 100%;mask-repeat:no-repeat}.meet-small h2{font-size:27px;margin-bottom:7px}.meet-small p{font-size:16px;color:var(--muted);line-height:1.5}.heritage .form-card{box-shadow:7px 7px 0 #e9e1d1;position:relative}.heritage .form-card:before{content:'';position:absolute;top:-1px;left:38px;width:46px;height:3px;background:var(--gold)}
/* 02 — generous, contrasting editorial composition */
.editorial{--paper:#f4f0e8;--display:'Libre Baskerville',Georgia,serif}.editorial-top{background:#242821;color:#f8f2e7}.editorial .site-header{border-color:#505345}.editorial .site-header .brand{background:#f4f0e8;padding:10px 14px}.editorial .site-header .brand img{width:62px;height:64px}.editorial-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:72px;padding:60px 0 70px;align-items:center}.editorial-hero .eyebrow{color:#d1bc91;margin-bottom:27px}.editorial h1{font-size:clamp(45px,4.6vw,68px);line-height:1.14;letter-spacing:-2.5px}.editorial h1 em{color:#d5b879;display:block;margin-top:7px}.editorial .intro{color:#d0d2c8;margin:24px 0 31px;max-width:470px}.editorial-hero .button{background:#e8d8b2;color:#242821;border-color:#e8d8b2}.editorial-hero .button:hover{background:#f7e8c6}.portrait-sheet{position:relative;background:#f9f6f0;padding:24px 24px 20px;transform:rotate(2deg);color:var(--ink)}.portrait-sheet:before{content:'';position:absolute;inset:10px;border:1px solid #d9cfbd;pointer-events:none}.portrait-sheet img{width:100%;aspect-ratio:1;position:relative}.portrait-sheet figcaption{font-size:12px;letter-spacing:.15em;text-transform:uppercase;display:flex;justify-content:space-between;padding-top:19px;position:relative}.editorial-connect{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px;padding:65px 0}.editorial-connect .section-number{margin-bottom:26px}.editorial-connect h2{font-size:39px;margin-bottom:22px}.editorial-connect .intro{color:var(--muted);font-size:17px;margin:0}.editorial .form-card{padding:0;border:0;background:none}.editorial .form-card h2{font-size:28px}.editorial .form-card .form-intro{margin:10px 0 22px}.editorial .fields{gap:15px 20px}.editorial textarea{min-height:75px}.editorial .preview-note{margin-top:10px}
/* 03 — a personal introduction, with an open invitation */
.personal{--paper:#faf8f3;--display:'Lora',Georgia,serif}.personal .site-header{border-bottom:0;padding-bottom:20px}.personal .brand img{width:77px;height:80px}.personal .location{color:var(--muted)}.personal .header-link{border:1px solid var(--line);border-radius:30px;padding:12px 23px}.personal-hero{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:center;padding:28px 0 54px}.personal-photo{margin:0;position:relative;max-width:410px;justify-self:center}.personal-photo:before{content:'';position:absolute;inset:24px -17px -17px 25px;background:#eae4d6;border-radius:200px 200px 20px 20px;z-index:-1}.personal-photo img{border-radius:190px 190px 20px 20px;width:100%;border:13px solid #fff}.personal-photo figcaption{text-align:center;padding-top:18px;font-family:var(--display);font-size:22px;font-style:italic}.personal-hero .eyebrow{color:#736043;margin-bottom:20px}.personal h1{font-size:clamp(44px,4.7vw,66px);line-height:1.13;letter-spacing:-2px}.personal h1 em{display:block;margin-top:3px}.personal-hero .intro{margin-top:24px;max-width:480px}.personal-subline{margin-top:25px;font-size:14px;letter-spacing:.03em;color:#706548}.personal-connect{background:#eeebe3;border-top:1px solid #dfd8ca;border-bottom:1px solid #dfd8ca;padding:42px 0}.personal-connect-inner{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:start}.personal-connect h2{font-size:35px;margin-top:9px}.personal-connect .intro{font-size:17px;margin-top:18px}.personal .form-card{padding:0;border:0;background:none}.personal .form-card>h2,.personal .form-card>.form-intro{display:none}.personal input,.personal textarea{background:#fcfbf7;border-color:#a7a397;border-radius:5px}.personal .button{border-radius:5px}.personal textarea{min-height:76px}.personal .site-footer{border-top:0}
/* Local design selection */
.comparison{background:#f5f1e8}.comparison .wrap{width:min(1320px,calc(100% - 80px))}.comparison-header{display:flex;justify-content:space-between;align-items:center;padding:32px 0;border-bottom:1px solid var(--line)}.comparison-header img{width:75px}.comparison-intro{display:flex;justify-content:space-between;gap:50px;align-items:end;padding:52px 0 35px}.comparison-intro h1{font-size:52px;margin-top:15px}.comparison-intro p{max-width:380px;font-size:17px;color:var(--muted)}.concept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-bottom:45px}.concept-card{border:1px solid var(--line);background:#fffdf8;text-decoration:none;display:block;transition:transform .2s,box-shadow .2s;min-width:0}.concept-card:hover{transform:translateY(-5px);box-shadow:0 14px 35px #25251b10}.mini{height:285px;padding:29px;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.mini-logo{width:57px;margin-bottom:20px}.mini h2{font-size:32px;max-width:220px;line-height:1.08}.mini p{font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin-top:20px}.mini-heritage{background:#f1eadc}.mini-heritage:after{content:'';position:absolute;width:90px;height:120px;border:1px solid #d2c5aa;right:-14px;top:91px;transform:rotate(8deg);background:#fffdf6;box-shadow:0 0 0 8px #f7f1e5}.mini-editorial{background:#242821;color:#f9f3e8;font-family:'Libre Baskerville'}.mini-editorial h2{font-family:'Libre Baskerville';font-size:31px;position:relative;z-index:1}.mini-editorial h2 em{color:#d5b879}.mini-editorial .mini-photo{width:119px;position:absolute;right:-12px;bottom:23px;transform:rotate(5deg);border:7px solid #f9f3e8}.mini-personal{background:#f9f7f1;padding-left:26px}.mini-personal h2{font-family:'Lora';font-size:31px;position:relative;z-index:1}.mini-personal .mini-photo{width:100px;border-radius:50%;position:absolute;right:18px;top:26px}.concept-info{padding:26px}.concept-label{display:flex;gap:10px;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:15px}.recommended{background:#ece6d5;padding:4px 7px;color:#66502c;font-size:10px}.concept-info h2{font-size:29px;margin-bottom:12px}.concept-info p{font-size:16px;color:var(--muted);min-height:79px}.concept-open{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:24px;padding-top:17px;font-size:15px}.comparison-note{border-top:1px solid var(--line);padding:25px 0 35px;display:flex;gap:45px;justify-content:space-between}.comparison-note p{font-size:14px;color:var(--muted);max-width:570px}.comparison-note strong{color:var(--ink)}
.portrait,.mini-photo{height:auto}.mini-editorial .mini-logo{background:#f4f0e8;padding:5px}.personal .form-card>h2{display:block;position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(min-width:1500px){.heritage-main{padding-top:83px;padding-bottom:80px}.editorial-hero{padding-block:78px}}
@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.heritage-main{gap:38px}.form-card{padding:27px}.heritage h1{font-size:59px}.editorial-hero{gap:32px}.editorial-connect{gap:40px}.personal-hero{gap:40px}.personal-connect-inner{gap:35px}.concept-grid{gap:16px}.comparison .wrap{width:calc(100% - 48px)}.mini{padding:22px}.mini h2{font-size:28px}.concept-info{padding:20px}.concept-info h2{font-size:25px}.concept-info p{min-height:105px}.concept-label{display:block}.recommended{display:table;margin-top:6px}.comparison-intro h1{font-size:44px}}
@media(max-width:900px){.wrap{width:calc(100% - 40px)}.preview-bar{padding:9px 20px;gap:10px;flex-wrap:wrap;font-size:12px}.preview-links{gap:16px}.site-header{padding:20px 0}.brand img{width:65px;height:67px}.site-header .location{display:none}.header-link{font-size:14px}.heritage-main{grid-template-columns:1fr;padding:39px 0 43px;gap:36px}.heritage h1{font-size:clamp(47px,8.7vw,63px);letter-spacing:-1.8px}.heritage-copy .eyebrow{margin-bottom:20px;font-size:10px}.heritage-copy .intro{max-width:100%}.heritage-copy h1{margin-bottom:20px}.local-rule{margin:25px 0 21px}.meet-small{grid-template-columns:130px 1fr;gap:17px}.meet-small img{width:130px}.meet-small h2{font-size:25px}.meet-small p{font-size:15px}.form-card{padding:27px 23px}.form-card h2{font-size:29px}.site-footer{align-items:start;padding:25px 0}.footer-meta{max-width:210px}.footer-brand{font-size:20px}.editorial-hero{grid-template-columns:1fr;padding:35px 0 43px;gap:36px}.editorial h1{font-size:clamp(43px,7.7vw,60px);letter-spacing:-1.7px}.editorial .intro{margin:20px 0 25px}.portrait-sheet{max-width:350px;width:calc(100% - 24px);justify-self:center;margin:0}.editorial-connect{grid-template-columns:1fr;gap:33px;padding:38px 0}.editorial-connect h2{font-size:32px}.editorial-connect .section-number{margin-bottom:15px}.editorial-connect .intro{margin:0}.personal-hero{grid-template-columns:1fr;gap:35px;padding:24px 0 38px}.personal-photo{max-width:270px;grid-row:2}.personal h1{font-size:clamp(43px,8vw,61px)}.personal-hero .intro{max-width:100%;margin-top:18px}.personal-subline{margin-top:17px}.personal-connect-inner{grid-template-columns:1fr;gap:25px}.personal-connect{padding:30px 0}.personal-connect h2{font-size:32px}.personal-connect .intro{margin-top:12px}.personal .brand img{width:65px;height:67px}.comparison-intro{display:block;padding:36px 0 28px}.comparison-intro h1{font-size:40px;letter-spacing:-1px}.comparison-intro p{margin-top:22px;max-width:100%}.concept-grid{grid-template-columns:1fr;gap:25px}.mini{height:290px;padding:30px}.mini h2{font-size:37px;max-width:260px}.mini-editorial h2,.mini-personal h2{font-size:35px}.mini-editorial .mini-photo{width:155px}.mini-personal .mini-photo{width:125px}.concept-label{display:flex}.recommended{margin:0}.concept-info p{min-height:0}.comparison-note{display:block}.comparison-note p+p{margin-top:15px}.comparison-header{padding:23px 0}.comparison-header .eyebrow{max-width:150px;text-align:right}}
@media(max-width:380px){.wrap{width:calc(100% - 32px)}.preview-bar{padding-inline:16px}.fields{grid-template-columns:1fr}.field.full{grid-column:auto}.form-card{padding:23px 19px}.site-footer{display:block}.footer-meta{text-align:left;margin-top:15px;max-width:100%}.heritage h1{font-size:44px}.editorial h1{font-size:39px}.personal h1{font-size:41px}.mini h2{font-size:32px}.mini-personal .mini-photo{width:90px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.concept-card:hover,.button:hover{transform:none}}

/* Contact details shared by the three local previews. */
.footer-phones{display:flex;flex-wrap:wrap;gap:6px 24px;margin-top:13px;font-size:14px;line-height:1.6}.footer-phones a{text-decoration:none}.footer-phones a:hover{text-decoration:underline}.footer-meta address{font-style:normal;font-size:14px;line-height:1.6;margin:7px 0}.site-footer>div:first-child{min-width:0}@media(max-width:600px){.site-footer{display:block}.footer-meta{text-align:left;margin-top:24px;max-width:none}.footer-phones{flex-direction:column;gap:5px}}
