:root{--ink:#141513;--paper:#eeede7;--muted:#a9aaa1;--rule:#3b3c35;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}::selection{background:#c8cbaf;color:var(--ink)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}input:focus-visible,textarea:focus-visible{outline:2px solid #bfc3a9;outline-offset:3px}img{max-width:100%;display:block}button{color:inherit}.shell{width:min(1440px,calc(100% - 112px));margin-inline:auto}.skip{position:fixed;top:10px;left:10px;padding:14px 20px;z-index:100;background:var(--paper);color:var(--ink);transform:translateY(-160%)}.skip:focus{transform:translateY(0)}.header{border-bottom:1px solid var(--rule);position:relative;z-index:10}.header-inner{height:98px;display:flex;align-items:center;gap:36px}.brand{font-family:var(--serif);font-size:39px;letter-spacing:.075em;line-height:1;display:flex;gap:9px;align-items:center}.brand-dot{font-family:var(--sans);font-size:28px}.header-location{font-size:12px;line-height:1.6;letter-spacing:.13em;color:var(--muted);border-left:1px solid var(--rule);padding-left:25px}.header nav{display:flex;align-items:center;gap:30px;margin-left:auto;font-size:14px}.header nav>a{padding-block:10px}.header nav>a:not(.nav-book){color:#c4c5bb}.header nav>a:hover{color:white}.header nav .nav-book{border:1px solid #777b6b;padding:12px 16px;display:flex;gap:25px;align-items:center}.nav-book span{font-size:19px}.menu-toggle{display:none}.eyebrow{font-size:12px;line-height:1.7;letter-spacing:.17em;font-weight:500;text-transform:uppercase;margin:0 0 26px}.tiny-star{font-size:21px;vertical-align:middle;margin-right:12px}.hero{display:grid;grid-template-columns:1.19fr 1fr;gap:55px;padding-block:56px 48px;min-height:756px}.hero-copy{padding-top:27px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}.hero-copy .eyebrow{color:#c0c3b3;display:flex;align-items:center;gap:9px}.hero-copy .tiny-star{margin-right:0}.hero h1{font-family:var(--serif);font-size:clamp(72px,8.2vw,132px);font-weight:400;letter-spacing:-.042em;line-height:.86;margin:48px 0 35px}.hero h1>span{font-size:1.16em;letter-spacing:-.05em;display:inline-block;line-height:1.02}.hero-description{font-size:16px;line-height:1.8;color:#bdc0b2;margin:0 0 32px}.hero-actions{display:flex;align-items:center;gap:25px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:52px;padding:16px 20px;font-size:14px;line-height:1.4;font-weight:500;transition:background .2s,color .2s,border-color .2s;border:1px solid transparent;border-radius:0}.button span{font-size:20px;line-height:1}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:#d6d9c4}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:19px;font-size:14px;border-bottom:1px solid #8b8e7c;padding:8px 0;line-height:1.5}.text-link span{font-size:19px}.text-link:hover{color:#b7bea0}.hero-foot{width:100%;display:flex;justify-content:space-between;gap:20px;margin-top:auto;padding-top:55px;font-size:11px;letter-spacing:.13em;color:var(--muted)}.hero-figure{margin:0;position:relative;min-width:0;padding-left:24px}.photo-frame{height:570px;background:#3b3c35;overflow:hidden}.photo-frame>img{width:100%;height:100%;object-fit:cover;object-position:center 52%;}.hero-figure figcaption{display:flex;justify-content:space-between;gap:12px;font-size:11px;letter-spacing:.1em;padding-top:15px;color:#b7b9ad}.image-corner{position:absolute;left:0;bottom:76px;width:63px;height:63px;display:grid;place-items:center;border-radius:50%;background:var(--paper);color:var(--ink);font-size:39px;border:6px solid var(--ink)}.craft-strip{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:23px;font-size:11px;letter-spacing:.16em;color:#bbbdaf}.craft-strip>span:nth-child(even){font-size:15px}.work-section{padding-block:105px 92px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:45px;gap:25px}.section-heading .eyebrow{margin-bottom:13px;color:var(--muted)}h2{font-family:var(--serif);font-size:clamp(48px,5.6vw,86px);font-weight:400;line-height:1;letter-spacing:-.035em;margin:0}.section-heading .text-link{margin-bottom:7px}.gallery{display:grid;grid-template-columns:1.14fr 1fr 1fr;gap:28px 22px}.work-item{border:0;padding:0;text-align:left;background:none;display:flex;flex-direction:column;min-width:0}.work-item.work-feature{grid-row:span 2}.work-image{position:relative;display:block;overflow:hidden;background:#34352f;height:280px;width:100%}.work-feature .work-image{height:100%;min-height:615px}.work-image img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .65s ease}.work-feature .work-image img{object-position:50% 48%}.work-item:nth-child(2) img{object-position:center 45%}.work-item:nth-child(4) img{object-position:50% 46%}.work-item:hover img{transform:scale(1.035);}.image-zoom{position:absolute;top:14px;right:14px;border:1px solid #c7c7bc77;border-radius:50%;width:31px;height:31px;display:grid;place-items:center;background:#14151380;font-size:19px;transition:background .2s}.work-item:hover .image-zoom{background:var(--paper);color:var(--ink)}.work-caption{display:flex;justify-content:space-between;gap:10px;padding-top:13px;width:100%}.work-caption strong{font-size:16px;font-weight:400}.work-caption small{font-size:11px;letter-spacing:.13em;display:block;color:var(--muted);margin-top:5px}.work-number{font-size:12px;color:var(--muted);padding-top:3px}.gallery-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--rule);padding-block:31px 27px}.gallery-bottom p{font-size:14px;color:var(--muted)}.about-section{display:grid;grid-template-columns:.92fr 1.08fr;gap:100px;padding-block:35px 110px;align-items:center}.artist-image{position:relative}.artist-image>img{width:100%;aspect-ratio:1;object-fit:cover;}.portrait-label{position:absolute;bottom:18px;left:19px;font-size:11px;letter-spacing:.12em;padding:8px 11px;background:var(--ink)}.about-copy .eyebrow{color:var(--muted);margin-bottom:20px}.about-copy h2{font-size:clamp(47px,5.1vw,76px);margin-bottom:28px}.about-copy .lead{font-family:var(--serif);font-size:29px;line-height:1.22;color:var(--paper);max-width:470px}.about-copy>p:not(.eyebrow):not(.lead){font-size:16px;line-height:1.9;color:#b7baad;max-width:450px}.studio-info{display:flex;align-items:center;gap:8px;border-top:1px solid var(--rule);margin-top:28px;padding-top:23px}.studio-info .tiny-star{font-size:29px}.studio-info strong{font-size:16px;font-weight:500;display:block;margin-bottom:4px}.studio-info div>span{display:block;font-size:13px;color:var(--muted)}.about-copy>.text-link{margin-top:23px}.approach-section{background:var(--paper);color:var(--ink);padding-block:91px 85px;color-scheme:light}.approach-section>.shell>.eyebrow{color:#676a5d}.approach-section h2{font-size:clamp(47px,6vw,90px);line-height:1.03;max-width:1000px}.approach-section h2>span{color:#797e6b}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:65px}.principles article{border-top:1px solid #b7b9ac;padding-top:21px}.principle-index{font-family:var(--serif);font-size:30px;color:#767a67}.principles h3{font-family:var(--serif);font-size:34px;font-weight:400;letter-spacing:-.03em;margin:29px 0 12px}.principles p{font-size:16px;line-height:1.85;color:#606456;max-width:300px}.process-section{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;padding-block:113px 80px}.process-title .eyebrow{color:var(--muted);margin-bottom:25px}.process-title h2{font-size:clamp(61px,6.7vw,100px)}.process-title>p:last-child{font-size:16px;color:var(--muted);margin-top:25px}.steps{list-style:none;padding:0;margin:0}.steps li{display:grid;grid-template-columns:34px 1fr;gap:18px;padding-block:25px 29px;border-top:1px solid var(--rule)}.step-number{font-size:12px;color:var(--muted);padding-top:8px}.steps h3{font-family:var(--serif);font-size:33px;font-weight:400;margin:0 0 13px;letter-spacing:-.02em}.steps p{font-size:16px;color:#b2b6a7;line-height:1.85;max-width:400px;margin:0}.faq-section{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;padding-block:30px 100px}.faq-section .eyebrow{color:var(--muted);margin-bottom:18px}.faq-section h2{font-size:49px}.faq-list{border-top:1px solid var(--rule)}details{border-bottom:1px solid var(--rule)}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:21px;font-size:16px}summary::-webkit-details-marker{display:none}summary>span{font-size:20px;font-weight:400}details[open] summary>span{transform:rotate(45deg)}details p{font-size:16px;line-height:1.9;color:#b2b6a7;margin:0 35px 23px 0}.booking-section{padding-block:86px 90px;background:#20221d;border-block:1px solid var(--rule)}.booking-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.booking-copy .eyebrow{color:#c0c5b0}.booking-copy h2{font-size:clamp(58px,6.1vw,90px);line-height:1.02}.booking-copy h2 span{color:#b7bda7}.booking-copy>p:not(.eyebrow){max-width:330px;font-size:16px;line-height:1.9;color:#bfc3b3;margin:26px 0 28px}.booking-copy>.button{margin-top:4px}.booking-location{font-size:12px;letter-spacing:.12em;line-height:1.8;color:#b6bbaa;margin-top:48px}.booking-form{padding-top:4px}.booking-form h3{font-family:var(--serif);font-size:33px;font-weight:400;line-height:1.1;margin:0 0 10px}.form-intro{font-size:14px;color:#b3b9a6;margin:0 0 29px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.booking-form label{display:block;font-size:13px;line-height:1.7;margin-bottom:23px;color:#cfd3c5}.booking-form label>span{color:#b9c09c}.booking-form input,.booking-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #686f5c;border-radius:0;color:var(--paper);background:transparent;padding:11px 0 12px;resize:vertical;font-size:16px;font-weight:400;line-height:1.6;margin-top:4px}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#939c86;opacity:1}.booking-form input:hover,.booking-form textarea:hover{border-color:#b7c0a1}.booking-form textarea{min-height:110px}.button-outline{border-color:#a6af94;background:none;color:var(--paper);width:100%;margin-top:6px}.button-outline:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.form-note{font-size:12px;color:#b3b9a6;line-height:1.8;margin:15px 0 0}.form-note a{text-decoration:underline;text-underline-offset:2px}.footer{padding-top:55px}.footer-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding-bottom:40px}.footer-brand{font-family:var(--serif);font-size:clamp(98px,18vw,263px);line-height:.75;letter-spacing:-.055em;display:flex;align-items:center;gap:18px}.footer-brand>span{font-family:var(--sans);font-size:.37em;letter-spacing:0}.footer-note{font-size:11px;line-height:1.8;letter-spacing:.12em;color:#b6bbaa;padding-bottom:2px}.footer-note a{display:block;margin-top:15px;color:var(--paper)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-block:24px;border-top:1px solid var(--rule);font-size:11px;letter-spacing:.1em;color:#b1b6a3}.footer-bottom a{color:var(--paper)}dialog{padding:0;border:0;color:var(--paper)}dialog::backdrop{background:#050604e8;backdrop-filter:blur(8px)}.icon-button{width:42px;height:42px;display:grid;place-items:center;border:1px solid #7f8474;border-radius:50%;background:transparent;color:inherit;font-size:25px}.icon-button:hover{background:var(--paper);color:var(--ink)}.lightbox{width:calc(100% - 44px);max-width:1300px;height:calc(100dvh - 44px);max-height:1100px;background:transparent;overflow:visible;margin:auto}.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;height:48px;font-size:13px;letter-spacing:.12em}.lightbox-stage{height:calc(100% - 130px);display:grid;grid-template-columns:45px 1fr 45px;gap:20px;align-items:center;justify-items:center}.lightbox-stage>img{height:100%;max-height:100%;max-width:100%;min-height:0;object-fit:contain;}.lightbox-caption{text-align:center;padding-top:15px}.lightbox-caption h2{font-size:30px}.lightbox-caption p{font-size:13px;color:var(--muted);margin:6px 0}.message-dialog{width:calc(100% - 36px);max-width:660px;max-height:calc(100dvh - 40px);padding:44px;background:var(--paper);color:var(--ink);color-scheme:light;overflow:auto}.message-close{position:absolute;right:17px;top:15px;border-color:#999e89;font-size:25px;width:32px;height:32px}.message-dialog .eyebrow{font-size:11px;color:#606753;margin:0 30px 16px 0}.message-dialog h2{font-size:45px;margin-bottom:18px}.message-dialog>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#606753}.message-dialog textarea{width:100%;resize:vertical;padding:17px;background:#e1e3d8;border:1px solid #b6bba7;border-radius:0;color:#2c3024;font-family:var(--sans);font-size:16px;line-height:1.8;min-height:210px;margin-top:10px}.message-actions{display:flex;gap:12px;margin-top:20px}.message-actions .button{flex:1;gap:12px}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:#3e4533}.button-bordered{border-color:var(--ink);color:var(--ink)}.button-bordered:hover{background:#d8ddc9}.message-dialog #copy-status{font-size:13px;margin-bottom:0;min-height:18px}
@media(min-width:1600px){.hero{gap:90px;padding-block:75px 65px;min-height:850px}.photo-frame{height:650px}.hero h1{margin-top:64px}.work-image{height:330px}.work-feature .work-image{min-height:715px}}
@media(max-width:1100px){.shell{width:calc(100% - 72px)}.header-inner{gap:22px}.header-location{display:none}.header nav{gap:24px}.hero{gap:24px;min-height:670px;padding-top:43px}.hero-copy{padding-top:14px}.hero h1{font-size:8.4vw;margin-top:45px}.photo-frame{height:510px}.hero-actions{flex-direction:column;align-items:flex-start;gap:12px}.hero-description{font-size:16px}.hero-foot{padding-top:28px}.hero-figure{padding-left:14px}.hero-figure figcaption{font-size:11px}.gallery{gap:24px 17px}.work-image{height:235px}.work-feature .work-image{min-height:525px}.about-section,.process-section,.faq-section,.booking-grid{gap:55px}.about-copy .lead{font-size:25px}.principles{gap:30px}.principles h3{font-size:30px}.craft-strip{font-size:11px;gap:16px}.booking-copy h2{font-size:6vw}.footer-brand{font-size:19vw}}
@media(max-width:760px){html{scroll-padding-top:25px}.shell{width:calc(100% - 40px)}.header-inner{height:76px;justify-content:space-between}.brand{font-size:32px}.brand-dot{font-size:23px}.menu-toggle{display:flex;gap:19px;align-items:center;background:transparent;border:1px solid #777d68;color:var(--paper);font-size:14px;padding:9px 13px}.menu-toggle>span{font-size:18px}.header nav{display:none;position:absolute;left:0;right:0;top:76px;background:var(--ink);padding:12px 20px 24px;border-bottom:1px solid var(--rule);margin:0;flex-direction:column;align-items:stretch;gap:2px}.header nav.open{display:flex}.header nav a{padding:14px 0;font-size:16px}.header nav .nav-book{margin-top:8px;justify-content:space-between}.hero{grid-template-columns:1fr;gap:34px;min-height:0;padding-block:27px 30px}.hero-copy{padding-top:0}.hero-copy>.eyebrow{font-size:11px;margin-bottom:0;gap:5px;letter-spacing:.11em}.hero h1{font-size:clamp(48px,14.6vw,110px);margin:40px 0 24px;line-height:.88}.hero h1>span{font-size:1.19em}.hero-description{font-size:16px;line-height:1.75;margin-bottom:24px}.hero-actions{flex-direction:row;gap:22px;align-items:center;width:100%;flex-wrap:wrap}.hero-actions .button{font-size:13px;gap:28px;padding:15px 17px}.hero-actions .text-link{font-size:13px;gap:11px}.hero-foot{display:none}.hero-figure{padding-left:0;max-width:500px;width:100%;margin:auto}.photo-frame{height:auto;aspect-ratio:4/4.7}.photo-frame>img{object-position:center 50%}.hero-figure figcaption{font-size:11px;padding-top:12px}.image-corner{left:auto;right:16px;bottom:49px;width:54px;height:54px;font-size:33px}.craft-strip{gap:13px;padding-block:20px;font-size:11px;letter-spacing:.09em}.craft-strip>span:nth-last-child(-n+2){display:none}.craft-strip>span:nth-child(even){font-size:12px}.work-section{padding-block:64px 60px}.section-heading{margin-bottom:28px;align-items:flex-start;gap:15px}.section-heading h2{font-size:51px}.section-heading .eyebrow{font-size:11px;margin-bottom:11px}.section-heading>.text-link{font-size:12px;gap:9px;align-self:flex-end;margin-bottom:3px;white-space:nowrap}.section-heading>.text-link>span{font-size:18px}.gallery{grid-template-columns:1fr 1fr;gap:26px 13px}.work-feature{grid-column:span 2}.work-item.work-feature{grid-row:span 1;max-width:100%}.work-feature .work-image{height:auto;min-height:0;aspect-ratio:1/1.1}.work-feature .work-image img{object-position:50% 52%}.work-image{height:auto;aspect-ratio:3/4}.work-caption strong{font-size:14px}.work-caption small{font-size:11px;letter-spacing:.08em}.work-number{font-size:11px}.image-zoom{width:27px;height:27px;top:10px;right:10px;font-size:16px}.gallery-bottom{padding-block:22px 20px}.gallery-bottom p{font-size:12px;max-width:145px;line-height:1.7}.gallery-bottom .text-link{font-size:13px}.about-section{grid-template-columns:1fr;gap:34px;padding-block:0 65px}.artist-image{max-width:500px}.about-copy .eyebrow{font-size:11px;margin-bottom:15px}.about-copy h2{font-size:54px;margin-bottom:23px}.about-copy .lead{font-size:28px;max-width:400px}.about-copy>p:not(.eyebrow):not(.lead){font-size:16px;max-width:480px}.studio-info{margin-top:22px}.approach-section{padding-block:58px 55px}.approach-section>.shell>.eyebrow{font-size:11px}.approach-section h2{font-size:clamp(42px,8.6vw,61px);line-height:1.06}.principles{grid-template-columns:1fr;gap:27px;margin-top:35px}.principles article{display:grid;grid-template-columns:40px 1fr;column-gap:12px;row-gap:8px;padding-top:18px}.principle-index{font-size:28px;grid-row:span 2}.principles h3{font-size:30px;margin:0}.principles p{margin:0;max-width:410px;font-size:16px}.process-section{grid-template-columns:1fr;gap:35px;padding-block:65px 45px}.process-title .eyebrow{font-size:11px;margin-bottom:20px}.process-title h2{font-size:64px}.process-title>p:last-child{margin-top:18px;font-size:14px}.steps li{padding-block:21px 24px;gap:12px;grid-template-columns:27px 1fr}.steps h3{font-size:31px}.steps p{font-size:16px;max-width:none}.faq-section{grid-template-columns:1fr;gap:28px;padding-block:15px 60px}.faq-section .eyebrow{font-size:11px}.faq-section h2{font-size:46px}summary{font-size:16px}.booking-section{padding-block:58px 55px}.booking-grid{grid-template-columns:1fr;gap:45px}.booking-copy h2{font-size:64px}.booking-copy>p:not(.eyebrow){font-size:16px;max-width:360px;margin-block:22px}.booking-copy>.button{font-size:14px}.booking-location{margin-top:25px;font-size:11px}.booking-form{border-top:1px solid #575f4a;padding-top:29px}.booking-form h3{font-size:32px}.booking-form label{font-size:13px}.field-row{gap:19px}.booking-form input,.booking-form textarea{font-size:18px;min-width:0}.booking-form input::placeholder{font-size:16px}.booking-form textarea::placeholder{font-size:16px}.booking-form .button{font-size:16px}.form-intro{font-size:14px;line-height:1.7}.form-note{font-size:13px}.footer{padding-top:38px}.footer-top{padding-bottom:29px;align-items:center;gap:24px 10px;flex-wrap:wrap}.footer-brand{font-size:21vw;gap:8px}.footer-note{font-size:11px;letter-spacing:.08em;flex-shrink:0}.footer-note a{margin-top:9px}.footer-bottom{font-size:11px;letter-spacing:.07em;padding-block:19px;gap:12px}.message-dialog{padding:40px 23px 24px}.message-dialog h2{font-size:35px}.message-dialog .message-actions{gap:9px}.message-actions .button{font-size:13px;padding-inline:12px;gap:7px}.message-actions .button span{font-size:17px}.lightbox{width:calc(100% - 24px);height:calc(100dvh - 24px)}.lightbox-stage{grid-template-columns:30px 1fr 30px;gap:5px;height:calc(100% - 135px)}.lightbox-stage>.icon-button{width:29px;height:29px;font-size:19px}.lightbox-caption h2{font-size:29px}}
@media(max-width:360px){.shell{width:calc(100% - 32px)}.hero h1{font-size:14.2vw}.hero-actions{gap:11px}.hero-actions .button{padding-inline:12px;gap:15px}.section-heading{flex-direction:column;gap:16px}.section-heading>.text-link{align-self:flex-start}.craft-strip{font-size:11px;gap:9px}.field-row{grid-template-columns:1fr;gap:0}.footer-note{font-size:11px}.booking-copy h2{font-size:58px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Portfolio styles and artist photo carousel. */
.brand{font-size:30px;gap:10px;letter-spacing:.035em;white-space:nowrap}.brand-dot{font-size:19px}.hero-description{max-width:520px}.portfolio-nav{display:flex;align-items:center;gap:18px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding-block:16px;margin-bottom:47px}.portfolio-nav a{display:inline-flex;align-items:center;gap:18px;font-size:14px;line-height:1.6;padding:10px 15px;border:1px solid #5d644e}.portfolio-nav a>span:first-child{color:var(--muted);font-size:12px}.portfolio-nav a>span:last-child{font-size:16px}.portfolio-nav a:hover{background:var(--paper);color:var(--ink)}.portfolio-style{scroll-margin-top:25px}.portfolio-style+.portfolio-style{border-top:1px solid var(--rule);padding-top:55px;margin-top:60px}.style-heading{display:grid;grid-template-columns:1.65fr 1fr;gap:50px;align-items:end;margin-bottom:29px}.style-heading .eyebrow{font-size:11px;color:var(--muted);margin-bottom:12px}.style-heading h3{font-family:var(--serif);font-size:clamp(42px,4.8vw,70px);font-weight:400;line-height:1.02;letter-spacing:-.035em;margin:0}.style-heading>p{color:#b2b7a7;font-size:16px;line-height:1.8;max-width:350px;margin:0 0 2px}.engraving-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.engraving-gallery .work-image{height:auto;aspect-ratio:3/4}.engraving-gallery .work-item:first-child img{object-position:50% 51%}.engraving-gallery .work-item:nth-child(4) img{object-position:50% 20%}.project-scale{display:grid;grid-template-columns:1fr 1.12fr;gap:45px;align-items:center;background:#20231b;padding:22px 25px;margin-bottom:27px}.project-scale .eyebrow{font-size:11px;line-height:1.9;letter-spacing:.12em;margin:0;max-width:290px;color:#d6dcc6}.project-scale p{font-size:14px;line-height:1.85;color:#b6bfa4;margin:0;max-width:500px}.blackwork-gallery .work-feature .work-image{background:#11120f}.blackwork-gallery .work-feature .work-image>img{object-fit:contain;object-position:50% 50%}.project-badge{position:absolute;left:15px;top:15px;font-size:11px;letter-spacing:.12em;color:var(--paper);background:#141513df;border:1px solid #909b78;padding:9px 12px}.artist-carousel{min-width:0}.portrait-frame{position:relative;width:100%;aspect-ratio:4/5;background:#2d3026;overflow:hidden;touch-action:pan-y}.portrait-slide{width:100%;height:100%}.portrait-slide[hidden]{display:none}.portrait-slide>img{width:100%;height:100%;object-fit:cover;}.portrait-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:17px}.portrait-dots,.portrait-arrows{display:flex;align-items:center;gap:7px}.portrait-dots button{width:22px;height:28px;background:none;border:0;display:grid;place-items:center;padding:0}.portrait-dots button::after{content:'';display:block;width:6px;height:6px;border-radius:50%;background:#71785f}.portrait-dots button.active::after{background:var(--paper);width:8px;height:8px}.portrait-arrows .icon-button{width:34px;height:34px;font-size:19px}#portrait-counter{font-size:12px;letter-spacing:.1em;color:var(--muted)}.artist-facts{display:grid;grid-template-columns:1fr 1.5fr;gap:25px;border-top:1px solid var(--rule);padding-top:19px;margin-top:25px}.artist-facts strong{font-family:var(--serif);font-size:34px;line-height:1;display:block;font-weight:400}.artist-facts small{font-size:11px;letter-spacing:.1em;color:var(--muted);line-height:1.6;display:block;margin-top:8px}.about-copy>p.reassurance{font-weight:500;border-left:1px solid #85916c;padding-left:15px;margin-top:19px}.about-copy .studio-info{margin-top:22px}.footer-brand{font-size:clamp(65px,10vw,148px);gap:14px;letter-spacing:-.035em;white-space:nowrap}.footer-brand>span{font-size:.28em}.footer-top{align-items:center}
@media(max-width:1100px){.header nav{gap:20px}.header-inner{gap:20px}.brand{font-size:28px;gap:8px}.brand-dot{font-size:18px}.engraving-gallery{gap:17px}.style-heading{gap:35px;grid-template-columns:1.55fr 1fr}.style-heading>p{font-size:14px}.project-scale{gap:30px}.artist-facts{gap:15px}.artist-facts small{font-size:11px}}
@media(max-width:760px){.brand{font-size:24px;gap:6px;letter-spacing:.015em}.brand-dot{font-size:15px}.menu-toggle{gap:12px;padding:8px 10px}.portfolio-nav{gap:10px;flex-wrap:wrap;margin-bottom:35px;padding-block:13px}.portfolio-nav a{font-size:13px;gap:12px;padding:8px 11px}.portfolio-nav a>span:first-child{font-size:11px}.style-heading{grid-template-columns:1fr;gap:16px;margin-bottom:24px}.style-heading h3{font-size:45px;max-width:100%}.style-heading>p{max-width:410px;font-size:16px}.engraving-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 13px}.portfolio-style+.portfolio-style{padding-top:38px;margin-top:40px}.project-scale{grid-template-columns:1fr;gap:12px;padding:18px;margin-bottom:25px}.project-scale .eyebrow{max-width:none;font-size:11px}.project-scale p{font-size:14px}.blackwork-gallery .work-feature .work-image{aspect-ratio:3/4}.project-badge{font-size:11px;left:12px;top:12px;padding:8px 10px}.portrait-frame{aspect-ratio:4/5}.portrait-controls{padding-top:15px}.artist-facts{grid-template-columns:1fr 1.4fr;gap:20px}.artist-facts strong{font-size:34px}.artist-facts small{font-size:11px}.footer-brand{font-size:clamp(30px,9vw,68px);gap:8px}.footer-note{font-size:11px}.footer-top{gap:25px 15px}}
@media(max-width:360px){.brand{font-size:22px;gap:5px}.brand-dot{font-size:14px}.style-heading h3{font-size:40px}.portfolio-nav a{font-size:12px;gap:9px;padding:8px 10px}.portfolio-nav a>span:first-child{font-size:11px}.artist-facts small{font-size:11px}.footer-brand{font-size:30px;gap:6px}}

.hero h1.service-heading{font-size:clamp(50px,5.7vw,86px);line-height:1.04;letter-spacing:-.035em;margin:38px 0 32px;max-width:100%}.hero h1.service-heading>span{display:block;font-size:inherit;line-height:inherit;letter-spacing:inherit}.hero h1.service-heading>.service-styles{font-size:.7em;line-height:1.15}.hero h1.service-heading>.service-credit{font-family:var(--sans);font-size:.28em;font-weight:400;line-height:1.6;letter-spacing:.01em;margin-top:19px}
@media(max-width:760px){.hero h1.service-heading{font-size:clamp(42px,12vw,80px);margin:34px 0 24px}.hero h1.service-heading>.service-styles{font-size:.7em}.hero h1.service-heading>.service-credit{font-size:16px;margin-top:14px}}

/* Keep enlarged supporting text within narrow layouts. */
@media(max-width:760px){.craft-strip{flex-wrap:wrap;justify-content:center;row-gap:12px}.footer-top{flex-wrap:wrap;gap:24px}.footer-bottom{flex-wrap:wrap;row-gap:14px}}

/* Booking contact choices and email feedback. */
.booking-contact-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}
.booking-email{display:inline-block;font-size:14px;line-height:1.7;margin-top:21px;color:#cfd3c5;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}
.contact-methods{border:0;padding:0;margin:0 0 25px;min-width:0}
.contact-methods legend{font-size:14px;line-height:1.6;color:#cfd3c5;margin-bottom:10px;padding:0}
.contact-options{display:flex;flex-wrap:wrap;gap:12px}
.booking-form .contact-options label{display:flex;align-items:center;gap:10px;margin:0;padding:11px 17px;border:1px solid #686f5c;font-size:15px;line-height:1.6;cursor:pointer}
.booking-form .contact-options label:has(input:checked){background:#e8ebdf;color:#22271a;border-color:#e8ebdf}
.booking-form .contact-options input{width:17px;height:17px;min-width:17px;padding:0;margin:0;accent-color:#65704c}
.booking-form .button .submit-label{font-size:inherit;line-height:inherit}
.booking-form [hidden]{display:none!important}
.booking-form .honey-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.booking-form .form-status{font-size:16px;line-height:1.75;color:#e1e6d4;border-left:2px solid #afb997;padding:10px 0 10px 15px;margin:20px 0 0}
.booking-form .button:disabled{cursor:wait;opacity:.7}
.booking-form #email-fallback{margin-top:18px}

.reference-field{margin:0 0 27px;min-width:0}
.reference-label{font-size:16px;line-height:1.7;color:#cfd3c5;margin:0 0 4px}
.reference-label>span{font-size:14px;color:#aeb6a1}
.reference-help{font-size:14px;line-height:1.7;color:#b3b9a6;margin:0 0 12px}
.reference-picker{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:15px 17px;background:transparent;color:var(--paper);border:1px dashed #7b866b;font-size:15px;line-height:1.5;cursor:pointer;text-align:left}
.reference-picker>span{font-size:22px;line-height:1}
.reference-picker:hover,.reference-picker:focus-visible{border-color:var(--paper);background:#ffffff08}
.reference-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:14px 0 0}
.reference-list:empty{display:none}
.reference-list>li{display:grid;grid-template-columns:56px minmax(0,1fr) 26px;align-items:center;gap:10px;min-width:0;padding:10px;border:1px solid #59624d}
.reference-list img{width:56px;height:56px;object-fit:cover;border-radius:2px}
.reference-info{min-width:0;display:grid;gap:4px}
.reference-name{font-size:14px;color:#e1e6d4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reference-size{font-size:12px;line-height:1.5;color:#b3b9a6}
.remove-reference{display:grid;place-items:center;align-self:start;width:26px;height:26px;padding:0;border:0;background:transparent;color:#d8dfca;font-size:24px;line-height:1;cursor:pointer}
.remove-reference:hover,.remove-reference:focus-visible{background:#ffffff12;color:#fff}
.reference-field #reference-summary{margin:12px 0 0}
.reference-error{font-size:14px;line-height:1.7;color:#f0b8a2;margin:12px 0 0}
.reference-field button:disabled{cursor:wait;opacity:.6}
@media(max-width:760px){.reference-list{grid-template-columns:1fr}}

/* Draw decorative stars as vectors on every platform, including iOS. */
.star-icon{display:block;flex-shrink:0}
