:root{--ink:#263848;--muted:#52616b;--blue:#335e78;--blue-dark:#244a61;--gold:#ac7e5c;--mist:#edf4f6;--cream:#fbf9f5;--line:#d8e0e4}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:"Segoe UI",Arial,sans-serif;line-height:1.58}a{color:inherit}img{display:block;max-width:100%}button,input,textarea{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-60px;left:12px;z-index:20;background:#fff;padding:9px 13px}.skip-link:focus{top:12px}.section-shell{width:min(100% - 48px,1160px);margin:auto}
.site-header{position:relative;z-index:5;background:#fff;border-bottom:1px solid var(--line)}.header-inner{width:min(100% - 48px,1160px);min-height:80px;margin:auto;display:flex;align-items:center;gap:30px}.domain-name{font-weight:800;color:var(--blue);text-decoration:none;font-size:1.06rem}.main-nav{display:flex;gap:30px;margin-left:auto}.main-nav a{text-decoration:none;font-size:.91rem;font-weight:700}.main-nav a:hover,.personal-contact a:hover,.site-footer a:hover{text-decoration:underline}.brand{order:3;flex:none;width:108px;margin-left:10px}.brand img{width:100%;height:auto}.menu-button{display:none}
.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.16em;color:var(--gold);text-transform:uppercase;margin:0 0 18px}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.13;letter-spacing:-.03em}h1{font-size:clamp(3.25rem,5.1vw,5.15rem);margin:0 0 26px}h2{font-size:clamp(2.25rem,3.6vw,3.6rem);margin:0 0 20px}h3{font-size:1.48rem;margin:0 0 12px}.hero{background:var(--mist)}.hero-grid{display:grid;grid-template-columns:minmax(0,.97fr) minmax(0,1.03fr);gap:6%;align-items:center;min-height:665px}.hero-copy{padding:70px 0 80px}.hero-copy .lead{font-size:1.12rem;color:var(--muted);max-width:500px;margin:0 0 28px}.hero-picture{position:relative;align-self:stretch;margin:0;min-height:560px}.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-picture figcaption,.wish-picture figcaption{position:absolute;right:12px;bottom:12px;background:rgba(33,49,56,.85);color:#fff;padding:4px 7px;font-size:.68rem;line-height:1.2}.button,.submit-button{display:inline-flex;align-items:center;justify-content:center;min-height:45px;padding:10px 22px;text-decoration:none;font-weight:700;line-height:1.3;border:1px solid transparent;cursor:pointer}.button-primary,.submit-button{background:var(--blue);color:#fff}.button-primary:hover,.submit-button:hover{background:var(--blue-dark)}.button-line{border-color:var(--blue);color:var(--blue);background:transparent}.button-line:hover{background:var(--blue);color:#fff}
.house{padding:115px 0 122px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:11%}.house-intro p:not(.eyebrow){font-size:1.07rem;color:var(--muted);max-width:465px}.house-details article{border-top:1px solid var(--line);padding:20px 0 27px}.house-details article span{color:var(--gold);font-size:.73rem;font-weight:800;letter-spacing:.15em}.house-details h3{margin-top:13px}.house-details p{color:var(--muted);margin:0}
.wish{background:var(--cream);padding:82px 0}.wish-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);gap:8%;align-items:center}.wish-picture{position:relative;margin:0;height:485px}.wish-picture img{width:100%;height:100%;object-fit:cover}.wish-copy p:not(.eyebrow){font-size:1.08rem;color:var(--muted);margin:0 0 27px}
.contact{padding:108px 0 118px}.contact-heading h2{margin-bottom:34px}.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:62px}.form-panel{background:var(--mist);padding:33px 36px 38px}fieldset{border:0;padding:0;margin:0 0 26px}legend{font-weight:700;margin-bottom:12px}.choice-row{display:flex;flex-wrap:wrap;gap:8px}.choice-row label{display:flex;align-items:center;gap:7px;background:#fff;padding:8px 11px;font-size:.92rem;cursor:pointer}.choice-row input,.consent input{accent-color:var(--blue)}.choice-row input{margin:0}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 19px}.fields label{display:flex;flex-direction:column;gap:6px;font-size:.92rem;font-weight:650}.fields input,.fields textarea{width:100%;min-height:43px;background:#fff;border:1px solid #afbdc5;padding:9px 11px;color:var(--ink)}.fields textarea{min-height:100px;resize:vertical}.fields .message{grid-column:1/-1}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.consent{display:flex;align-items:flex-start;gap:8px;font-size:.86rem;margin:22px 0 19px}.consent input{margin-top:4px}.consent a{text-decoration:underline}.form-status{font-size:.86rem;color:var(--muted);margin:12px 0 0}.form-status:empty{display:none}.personal-contact{align-self:start;border-left:3px solid var(--gold);padding:4px 0 5px 27px}.contact-label{margin:0 0 15px;color:var(--gold);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.personal-contact h2{font-size:1.95rem;margin:0 0 7px}.personal-contact p:not(.contact-label){margin:0 0 19px;color:var(--muted)}.personal-contact a{display:block;width:max-content;max-width:100%;margin:0 0 8px;text-decoration:none;font-weight:700}.site-footer{background:var(--ink);color:#fff;padding:26px max(24px,calc((100% - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.87rem}.site-footer p{margin:0}.site-footer nav{display:flex;gap:20px;flex-wrap:wrap}.site-footer a{text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #d2a080;outline-offset:3px}
@media(max-width:900px){.header-inner{min-height:70px}.main-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;gap:15px;margin:0;padding:17px 24px 21px;background:#fff;border-top:1px solid var(--line)}.main-nav.is-open{display:flex}.menu-button{display:flex;align-items:center;justify-content:center;order:2;width:42px;height:42px;margin-left:auto;background:#fff;border:1px solid var(--line);cursor:pointer}.menu-button span:not(.sr-only){width:20px;height:2px;background:var(--ink);box-shadow:0 -6px 0 var(--ink),0 6px 0 var(--ink)}.brand{order:3;width:100px;margin-left:0}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:70px 0 48px}.hero-picture{height:450px;min-height:0}.house{gap:7%}.wish-grid{gap:5%}.contact-grid{gap:33px;grid-template-columns:minmax(0,1fr) 235px}}
@media(max-width:700px){.section-shell,.header-inner{width:min(100% - 32px,1160px)}.hero-copy{padding:57px 0 37px}.hero-copy h1{font-size:clamp(2.55rem,8vw,3.8rem)}.hero-picture{height:340px}.house{padding:79px 0 87px;display:block}.house-intro{margin-bottom:36px}.wish{padding:57px 0 70px}.wish-grid{display:flex;flex-direction:column;align-items:stretch;gap:36px}.wish-picture{height:330px}.contact{padding:79px 0 89px}.contact-grid{display:flex;flex-direction:column;gap:37px}.personal-contact{border-left:0;border-top:3px solid var(--gold);padding:25px 0 0}.site-footer{flex-direction:column;align-items:flex-start}}
@media(max-width:480px){.header-inner{gap:12px}.domain-name{font-size:.95rem}.brand{width:84px}.hero-copy h1{font-size:2.45rem}.hero-picture{height:270px}.wish-picture{height:260px}.form-panel{padding:24px 18px}.choice-row{flex-direction:column;align-items:stretch}.fields{grid-template-columns:1fr}.fields .message{grid-column:auto}.submit-button{width:100%}.site-footer nav{gap:12px 18px}}@media(max-width:350px){.domain-name{font-size:.84rem}.brand{width:75px}.header-inner{gap:8px}.hero-copy h1{font-size:2.19rem}}
