:root{--ink:#26231e;--muted:#726e65;--cream:#f7f4ee;--gold:#cba65d;--line:#dfd9cf;--dark:#201c19}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.7 Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b07c20;outline-offset:5px}.skip{position:absolute;top:-100px;left:10px;z-index:50;background:white;padding:12px}.skip:focus{top:5px}.topline{background:var(--dark);color:#eee7db;display:flex;justify-content:space-between;padding:9px max(5vw,20px);font-size:10px;letter-spacing:1.5px}.topline a{text-decoration:none;letter-spacing:1px}header{display:flex;align-items:center;justify-content:space-between;padding:22px 5vw;border-bottom:1px solid var(--line);gap:25px}.brand{font:24px/1.2 Georgia,serif;letter-spacing:2px;text-decoration:none;display:flex;align-items:center;gap:12px}.brand-symbol{font:46px/1 Georgia;color:#a9823e}.brand small{display:block;font:10px Arial;letter-spacing:5px;margin-top:7px}nav{display:flex;align-items:center;gap:28px;font-size:13px}nav a{text-decoration:none}nav a:hover{color:#976d2d}.nav-cta{border:1px solid #8c7954;padding:10px 19px}.menu-toggle{display:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.12}h1{font-size:clamp(42px,5.4vw,79px);letter-spacing:-3px;margin-bottom:24px}h2{font-size:clamp(32px,3.5vw,50px);letter-spacing:-1.5px;margin-bottom:24px}h3{font-size:34px;letter-spacing:-.7px}em{font-weight:400;color:#97723a}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;line-height:1.7;margin-bottom:24px}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:680px;background:#f0ece3}.hero-copy{padding:75px 4vw 50px 7vw;align-self:center}.lead{max-width:460px;color:#605c52;font-size:17px;line-height:1.9}.hero-image{position:relative;overflow:hidden;min-height:650px}.portrait{width:100%;height:100%;object-fit:cover;object-position:50% 36%;display:block;position:absolute}.photo-tag{position:absolute;bottom:28px;left:28px;right:28px;background:rgba(32,28,25,.9);color:white;padding:20px 24px;border-left:2px solid var(--gold)}.photo-tag span{font-size:9px;letter-spacing:2px;display:block}.photo-tag strong{font:24px Georgia;display:block;margin-top:6px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid transparent;padding:15px 22px;font-size:12px;letter-spacing:.3px;font-weight:700;cursor:pointer;min-height:48px}.button:hover{filter:brightness(.95)}.gold{background:var(--gold);color:#211b12}.outline{border-color:#aaa08e;background:transparent}.dark{background:var(--dark);color:#fff}.light{background:#fff8e8;color:var(--dark)}.hero-sign{border-top:1px solid #d5cdbd;margin-top:38px;padding-top:25px;display:flex;flex-direction:column;gap:4px}.signature{font:italic 29px Georgia}.hero-sign>span:nth-child(2){font-size:9px;letter-spacing:1.4px}.hero-sign a{font-size:16px;text-decoration:none;margin-top:4px}.location-strip{padding:27px 5vw;background:#e7e1d5;display:flex;align-items:center;justify-content:space-between;gap:24px}.location-strip>span{font-size:9px;font-weight:bold;letter-spacing:1.7px}.location-strip p{font:17px Georgia;margin:0}.location-strip i{margin:0 12px;color:#a88a51}.section{padding:94px 7vw}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:8vw;align-items:end;margin-bottom:38px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:380px;color:var(--muted);font-size:15px;margin-bottom:4px}.services{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.service{display:block;padding:35px 30px;text-decoration:none;border-right:1px solid var(--line);transition:background .2s}.service:last-child{border:0}.service:hover{background:#eee8dc}.number{font-size:10px;letter-spacing:2px;color:#8c6c35}.service h3{margin:35px 0 20px}.service p{font-size:14px;color:var(--muted);max-width:280px;min-height:76px}.text-link{font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid #b59a70;padding-bottom:6px;display:inline-block}.story{background:#eae5db;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.story p{color:#625c52;font-size:15px}.story .large-copy{font:25px/1.5 Georgia;color:var(--ink)}.values{display:flex;flex-direction:column;border-top:1px solid #d4ccbe;margin:24px 0}.values span{padding:10px 0;border-bottom:1px solid #d4ccbe;font-size:13px}.values span:before{content:'✓';color:#927137;margin-right:15px}.value-banner{padding:70px 7vw;background:#43272d;color:#fff3dc;display:flex;align-items:center;gap:60px;justify-content:space-between}.value-banner>div{max-width:620px}.value-banner em{color:#dbb66f}.value-banner p{font-size:14px;max-width:500px;color:#e1d0c4;margin-bottom:0}.value-banner .button{white-space:nowrap}.calculator{display:grid;grid-template-columns:1.2fr 1fr;border:1px solid var(--line)}.calculator form{padding:35px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:12px;font-weight:600}input,textarea,select{display:block;width:100%;margin:7px 0 18px;padding:13px 12px;background:#fffdf8;border:1px solid #c9c1b3;border-radius:0;color:var(--ink);font-size:15px;min-width:0}input:focus,textarea:focus,select:focus{outline:2px solid #9f7b3e;outline-offset:1px}.form-grid input,.form-grid select{margin-bottom:0}.calculator .button{margin-top:22px}.estimate{background:#eae4d8;padding:40px;display:flex;flex-direction:column;justify-content:center}.estimate>p:first-child{font-size:10px;letter-spacing:1.6px}.estimate output{font:64px Georgia;letter-spacing:-2px}.estimate-breakdown{margin:28px 0;border-top:1px solid #c9c0af}.estimate-breakdown span{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #c9c0af;font-size:12px;gap:10px}.fineprint{font-size:11px!important;line-height:1.7;color:#696255}.team-section{background:#eae5db}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.team-card{display:grid;grid-template-columns:170px 1fr;gap:25px}.team-card h3{font-size:29px;margin-bottom:16px}.team-card .eyebrow{margin-bottom:7px}.team-card p:not(.eyebrow){font-size:13px;color:#645f55}.team-photo{height:255px;overflow:hidden;background:#d3c9b5}.team-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}.team-photo.francis img{object-position:50% 15%}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw}.faq details{border-bottom:1px solid #cfc6b7}.faq summary{cursor:pointer;padding:21px 25px 21px 0;font-size:15px;font-weight:600}.faq details p{font-size:14px;color:#6c6458;padding-right:25px}.contact{background:#e9e2d5;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact>div>p{font-size:14px;max-width:400px}.contact-phone{font:35px Georgia;text-decoration:none;display:block;margin:30px 0 18px}.inquiry-form .form-grid{margin-bottom:18px}.inquiry-form .fineprint{margin:0 0 18px}.inquiry-form .button{width:100%;margin-bottom:15px}footer{background:var(--dark);color:#eee4d4;padding:55px 7vw 25px}.footer-top{display:grid;grid-template-columns:1fr 1.3fr .8fr;gap:40px;font-size:12px}.footer-top .brand{display:block;font-size:24px}.footer-top .brand small{margin-bottom:18px}.footer-top strong{font:20px Georgia}.footer-top a{text-decoration:none;line-height:2}.footer-top p{color:#c3b8a5}.footer-bottom{border-top:1px solid #51483c;display:flex;gap:20px;flex-wrap:wrap;justify-content:space-between;margin-top:35px;padding-top:22px;font-size:9px;color:#b3a992}.mobile-contact{display:none}.page-intro{padding:75px 7vw;background:#eae5db}.page-intro h1{font-size:clamp(40px,5vw,67px)}.page-intro p{max-width:650px}.page-intro .actions{margin-top:24px}.guide{max-width:1000px;margin:auto}.guide-step{display:grid;grid-template-columns:65px 1fr;gap:25px;padding:28px 0;border-bottom:1px solid var(--line)}.guide-step>span{color:#9c7940;font:32px Georgia}.guide-step h2{font-size:27px;letter-spacing:-.5px;margin-bottom:14px}.guide-step p{font-size:15px;margin-bottom:0;color:#6c6559}.reviews{max-width:1000px;margin:auto}.reviews .section-inner>div{border-bottom:1px solid var(--line);padding:25px 0}.reviews .section-inner>div p:first-child{font:23px/1.5 Georgia}.reviews p{color:#6c6559;font-size:15px}#calc-error{color:#a52b2b;font-size:12px;margin-top:10px}@media(min-width:1500px){.hero-copy{padding-left:max(7vw,calc((100vw - 1250px)/2))}.hero{min-height:760px}}@media(max-width:1000px){nav{gap:16px}.hero-copy{padding:55px 4vw}.hero{min-height:600px}.hero-image{min-height:600px}h1{letter-spacing:-2px}.team-card{display:block}.team-photo{height:290px;margin-bottom:24px}.section{padding:65px 6vw}.value-banner{padding:55px 6vw;gap:28px}.location-strip{flex-direction:column;gap:8px}.team-grid{gap:30px}.calculator form,.estimate{padding:25px}}@media(max-width:700px){.topline{font-size:8px;letter-spacing:.6px;padding:9px 5vw}.topline a{font-size:10px;letter-spacing:0}header{padding:19px 5vw;position:relative}.brand{font-size:20px}.brand small{font-size:8px;letter-spacing:4px}.brand-symbol{font-size:34px}.menu-toggle{display:block;background:none;border:1px solid #c1b7a4;padding:9px 11px;font-size:12px}nav{display:none;position:absolute;left:0;right:0;top:100%;z-index:20;background:var(--cream);border-bottom:1px solid #cfc4b1;padding:22px 5vw;flex-direction:column;align-items:stretch;gap:18px}nav.open{display:flex}.hero{display:flex;flex-direction:column}.hero-copy{padding:45px 6vw 34px}.hero h1{font-size:49px;letter-spacing:-2px}.lead{font-size:15px;line-height:1.8}.hero .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:20px}.hero-image{min-height:530px}.portrait{object-position:50% 27%}.hero-sign{margin-top:25px;padding-top:20px}.photo-tag{bottom:20px;left:20px;right:20px;padding:16px 20px}.photo-tag strong{font-size:23px}.location-strip p{text-align:center;font-size:15px;line-height:1.7}.location-strip i{margin:0 5px}.section{padding:55px 6vw}.section-heading,.story,.faq,.contact{display:block}.section-heading>p{margin-top:22px;max-width:none}.services{display:block}.service{border-right:0;border-bottom:1px solid var(--line);padding:26px}.service h3{margin:20px 0 16px;font-size:34px}.service p{min-height:0;max-width:none}.story>div+div{margin-top:28px}.value-banner{display:block;padding:50px 6vw}.value-banner .button{margin-top:28px}.calculator{display:block}.form-grid{gap:15px}.estimate{padding:30px}.estimate output{font-size:56px}.team-grid{display:block}.team-card{margin-bottom:42px}.team-card:last-child{margin-bottom:0}.team-photo{height:350px}.team-photo.francis{height:420px}.faq>div+div{margin-top:24px}.contact .inquiry-form{margin-top:35px}.contact-phone{font-size:34px}.footer-top{display:block}.footer-top>div{margin-bottom:30px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}footer{padding:45px 6vw 95px}.mobile-contact{display:grid;grid-template-columns:1.2fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#201c19;color:white;box-shadow:0 -2px 15px #0002;padding-bottom:env(safe-area-inset-bottom)}.mobile-contact a{text-align:center;text-decoration:none;font-size:12px;padding:16px 8px}.mobile-contact a:first-child{background:var(--gold);color:#241c12;font-weight:700}.page-intro{padding:45px 6vw}.guide-step{grid-template-columns:35px 1fr;gap:17px}.guide-step>span{font-size:25px}.guide-step h2{font-size:25px}.eyebrow{margin-bottom:18px}.contact .form-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{header,.topline,footer,.mobile-contact,.actions,.skip,.value-banner{display:none!important}body{background:white;color:black}.section,.page-intro{padding:15px 0}.guide-step{break-inside:avoid}.guide{max-width:none}h1{font-size:35px}a{text-decoration:none}.page-intro:after{content:'Francis Brown · Grace Way Properties · 601-594-4958 · thegraceway.org';display:block;font-size:12px}}
