:root{--ink:#202726;--paper:#eee9df;--copper:#bd592d;--light:#f8f5ed;--line:#ffffff26}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--ink);color:var(--light);font:16px/1.45 'DM Sans',Arial,sans-serif}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #eead77;outline-offset:5px}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:500;letter-spacing:-.055em;line-height:1.04}h1{font-size:clamp(48px,5.8vw,82px);margin-bottom:28px}h2{font-size:clamp(36px,4.2vw,60px);margin-bottom:24px}h3{font-size:23px;line-height:1.16;font-weight:500;letter-spacing:-.025em}em{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;color:#e5ad87}p{max-width:62ch}header{display:flex;justify-content:space-between;align-items:center;min-height:108px;gap:24px}.brand{white-space:nowrap;text-decoration:none;font-size:26px;line-height:1.1;letter-spacing:-1px}.brand span{color:#e5ad87}.brand small{display:block;font-size:8px;letter-spacing:1.2px;margin-top:9px}.nav-cta{font-size:13px;text-decoration:none;min-height:44px;display:flex;align-items:center;border-bottom:1px solid #b49a79}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;margin-bottom:24px}.hero{position:relative;background:radial-gradient(ellipse at 60% 80%,#78654a25,transparent 60%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;padding-top:35px;padding-bottom:75px}.hero-copy{position:relative;z-index:1}.intro{font-size:18px;max-width:490px;color:#d8d8cd;margin-bottom:28px}.btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:22px;min-height:54px;padding:16px 23px;background:var(--copper);color:#fff;text-decoration:none;font-weight:500;font-size:14px;border-radius:3px;cursor:pointer;transition:transform .2s,background .2s}.btn:hover{background:#a74721;transform:translateY(-2px)}.btn span{font-size:21px;line-height:1}.micro{font-size:12px;color:#c4c5bb;margin:14px 0}.hero-work{position:relative;max-width:480px;margin:auto;transform:rotate(3deg);border:1px solid #b79e783f;box-shadow:0 25px 55px #0006}.hero-work img{width:100%;height:570px;object-fit:cover;object-position:center 55%;display:block}.work-label{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;padding:14px 18px;background:#303b38}.pencil{position:absolute;right:-28px;bottom:28px;background:#e7c399;color:#37291e;padding:17px 24px;font:italic 500 29px/.95 'Cormorant Garamond',Georgia,serif;transform:rotate(-8deg);box-shadow:5px 5px 0 #0002}.bottom-line{border-top:1px solid var(--line);padding:22px 0;display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.04em;color:#c9c8bb}.paper{position:relative;background:var(--paper);color:var(--ink);padding:95px 0 70px}.paper:before{content:'';position:absolute;top:-1px;left:0;right:0;height:19px;background:var(--ink);clip-path:polygon(0 0,100% 0,100% 20%,93% 75%,86% 35%,76% 90%,64% 20%,51% 70%,36% 25%,21% 80%,8% 30%,0 65%)}.paper em,.personal em,.faq em{color:#93502e}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin:48px 0 42px}.three article{border-top:1px solid #a99e8b;padding-top:20px;position:relative}.three h3{font-size:27px}.three p{font-size:15px;color:#5f6258}.draw{display:block;font:36px/1 Georgia;color:#a95029;margin-bottom:20px}.price-line{display:flex;justify-content:space-between;align-items:center;gap:45px;border-top:1px solid #b9b1a1;padding-top:30px}.price-line strong{font-size:20px;font-weight:500}.price-line p{font-size:14px;margin:10px 0 0;color:#606257}.price{min-width:165px;border-left:1px solid #b9b1a1;padding-left:28px}.price small{font-size:11px;text-transform:uppercase;letter-spacing:.1em;display:block}.price strong{font-size:43px;letter-spacing:-.05em;display:block}.price a{font-size:12px;display:inline-flex;padding:8px 0}.projects{padding:95px 0;background:#151b1c}.horizontal{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.horizontal>p{max-width:350px;color:#bfc4bf;font-size:15px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}figure{margin:0}.project-open{display:block;position:relative;background:none;border:0;padding:0;width:100%;cursor:zoom-in;text-align:left;overflow:hidden}.project-open img{width:100%;height:auto;display:block;transition:transform .35s}.project-open:hover img{transform:scale(1.025)}.project-open>span{position:absolute;right:12px;bottom:12px;background:#f7f3e9;color:#272c2a;font-size:11px;border-radius:2px;padding:10px 13px;box-shadow:0 2px 15px #0003}figcaption{padding:18px 0 10px}figcaption small{color:#d4aa83;letter-spacing:.1em;text-transform:uppercase;font-size:10px}figcaption h3{font-size:19px;margin:5px 0}.more-work{border-top:1px solid var(--line);margin-top:28px}.more-work summary{padding:20px 0;display:flex;justify-content:space-between;font-size:14px;cursor:pointer}.extra{grid-template-columns:repeat(2,minmax(0,1fr));max-width:795px;margin:12px auto 0}.process{padding:90px 0;background:linear-gradient(120deg,#2e3d38,#202c28);background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px),linear-gradient(120deg,#2e3d38,#202c28);background-size:55px 55px,55px 55px,auto}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:42px}.steps article{border-top:1px solid #9f9f89;padding-top:22px}.steps article>span{font-size:12px;color:#e2b48b;display:block;margin-bottom:24px}.steps p{font-size:15px;color:#d0d7cf}.steps h3{font-size:23px}.personal{background:var(--paper);color:var(--ink);padding:90px 0}.personal-grid{display:grid;grid-template-columns:.85fr 1fr;gap:85px;align-items:center}.portrait{position:relative;transform:rotate(-2deg);max-width:420px}.portrait img{display:block;width:100%;height:440px;object-fit:cover;object-position:40% 40%;filter:saturate(.7);border:10px solid #faf7ee;box-shadow:15px 18px 0 #cdbd9f}.portrait span{position:absolute;bottom:22px;left:24px;right:24px;padding:14px;background:#f8f0e1;color:#5c3d2b;font:italic 27px/1 'Cormorant Garamond',Georgia,serif;text-align:center}.personal p{color:#53594f}.text-link{display:inline-flex;min-height:44px;align-items:center;text-underline-offset:6px;font-size:14px}.booking{padding:95px 0;background:radial-gradient(ellipse at 90% 20%,#82644022,transparent 65%),#19211f;border-top:5px solid #b2693d}.booking-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:65px;align-items:start}.booking h2{font-size:clamp(36px,3.8vw,55px)}.booking p{color:#cbd0c6}.appointment{border-left:2px solid #cf9c6e;padding:10px 0 10px 19px;margin:28px 0}.appointment strong,.appointment span{display:block}.appointment span{font-size:14px;color:#bbc3b7;margin-top:7px}.calendar-shell{background:#f5f1e8;color:#252e28;border-radius:5px;overflow:hidden;box-shadow:0 20px 50px #0003}.calendar-top{display:flex;justify-content:space-between;gap:15px;background:#d9c2a4;padding:19px;font-size:10px;letter-spacing:.08em}#booking-gate{padding:35px 30px}#booking-gate h3{font-size:29px}#booking-gate p{color:#505b51;font-size:15px}#booking-gate .btn{width:100%}#booking-gate small{display:block;font-size:11px;color:#666b61;margin-top:20px}.calendar-fallback{margin:0;padding:12px 20px 20px;font-size:11px}.calendar-fallback a{color:#535b50}.booking-frame{display:block;width:100%;height:1400px;border:0;background:#fff}.faq{padding:75px 0;background:var(--paper);color:var(--ink)}.faq-grid{display:grid;grid-template-columns:.6fr 1fr;gap:80px}.faq details{border-bottom:1px solid #bfb7a8}.faq summary{padding:19px 28px 19px 0;cursor:pointer;font-size:17px}.faq details p{font-size:15px;color:#5c6258;padding-bottom:14px}.alternative{font-size:13px;color:#61665d;margin-top:25px}.alternative a{display:inline-block;text-underline-offset:4px}dialog{border:0;padding:56px 14px 15px;background:#17211e;color:white;max-width:min(650px,96vw);max-height:94dvh;overflow:auto}dialog::backdrop{background:#000c}dialog img{width:100%;height:auto;display:block}dialog button{position:absolute;right:14px;top:10px;min-height:38px;background:#f5f0e5;color:#28352b;border:0;padding:8px 18px;cursor:pointer}dialog p{margin:16px 0 0}body:has(dialog[open]){overflow:hidden}
@media(max-width:900px){.hero-grid{gap:35px}.hero-work img{height:520px}.personal-grid,.booking-grid{gap:40px}.three,.steps{gap:25px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}header{min-height:90px}.brand{font-size:23px}.brand small{font-size:7px}.nav-cta{display:none}.hero-grid{grid-template-columns:1fr;gap:30px;padding-top:26px;padding-bottom:38px}h1{font-size:clamp(45px,11.8vw,66px)}h2{font-size:38px}.intro{font-size:16px}.hero .btn{width:100%;font-size:13px;padding:15px}.hero-work{max-width:370px;width:calc(100% - 20px);transform:rotate(2deg)}.hero-work img{height:365px;object-position:center 57%}.pencil{right:-12px;font-size:24px;padding:13px 19px}.bottom-line{display:block;font-size:10px}.bottom-line span{display:block;margin:4px 0}.eyebrow{font-size:10px;margin-bottom:19px}.paper,.projects,.process,.personal,.booking{padding:60px 0}.three,.steps{grid-template-columns:1fr;gap:23px;margin:30px 0}.three article{padding-left:46px;padding-top:19px}.draw{position:absolute;left:0;top:20px;font-size:29px}.three h3{font-size:24px}.three h3 br{display:none}.three p{margin-bottom:0}.price-line{gap:20px;align-items:start}.price-line>div:first-child{flex:1}.price-line strong{font-size:18px}.price{min-width:95px;padding-left:17px}.price strong{font-size:32px}.price a{font-size:11px}.horizontal{display:block;margin-bottom:25px}.horizontal>p{max-width:none}.project-grid{display:flex;overflow-x:auto;gap:18px;scroll-snap-type:x mandatory;padding-bottom:15px}.project-grid figure{flex:0 0 82%;scroll-snap-align:start}.project-open img{width:100%;height:auto}.extra{margin-top:10px}.steps article{padding-top:16px}.steps article>span{margin-bottom:13px}.steps p{margin-bottom:0}.personal-grid,.booking-grid,.faq-grid{grid-template-columns:1fr;gap:35px}.portrait{max-width:330px;margin:0 auto 10px}.portrait img{height:355px}.personal h2{margin-top:10px}.personal p{font-size:15px}.booking h2{font-size:38px}#booking-gate{padding:26px 20px}#booking-gate .btn{font-size:13px;padding:15px 12px;gap:12px}.calendar-top{font-size:9px;padding:15px}.booking-frame{height:1500px}.faq{padding:55px 0}.faq-grid{gap:0}.faq summary{font-size:16px}.faq h2 br{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.project-open img{transition:none}}

/* Portrait variant belongs only to this landing page. */
.hero-person{max-width:510px;transform:rotate(1deg)}.hero-person img{height:auto;aspect-ratio:1122/1402;object-fit:contain}.hero-person .pencil{display:none}
@media(max-width:760px){.hero-person{max-width:400px;transform:none;width:100%}.hero-person img{height:auto;object-fit:contain}}

.personal .portrait img{height:auto;aspect-ratio:1122/1402;object-fit:contain}

/* Bright personal section, scoped to the handcraft page. */
.personal{background:#faf6ee}.personal .portrait{transform:none}.personal .portrait img{filter:none;border:0;border-radius:3px;box-shadow:0 14px 35px #87674c14}.personal .portrait span{position:relative;display:block;inset:auto;margin:0;padding:17px 10px;background:transparent;color:#864c30}.personal p{color:#43443d}

/* Clear, light editorial direction for handcraft businesses. */
body{background:#faf6ee;color:#252b29}header .brand span{color:#9a4828}.hero{background:none}.hero-grid{padding-top:12px;gap:50px}h1{font-size:clamp(46px,4.8vw,68px);font-weight:600}h2{font-size:clamp(34px,3.8vw,52px)}h1 em,h2 em{font-family:inherit;font-style:normal;font-weight:500;color:#a04c2a;letter-spacing:inherit}.intro,.micro,.bottom-line{color:#555a53}.bottom-line{border-color:#d7cdbf}.hero-person{border:0;box-shadow:none;transform:none;max-width:480px}.hero-person .work-label{display:none}.hero-person img{border-radius:0;mix-blend-mode:multiply}.paper:before{display:none}.paper{background:#eee8dc}.projects{background:#fffdf8;color:#252b29}.horizontal>p{color:#555a53}figcaption small{color:#9a4828}.more-work{border-color:#d7cdbf}.process{background:#e7dfd0;color:#252b29}.steps p{color:#50564f}.steps article>span{color:#914327}.steps article{border-color:#b8aa94}.booking{background:#efe8dc;color:#252b29;border-top:1px solid #cbbb9f}.booking p,.appointment span{color:#51594e}.calendar-shell{box-shadow:0 8px 28px #4939240c;border:1px solid #d5c9b6}.faq{background:#faf6ee}.draw{font-family:Arial,sans-serif}.project-open>span{box-shadow:none}.btn:hover{transform:none}
@media(max-width:760px){h1{font-size:clamp(42px,10.6vw,58px)}.hero-grid{gap:22px}.hero-person{max-width:400px}.hero-person img{height:auto}.personal .portrait{max-width:370px}}

/* Original-photo reference hero and earlier evidence. */
.hero-grid{grid-template-columns:1fr 1.15fr;gap:36px;padding-bottom:45px}.hero-person{max-width:none;width:100%;align-self:center}.hero-person img{aspect-ratio:4/3;object-fit:cover;mix-blend-mode:normal;border-radius:4px}.hero h1{font-size:clamp(43px,4.6vw,66px)}.projects{border-top:1px solid #d8cbb8;padding-top:65px}.process .steps{gap:0}.process .steps article{padding:24px 28px;border-top:3px solid #b3653c;border-right:1px solid #b8aa94}.process .steps article:first-child{padding-left:0}.process .steps article:last-child{border-right:0}.projects .section-heading{max-width:1100px}.hero .work-label{display:none}
@media(max-width:760px){.hero-grid{grid-template-columns:1fr;gap:25px}.hero h1{font-size:clamp(42px,10.6vw,58px)}.hero-person{max-width:none}.hero-person img{height:auto}.process .steps article,.process .steps article:first-child{padding:22px 0;border-right:0;border-top:1px solid #b8aa94}.projects{padding-top:50px}}

/* One continuous hero photograph, with text in its quiet area. */
body>header{position:absolute;z-index:5;left:0;right:0;top:0}.hero-full{position:relative;background:#f5f0e7;padding-top:108px}.hero-background{position:absolute;inset:0;display:block}.hero-background img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-full .hero-grid{position:relative;display:block;min-height:560px;padding-top:32px;padding-bottom:48px}.hero-full .hero-copy{max-width:550px;width:47%}.hero-full h1{font-size:clamp(43px,4.4vw,64px)}.hero-full .intro{font-size:17px}.hero-full .bottom-line{position:relative;border:0;background:#faf6eeed;width:100%;padding:18px max(40px,calc((100vw - 1200px)/2));color:#41483e}.hero-full:after{content:none}
@media(min-width:1700px){.hero-full .hero-grid{min-height:650px}}
@media(max-width:760px){body>header{min-height:82px}.hero-full{padding-top:390px}.hero-background{bottom:auto;height:470px}.hero-background img{object-position:76% top}.hero-full:before{content:'';position:absolute;z-index:1;top:305px;left:0;right:0;height:170px;background:linear-gradient(transparent,#f5f0e7 90%)}.hero-full .hero-grid{min-height:0;padding-top:20px;padding-bottom:30px;z-index:2}.hero-full .hero-copy{width:100%;max-width:none}.hero-full h1{font-size:clamp(40px,10.4vw,58px)}.hero-full .intro{font-size:16px}.hero-full .bottom-line{padding:17px 20px}.hero-full .micro{font-size:12px}}

/* Clear actions and restrained explanatory icons. */
.ui-icon{display:inline-block;width:22px;height:22px;flex:none;vertical-align:middle}.nav-cta{background:#a54f2b;color:#fff;border:1px solid #a54f2b;border-radius:4px;padding:14px 20px;gap:10px;font-size:14px;font-weight:600;box-shadow:0 4px 14px #51361e15}.nav-cta:hover{background:#813c20}.nav-cta:focus-visible{outline:3px solid #202726;outline-offset:4px}.draw .ui-icon{width:32px;height:32px}.steps article>span{display:flex;gap:10px;align-items:center}.appointment{position:relative;padding-left:52px}.appointment>.ui-icon{position:absolute;left:16px;top:13px;color:#9a4828}
body>footer.site-footer{background:#eee6d8!important;color:#302e28!important}body>footer.site-footer:before{height:2px;background:#b56c43}body>footer.site-footer .brand{color:#302e28!important}body>footer.site-footer .brand span{color:#9a4828!important}body>footer.site-footer p,body>footer.site-footer .links{color:#5c574b}body>footer.site-footer .links a:hover{color:#934323}body>footer.site-footer .links a:last-child{border-color:#b9a389}body>footer.site-footer a:focus-visible{outline-color:#934323}

.personal .personal-note{font-size:12px;margin-top:14px;line-height:1.45}.personal .btn{margin-top:8px}@media(max-width:760px){.personal .btn{width:100%;font-size:13px;padding:15px 12px;gap:12px}}
