:root{--paper:#faf7f0;--ink:#203c3c;--muted:#536563;--accent:#ac4b30;--line:#d9ded5;--cream:#eee8da;--white:#fffefa;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.wrap{width:min(1160px,calc(100% - 80px));margin:auto}.header{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-top:27px;padding-bottom:27px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0;font:27px var(--serif);letter-spacing:-.7px}.brand small{display:block;font:9px var(--sans);letter-spacing:1.8px;margin-top:8px}.brand-sun{width:38px;height:25px;display:block;position:relative;border-bottom:2px solid var(--accent)}.brand-sun:before{content:'';position:absolute;width:27px;height:14px;border-radius:25px 25px 0 0;background:var(--accent);bottom:5px;left:5px}.brand-sun:after{content:'';position:absolute;width:25px;left:6px;bottom:-7px;border-bottom:1px solid var(--accent)}nav{display:flex;gap:26px;font-size:13px}nav a:hover,.text-link:hover,.footer a:hover{color:var(--accent)}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;padding:16px 23px;background:var(--ink);color:white;border:1px solid var(--ink);font-size:13px;font-weight:bold;cursor:pointer;border-radius:4px;transition:background .2s,transform .2s}.button:hover{background:#365552;transform:translateY(-1px)}.button-small{padding:12px 17px}.hero{display:grid;grid-template-columns:1.13fr 1fr;gap:64px;padding-top:69px;padding-bottom:72px;align-items:center}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:bold;line-height:1.8;margin:0 0 21px}.dot{display:inline-block;background:var(--accent);width:7px;height:7px;border-radius:50%;margin-right:8px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:normal;letter-spacing:-2.5px;line-height:1.08}h1{font-size:clamp(48px,5vw,71px);margin-bottom:25px}h1 em{color:var(--accent);font-weight:normal}h2{font-size:43px;letter-spacing:-1.6px;margin-bottom:22px}h3{font-size:19px;letter-spacing:-.4px;line-height:1.35}.intro{font-size:16px;line-height:1.85;max-width:455px;color:var(--muted);margin-bottom:28px}.actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.text-link{font-size:13px;font-weight:bold;text-decoration:underline;text-underline-offset:5px}.quiet{font-size:12px;color:var(--muted);line-height:1.7}.hero-note{margin:20px 0 0}.hero-art{height:489px;background:#ecd7b6;border-radius:180px 180px 8px 8px;position:relative;overflow:hidden;isolation:isolate;box-shadow:inset 0 0 60px #d98c5133}.art-top{position:absolute;top:58px;left:0;right:0;text-align:center;font-size:9px;letter-spacing:2.2px;z-index:4}.sun{position:absolute;width:176px;height:176px;border-radius:50%;background:#ca6944;top:107px;left:calc(50% - 88px);box-shadow:0 0 0 23px #ce795b12,0 0 0 47px #ce795b0d}.hill{position:absolute;border-radius:50% 50% 0 0;width:160%;height:340px}.hill-back{background:#a2a68c;top:245px;left:-40%;transform:rotate(15deg)}.hill-front{background:#496761;top:300px;left:-10%;transform:rotate(-14deg)}.road{width:190px;height:290px;border:22px solid #d3ccb2;border-left-color:transparent;border-top-color:transparent;border-radius:50%;transform:rotate(-25deg);position:absolute;top:315px;left:23%}.location-mark{position:absolute;top:287px;left:50%;transform:translateX(-50%);background:var(--white);border-radius:5px;box-shadow:0 5px 25px #203c3c1f;padding:12px 20px;display:flex;gap:10px;align-items:center;white-space:nowrap;font-size:13px}.location-mark>span:first-child{font-size:23px;color:var(--accent)}.art-bottom{position:absolute;bottom:24px;left:28px;right:28px;display:flex;justify-content:space-between;color:white;font-size:8px;letter-spacing:2px}.county-strip{background:var(--cream);padding:22px 0}.county-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px}.county-strip span{font-size:14px}.county-strip span:first-child{font-size:9px;font-weight:bold;letter-spacing:1.6px}.county-strip i{font-size:17px;color:var(--accent);font-style:normal}.section{padding-top:88px;padding-bottom:88px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:45px}.section-head h2{margin:0}.section-head>p{max-width:320px;color:var(--muted);font-size:14px;margin:0 0 5px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.steps article{border-top:1px solid var(--line);padding-top:24px}.step-number{display:block;color:var(--accent);font:italic 29px var(--serif);margin-bottom:20px}.steps p{font-size:14px;color:var(--muted);margin:0}.area-section{background:var(--ink);color:var(--paper);padding:70px 0}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.area-grid .eyebrow{color:#edb593}.area-grid p:not(.eyebrow){color:#d3dcd3;font-size:14px;max-width:410px}.area-grid .text-link{display:inline-block;margin-top:12px;color:#f0b797}.county-list>div{display:flex;gap:20px;align-items:center;border-bottom:1px solid #ffffff33;padding:24px 0}.county-list h3{margin:0;font:27px var(--serif)}.county-list>div>span{font-size:11px;color:#c3cebe}.county-list>div>span:last-child{margin-left:auto}.county-list>p{margin:18px 0 0;font-size:12px!important}.booking-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}.booking-copy>p:not(.eyebrow){color:var(--muted);max-width:330px}.contact-card{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:27px 0;margin:35px 0 20px}.contact-card .eyebrow{margin-bottom:12px}.contact-card>a{display:block;font-size:23px}.contact-card>a.email{font-size:16px;margin:6px 0 18px;overflow-wrap:anywhere}.contact-card>a.text-link{font-size:13px}.booking-form{background:var(--white);padding:35px;border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 35px #203c3c05}.booking-form h3{font:27px var(--serif);margin-bottom:10px}.form-intro{font-size:12px;color:var(--muted);margin-bottom:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}label{display:block;font-size:12px;font-weight:bold;margin-bottom:16px;min-width:0}input,select,textarea{display:block;width:100%;min-width:0;max-width:100%;border:1px solid #c6cfc6;background:var(--white);color:var(--ink);border-radius:3px;padding:11px 12px;margin-top:7px;font-size:16px;line-height:1.5}textarea{resize:vertical}input,select{min-height:48px}.booking-form>.button{width:100%;margin-top:8px}.booking-form .quiet{font-size:11px}#email-preview{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}#email-preview h4{margin:0}#email-preview>p{font-size:12px}#request-text{font-size:13px;margin:14px 0}.copy-button{padding:10px;background:transparent;border:1px solid var(--ink);color:var(--ink);border-radius:3px;cursor:pointer;font-size:13px}.faq-section{background:#eeeede;padding:75px 0}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-grid>div>p:not(.eyebrow){font-size:14px;color:var(--muted)}.faq-list details{border-bottom:1px solid #c8cec0}.faq-list summary{padding:20px 30px 20px 0;cursor:pointer;font-size:15px;position:relative;list-style:none;line-height:1.5;font-weight:bold}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;top:16px;font-size:23px;font-weight:normal}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:14px;color:var(--muted);padding-right:15px}.faq-list a{text-decoration:underline;text-underline-offset:3px}.source-note{font-size:11px!important;margin:22px 0 0}.closing{text-align:center;padding-top:77px;padding-bottom:80px}.closing h2{font-size:45px}.footer{background:#eee8da;padding-top:40px}.footer-grid{display:flex;justify-content:space-between;align-items:start;gap:32px}.footer-grid>div a{display:block;font-size:13px}.footer-grid p{font-size:12px}.footer-bottom{border-top:1px solid #cdd2c8;margin-top:30px;padding-top:19px;padding-bottom:19px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.mobile-actions{display:none}.skip{position:absolute;top:-100px;left:20px;background:var(--ink);color:white;padding:12px;z-index:50}.skip:focus{top:10px}
@media(min-width:1500px){.hero{gap:100px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}nav{gap:16px}.header{gap:15px}.brand{font-size:24px}.hero{gap:30px}.hero-art{height:465px}.booking-grid,.faq-grid{gap:40px}.area-grid{gap:50px}.booking-form{padding:25px}.hero .actions{gap:15px}.county-strip span:first-child{max-width:150px}.steps{gap:25px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{padding-top:24px;padding-bottom:22px;flex-wrap:wrap}.brand{font-size:23px}.brand small{font-size:8px;letter-spacing:1.2px}.brand-sun{width:32px}.header>.button{padding:10px 12px;font-size:11px;gap:7px}nav{order:3;justify-content:center;width:100%;gap:32px;margin-top:12px;font-size:12px}.hero{grid-template-columns:1fr;padding-top:39px;padding-bottom:40px;gap:35px}h1{font-size:57px}.hero-copy{max-width:510px}.hero-art{height:350px;border-radius:150px 150px 6px 6px;max-width:510px;width:100%;margin:auto}.art-top{top:30px}.sun{top:75px;width:135px;height:135px;left:calc(50% - 67.5px)}.hill-back{top:180px}.hill-front{top:225px}.road{top:230px;left:30%}.location-mark{top:210px}.art-bottom{bottom:20px}.county-strip{padding:20px 0}.county-strip .wrap{flex-wrap:wrap;gap:9px;justify-content:center}.county-strip span{font-size:11px}.county-strip span:first-child{max-width:none;width:100%;text-align:center;margin-bottom:7px;font-size:9px}.county-strip i{font-size:12px}.section{padding-top:55px;padding-bottom:55px}h2{font-size:36px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:20px;max-width:100%}.steps{grid-template-columns:1fr;gap:27px}.steps article{padding-top:18px}.step-number{margin-bottom:12px}.steps h3{margin-bottom:10px}.area-section{padding:50px 0}.area-grid{grid-template-columns:1fr;gap:25px}.county-list>div{padding:19px 0}.booking-grid,.faq-grid{grid-template-columns:1fr;gap:25px}.booking-copy>p:not(.eyebrow){max-width:100%}.contact-card{margin-top:25px}.booking-form{padding:24px 20px}.form-row{gap:12px}.faq-section{padding:50px 0}.faq-grid{gap:20px}.closing{padding-top:55px;padding-bottom:55px}.closing h2{font-size:37px}.footer-grid{flex-wrap:wrap;gap:24px}.footer-grid .brand{width:100%}.footer-bottom{font-size:9px;gap:15px}.footer{padding-bottom:68px}.mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1.5fr;background:var(--paper);border-top:1px solid var(--line);z-index:20;padding:9px 14px calc(9px + env(safe-area-inset-bottom));gap:10px}.mobile-actions a{text-align:center;padding:10px;font-size:13px;font-weight:bold;border:1px solid var(--ink);border-radius:3px}.mobile-actions a:last-child{background:var(--ink);color:white}}
@media(max-width:380px){.wrap{width:calc(100% - 28px)}.header>.button{font-size:10px;padding:9px}.brand{font-size:20px;gap:9px}.brand small{font-size:7px}h1{font-size:49px}.form-row{grid-template-columns:1fr}.hero .button{width:100%}.hero .actions{justify-content:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
