:root{--ink:#302331;--plum:#4a2946;--rose:#ecd8d6;--cream:#fcf9f6;--line:#d6c7c9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}button,a,input,select,textarea{outline-offset:5px}img{display:block;width:100%;height:auto}.skip{position:absolute;top:-100px}.skip:focus{top:8px;background:white;z-index:10}header{display:flex;align-items:center;justify-content:space-between;padding:25px 5%;gap:30px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-family:Georgia,serif;font-size:32px;line-height:1.1;white-space:nowrap}.brand span{display:block;font:12px Arial,sans-serif;text-align:center;margin-top:9px;letter-spacing:3px}nav{display:flex;gap:32px;align-items:center;font-size:14px}nav a{text-decoration:none}.nav-button{border:1px solid var(--ink);padding:12px 18px}.menu{display:none}.hero{padding:46px 5% 60px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:7%}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:600;line-height:1.7}.hero h1{font:clamp(52px,5.4vw,86px)/1.04 Georgia,serif;letter-spacing:-3px;margin:28px 0}.hero h1 em,h2 em,h3 em{font-weight:normal;color:var(--plum)}.lede{font-size:18px;max-width:470px;line-height:1.8;margin:30px 0}.button{display:inline-block;background:var(--plum);color:white;border:1px solid var(--plum);padding:16px 23px;text-decoration:none;font-size:14px;cursor:pointer;transition:background .2s}.button:hover{background:#673e60}.underlink{display:block;width:fit-content;font-size:14px;margin-top:22px}.hero-note{font-size:11px;letter-spacing:1.3px;margin-top:55px}.hero-image{margin:0}.hero-image img{height:590px;object-fit:cover;object-position:center 48%;border-radius:200px 200px 0 0}figcaption{display:flex;justify-content:space-between;gap:12px;font-size:12px;padding-top:14px;line-height:1.5}figcaption span:first-child{letter-spacing:1px}.ribbon{background:var(--rose);display:flex;justify-content:center;gap:10%;padding:25px 5%;font:italic 23px Georgia,serif}.section{padding:95px 7%;scroll-margin-top:20px}h2{font:clamp(38px,4vw,62px)/1.1 Georgia,serif;letter-spacing:-1.5px;margin:18px 0 30px}h3{font:32px/1.15 Georgia,serif;font-weight:normal}.intro{display:grid;grid-template-columns:1fr 1fr;gap:15px 9%;align-items:center}.intro>.eyebrow{grid-column:1/-1}.intro>div{max-width:530px}.intro p{margin:0 0 20px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:35px}.section-top>p{max-width:360px;margin-bottom:32px}.services{background:#f2e9e7}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}article{padding:35px 32px 15px 0}article+article{padding-left:32px;border-left:1px solid var(--line)}.number{font:italic 28px Georgia,serif;color:#865e7d}article p{font-size:16px}article ul{list-style:none;padding:0;font-size:14px;line-height:2}article li:before{content:'·';padding-right:10px}.price{border-top:1px solid var(--line);padding-top:24px;margin-top:28px;font-size:11px;letter-spacing:1px}.price strong{display:block;font:20px Georgia,serif;letter-spacing:0;margin-top:8px}article a{font-size:14px}.work-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:50px}.work-grid figure{margin:0}.work-grid figure img{max-height:650px;object-fit:cover}.work-detail{display:flex;flex-direction:column}.work-detail>img{height:300px;object-fit:cover}.work-detail>div{padding:25px 0 0}.work-detail h3{font-size:42px;margin:15px 0}.work-detail p{max-width:420px}.credit{font-size:12px}.process{background:var(--plum);color:var(--cream)}.process h2 em{color:#efcfcd}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.steps>div{border-top:1px solid #886c82;padding-top:25px}.steps span{font-size:12px;letter-spacing:2px}.steps h3{font-size:26px}.steps p{color:#e0d0dc}.inquiry{display:grid;grid-template-columns:1fr 1.2fr;gap:9%}.inquiry>div>p{max-width:370px}.contact{margin-top:40px}.contact a{font:27px Georgia,serif}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:flex;flex-direction:column;font-size:14px;gap:8px}.full{grid-column:1/-1}input,select,textarea{border:1px solid #bcaab4;background:transparent;color:var(--ink);padding:12px;width:100%;border-radius:0;font-size:16px}textarea{resize:vertical}.inquiry button{margin-top:25px}.small{font-size:12px;line-height:1.8}#status{font-size:14px}footer{padding:45px 5%;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px}footer p{font-family:Georgia,serif;font-size:20px}footer p span{font:12px Arial,sans-serif}footer .small{font:12px Arial,sans-serif}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:900px){nav{gap:18px}.hero{gap:5%}.hero-image img{height:510px}.hero h1{font-size:60px}.hero-note{font-size:10px}.section{padding:70px 5%}.service-grid{gap:0}article{padding-right:20px}article+article{padding-left:20px}.work-grid{gap:25px}.inquiry{gap:5%}}@media(max-width:650px){header{padding:20px 6%;position:relative}.brand{font-size:27px}.brand span{font-size:10px}.menu{display:block;background:transparent;border:1px solid var(--line);padding:9px 14px;font-size:14px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);padding:25px;z-index:5;border-bottom:1px solid var(--line);align-items:stretch}nav.open{display:flex;flex-direction:column;gap:22px}.hero{grid-template-columns:1fr;padding:45px 6%;gap:40px}.hero h1{font-size:59px;letter-spacing:-2px}.lede{font-size:17px}.hero-note{margin-top:30px;font-size:10px}.hero-image img{height:auto;max-height:650px;aspect-ratio:4/5;object-fit:cover;border-radius:160px 160px 0 0}figcaption{font-size:11px}.ribbon{gap:15px;flex-wrap:wrap;font-size:19px;padding:22px 6%}.section{padding:65px 6%}.intro,.inquiry{grid-template-columns:1fr;gap:25px}.section-top{display:block}.section-top>p{max-width:100%}.service-grid{grid-template-columns:1fr}article,article+article{border-left:0;border-bottom:1px solid var(--line);padding:30px 0}.service-grid h3 br{display:none}.work-grid{grid-template-columns:1fr;gap:35px}.work-detail>img{height:320px}.steps{grid-template-columns:1fr;gap:15px}.steps h3{margin:18px 0}.form-grid{gap:18px}.inquiry form{margin-top:10px}footer{flex-direction:column;text-align:center;padding:35px 6%}h2{font-size:43px}footer p{margin:10px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
header .brand{width:285px;flex-shrink:0}header .brand img{width:100%;height:auto}footer .brand{width:310px;max-width:100%}.hero-image img{height:650px;object-fit:contain;border-radius:0;background:#eee7e8}.fairy-gallery{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:start;margin-bottom:65px}.fairy-gallery figure{margin:0}.fairy-gallery img{width:100%;height:auto}.fairy-gallery figcaption{flex-wrap:wrap}@media(max-width:900px){header .brand{width:225px}.hero-image img{height:auto;aspect-ratio:auto}}@media(max-width:650px){header .brand{width:220px;max-width:72%}.fairy-gallery{grid-template-columns:1fr;gap:30px;margin-bottom:45px}.hero-image img{height:auto;max-height:none;aspect-ratio:auto}footer .brand{width:280px}}
.featured-work-gallery{display:grid;grid-template-columns:1fr 1fr;gap:45px 32px;margin-bottom:65px;align-items:start}.featured-work-gallery figure{margin:0}.featured-work-gallery img{height:auto;width:100%}.featured-work-gallery figcaption{flex-direction:column;gap:5px}@media(max-width:650px){.featured-work-gallery{grid-template-columns:1fr;gap:32px;margin-bottom:45px}}
.fairy-gallery{grid-template-columns:1fr;max-width:920px;margin-left:auto;margin-right:auto}
.inquiry-card{background:#fff;padding:35px;border:1px solid var(--line);align-self:start;min-width:0}.inquiry-card>h3{font-size:34px;margin:12px 0 30px}.inquiry-minimums{font-size:14px;border-top:1px solid var(--line);padding-top:20px}.form-alternative{font-size:13px;margin:25px 0 0}#inquiry-form{width:100%;min-height:120px}#inquiry-form iframe{width:100%;border:0}#inquiry-form input,#inquiry-form select,#inquiry-form textarea{max-width:100%}@media(max-width:650px){.inquiry-card{padding:24px 18px}}
