@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:root{--ink:#313b33;--muted:#687066;--cream:#faf9f5;--yellow:#f5dc75;--line:#dcded3;--sage:#e6e9dc;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.7 'DM Sans',sans-serif}a{color:inherit}button,input,textarea,select{font:inherit}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #927529;outline-offset:5px}.skip{position:absolute;top:-100px;left:20px;padding:10px;background:var(--yellow);z-index:100}.skip:focus{top:10px}.shell{width:min(1240px,90%);margin:auto}.announcement{text-align:center;padding:7px 15px;font-size:10px;letter-spacing:2px;text-transform:uppercase;background:#e9ecdf}.header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{text-decoration:none;display:flex;gap:13px;align-items:center}.brand svg{width:43px;height:43px}.wordmark{font:31px/1 var(--serif);letter-spacing:-1px}.wordmark small{display:block;font:8px/1.8 'DM Sans',sans-serif;letter-spacing:4px;margin:7px 0 0 4px}.nav{display:flex;align-items:center;gap:30px}.nav a{text-decoration:none;font-size:12px}.nav a[aria-current=page]:not(.button){border-bottom:1px solid var(--ink)}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:14px 24px;border:1px solid var(--ink);border-radius:3px;text-decoration:none;background:var(--ink);color:white;font-size:12px;font-weight:600;cursor:pointer;line-height:1.5}.button.yellow{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}.button.light{background:transparent;color:var(--ink);border-color:#bac0b4}.button:hover{filter:brightness(.94);transform:translateY(-1px)}.nav .button{padding:11px 20px}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:8px 12px}.eyebrow{font-size:10px;letter-spacing:2.7px;font-weight:600;text-transform:uppercase;margin:0 0 22px}.hero{display:grid;grid-template-columns:0.95fr 1.05fr;gap:70px;align-items:center;padding:35px 0 70px}.hero-copy{padding-bottom:15px}h1,h2,h3,p{margin-top:0}h1{font:clamp(44px,5.1vw,73px)/1.07 var(--serif);letter-spacing:-2.8px;margin-bottom:26px;font-weight:400}h1 em,h2 em{font-weight:400}h2{font:clamp(34px,3.6vw,49px)/1.16 var(--serif);letter-spacing:-1.5px;font-weight:400;margin-bottom:24px}h3{font:29px/1.2 var(--serif);font-weight:400;letter-spacing:-.6px}.hero-copy>p:not(.eyebrow){max-width:380px;color:var(--muted);font-size:14px;line-height:1.9}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.hero-note{display:flex;align-items:center;gap:9px;font-size:10px;color:var(--muted);margin-top:24px}.hero-note i{display:block;width:6px;height:6px;border-radius:50%;background:#9da583}.hero-art{position:relative;padding:0 14px 25px 0}.photo{position:relative;overflow:hidden;background:#e5e7de}.photo img{display:block;width:100%;height:100%;object-fit:cover}.photo::after{content:'PHOTO PLACEHOLDER';position:absolute;left:12px;bottom:12px;font-size:8px;letter-spacing:1.8px;padding:5px 9px;background:#faf9f5df;color:#414c43;border-radius:2px}.hero-art>.photo{height:500px;border-radius:150px 3px 3px 3px}.hero-art::before{content:'';position:absolute;inset:18px 0 10px 17px;border:1px solid #bfc6b8;border-radius:150px 3px 3px 3px;z-index:-0}.hero-art .photo{z-index:1}.sun-badge{position:absolute;left:-34px;bottom:45px;z-index:2;width:106px;height:106px;border-radius:50%;background:var(--yellow);display:grid;place-content:center;transform:rotate(-12deg);font-size:10px;text-align:center;line-height:1.6}.sun-badge span{font:30px/1 var(--serif)}.scribble{position:absolute;right:-12px;top:-30px;font-size:66px;color:#b9a054;font-weight:400;z-index:3}.ribbon{border-block:1px solid var(--line);padding:20px 0}.ribbon .shell{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;letter-spacing:1.5px;text-transform:uppercase}.ribbon b{font-size:16px;color:#a0914c;font-weight:400}.section{padding:95px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.text-link{font-size:12px;text-underline-offset:6px;white-space:nowrap}.work-grid{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:25px}.work-grid figure{margin:0}.work-grid .photo{height:330px;border-radius:2px}.work-grid figure:nth-child(2){padding-top:50px}.work-grid figcaption{display:flex;justify-content:space-between;font-size:12px;margin-top:15px}.work-grid figcaption span{font-size:10px;color:var(--muted)}.intro{background:var(--sage)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.intro .photo{height:450px;border-radius:3px 140px 3px 3px}.copy p{color:var(--muted);font-size:14px}.handwritten{font:italic 32px/1.5 var(--serif);color:#69734e!important;margin:24px 0}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.service-card{border:1px solid var(--line);padding:38px;background:#fffefa;border-radius:3px}.service-card .price{font:43px/1.2 var(--serif);letter-spacing:-1px}.service-card .price small{font:12px/1.5 'DM Sans',sans-serif;letter-spacing:0;color:var(--muted);margin-left:8px}.service-card h3{margin-bottom:8px}.service-card .subtitle{font-size:12px;color:var(--muted);min-height:22px}.service-card ul{list-style:none;margin:24px 0 30px;padding:0;border-top:1px solid var(--line)}.service-card li{padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.service-card li::before{content:'+';color:#8b7d3a;margin-right:12px}.service-card .button{width:100%}.events{margin-top:26px;background:var(--sage);padding:30px 35px;display:flex;align-items:center;justify-content:space-between;gap:30px}.events h3{font-size:25px;margin-bottom:8px}.events p{font-size:12px;margin:0;max-width:620px;color:var(--muted)}.testimonials{text-align:center;padding:60px 20px;border-block:1px solid var(--line);margin-top:70px}.testimonials h3{margin-bottom:12px}.testimonials p{max-width:490px;margin:auto;color:var(--muted);font-size:13px}.tag{display:inline-block;font-size:9px;letter-spacing:1.5px;background:var(--sage);padding:5px 10px;margin-bottom:20px}.cta{background:var(--yellow);padding:65px 0}.cta .shell{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta h2{margin-bottom:10px}.cta p{font-size:13px;margin-bottom:0}.footer{padding:45px 0 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:40px}.footer-nav{display:flex;gap:25px;font-size:11px}.footer-nav a{text-decoration:none}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.page-top{padding:45px 0 25px;text-align:center;max-width:720px;margin:auto}.page-top p:not(.eyebrow){max-width:540px;margin:0 auto;color:var(--muted);font-size:14px}.page-top h1{font-size:59px}.page-section{padding:35px 0 85px}.filter-bar{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:10px 0 40px}.filter-bar button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:9px 17px;border-radius:30px;cursor:pointer;font-size:11px}.filter-bar button[aria-pressed=true]{background:var(--ink);color:white}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.portfolio-grid figure{margin:0}.portfolio-grid .photo{height:360px}.portfolio-grid figure:nth-child(2n) .photo{height:290px}.portfolio-grid figcaption{font-size:12px;margin:10px 0 24px}.portfolio-grid [hidden]{display:none}.notice{font-size:12px;color:var(--muted);border-left:2px solid #b6a15d;padding:10px 18px;margin:25px 0;background:#f3f1e7}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;padding-top:30px}.contact-side h2{font-size:43px}.contact-side p{color:var(--muted);font-size:14px}.contact-side .detail{border-top:1px solid var(--line);padding-top:20px;margin-top:30px;font-size:12px}.form{background:#fffefa;border:1px solid var(--line);padding:38px}.form label{display:block;font-size:12px;margin-bottom:20px}.form input,.form textarea,.form select{display:block;width:100%;border:1px solid #cbd0c4;border-radius:2px;padding:12px;background:transparent;color:var(--ink);margin-top:7px}.form textarea{resize:vertical;min-height:130px}.form .button{width:100%}.form small{display:block;font-size:10px;line-height:1.7;color:var(--muted);margin:15px 0}.form-result{margin-top:20px;font-size:13px;background:var(--sage);padding:16px}.book-panel{max-width:740px;margin:20px auto 65px;text-align:center;border:1px solid var(--line);padding:55px;background:#fffefa}.book-panel .sun-icon{width:60px;height:60px;margin:0 auto 20px}.book-panel p{color:var(--muted);font-size:14px}.book-panel .actions{justify-content:center}.faq{max-width:820px;margin:55px auto 0}.faq h2{text-align:center;font-size:36px}.faq details{border-bottom:1px solid var(--line);padding:18px 0;font-size:13px}.faq summary{cursor:pointer}.faq details p{color:var(--muted);margin:16px 0 0}.about-text{max-width:560px}.about-text p{font-size:15px;line-height:1.95;color:var(--muted)}.about-text h1{font-size:58px}.preview-note{font-size:11px;color:var(--muted);text-align:center;margin-top:28px}.privacy{max-width:700px;margin:auto}.privacy h2{font-size:28px;margin-top:35px}.privacy p{font-size:14px;color:var(--muted)}
@media(min-width:1500px){.hero{padding-top:55px}.hero-art>.photo{height:550px}}@media(max-width:950px){.nav{gap:17px}.hero{gap:35px}.hero-art>.photo{height:440px}h1{font-size:55px}.two-col{gap:45px}.contact-layout{gap:40px}.work-grid .photo{height:280px}}@media(max-width:700px){.announcement{font-size:8px;letter-spacing:1.3px}.header{height:90px}.wordmark{font-size:27px}.brand svg{width:36px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:118px;left:0;right:0;z-index:10;background:var(--cream);padding:25px 5%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:20px}.nav.open{display:flex}.hero{grid-template-columns:1fr;padding:30px 0 45px;gap:40px}.hero-copy{padding:0}h1{font-size:54px;letter-spacing:-2px}.hero-copy>p:not(.eyebrow){max-width:100%}.hero-art{margin-left:25px}.hero-art>.photo{height:400px;border-top-left-radius:130px}.sun-badge{width:88px;height:88px;left:-23px;bottom:40px;font-size:9px}.sun-badge span{font-size:25px}.ribbon .shell{justify-content:center;gap:15px;flex-wrap:wrap;font-size:8px}.section{padding:60px 0}.section-heading{align-items:start}.section-heading h2{font-size:34px}.section-heading>.text-link{font-size:10px}.work-grid{grid-template-columns:1fr;gap:28px}.work-grid figure:nth-child(2){padding:0}.work-grid .photo{height:360px}.two-col,.service-grid,.contact-layout{grid-template-columns:1fr;gap:35px}.intro .photo{height:370px}.service-card{padding:28px}.events{align-items:start;flex-direction:column;padding:26px}.testimonials{margin-top:45px}.cta{padding:45px 0}.cta .shell{align-items:start;flex-direction:column;gap:25px}.footer-top{align-items:start;flex-direction:column;gap:25px}.footer-nav{flex-wrap:wrap;gap:18px}.footer-bottom{gap:15px;flex-direction:column}.page-top{padding:25px 0}.page-top h1{font-size:45px}.portfolio-grid{grid-template-columns:1fr 1fr;gap:16px}.portfolio-grid .photo,.portfolio-grid figure:nth-child(2n) .photo{height:250px}.form{padding:25px}.contact-layout{padding-top:0}.book-panel{padding:30px 20px}.about-text h1{font-size:48px}.page-section{padding-bottom:55px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button:hover{transform:none}}
