@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--wine:#351417;--dark:#281b1b;--paper:#f8f5ef;--gold:#c8a57a;--line:#ded7ce;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--dark);font-family:var(--sans);font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b77d39;outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(64px,6.5vw,106px);letter-spacing:-.035em}h2{font-size:clamp(44px,4.1vw,66px);letter-spacing:-.025em}h3{font-size:32px}em{font-weight:400}p{color:#6d6260}.eyebrow{font:500 12px/1.5 var(--sans);letter-spacing:.2em;margin-bottom:23px;text-transform:uppercase;color:#765044}.section{padding:104px max(6vw,24px)}.skip{position:fixed;top:-80px;left:20px;padding:12px;background:white;z-index:99}.skip:focus{top:10px}.header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;background:var(--paper);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:14px;font-size:16px;font-weight:600;letter-spacing:.11em;line-height:1.4}.brand small{display:block;font-size:9px;letter-spacing:.27em;margin-top:5px;font-weight:400}.monogram{font-family:var(--serif);font-size:44px;line-height:1;letter-spacing:-.14em;position:relative;padding-right:8px;font-weight:500}.monogram span{font-size:31px;position:relative;top:7px;margin-left:-4px}.header nav{display:flex;align-items:center;gap:32px;font-size:14px}.header nav>a:not(.nav-cta){border-bottom:1px solid transparent}.header nav>a:hover{border-color:var(--wine)}.nav-cta{border:1px solid #a8958f;padding:12px 18px;margin-left:12px}.nav-cta span{padding-left:25px}.menu-toggle{display:none}.hero{min-height:740px;height:calc(100svh - 100px);max-height:1040px;position:relative;background:#2b2020;color:var(--paper);display:flex;align-items:center;padding:75px 6vw 115px;isolation:isolate}.hero-image,.hero-shade{position:absolute;inset:0;height:100%;z-index:-2}.hero-image{object-position:65% 43%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(20,13,13,.86),rgba(20,13,13,.5) 42%,rgba(20,13,13,.06) 75%),linear-gradient(0deg,rgba(20,13,13,.45),transparent 40%)}.hero-content{max-width:710px}.hero .eyebrow{color:#e3c9a8}.hero h1 em{color:#e8cfad}.hero-copy{color:#ded5cc;max-width:445px;margin-top:28px;font-size:16px;line-height:1.85}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:34px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;padding:17px 24px;font-size:14px;font-weight:500;border:1px solid transparent;transition:background .2s,transform .2s;line-height:1.5}.button:hover{transform:translateY(-2px)}.button.cream{background:var(--paper);color:var(--wine)}.button.cream:hover{background:#e6d6c3}.button.burgundy{background:var(--wine);color:var(--paper)}.button span{font-size:21px}.text-link{font-size:14px;border-bottom:1px solid #ad9584;padding-bottom:5px}.hero-bottom{position:absolute;bottom:32px;left:6vw;right:6vw;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.17em;color:#e3d6c8}.hero-bottom a span{font-size:19px;margin-left:22px}.intro{text-align:center;max-width:950px;margin:auto;padding-top:112px;padding-bottom:90px}.intro>p:last-child{max-width:665px;margin:30px auto 0;line-height:1.9}.intro h2 em{color:#8a584c}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:44px;gap:35px}.section-heading>p{font-size:14px;line-height:1.8}.portfolio{padding-top:40px}.gallery{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:345px 315px;gap:24px}.photo{position:relative;overflow:hidden;padding:0;border:0;background:#3d2925;text-align:left;color:white}.photo img{height:100%;transition:transform .7s;object-position:center}.photo:hover img{transform:scale(1.045)}.photo-tall{grid-column:2;grid-row:1/3}.photo-wide{grid-column:1;grid-row:1}.photo-details{grid-column:1;grid-row:2}.photo-caption{position:absolute;bottom:0;left:0;width:100%;padding:56px 28px 25px;background:linear-gradient(transparent,rgba(0,0,0,.7));display:flex;flex-direction:column}.photo-caption small{font-size:10px;letter-spacing:.18em}.photo-caption strong{font-family:var(--serif);font-weight:400;font-size:33px;line-height:1.2;margin-top:6px;padding-right:20px}.photo-plus{position:absolute;bottom:28px;right:24px;font-size:25px;font-weight:400}.portfolio-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:24px}.portfolio-footer>span{font-size:12px;color:#8c7b74}.dark-link{font-size:14px;border-bottom:1px solid #806960;padding-bottom:5px}.dark-link span{margin-left:28px}.services{background:#efeae2}.service-list article{display:grid;grid-template-columns:60px 1fr 1.1fr 50px;gap:24px;align-items:center;border-top:1px solid #d0c6bb;padding:31px 0}.service-list article:last-child{border-bottom:1px solid #d0c6bb}.service-number{color:#927865;font-size:13px}.service-list h3{font-size:33px}.service-list p{font-size:14px;line-height:1.85;max-width:450px}.service-list a{font-size:24px;border:1px solid #c5b8a7;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;transition:.2s}.service-list a:hover{background:var(--wine);color:white}.about{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center;padding-top:125px;padding-bottom:125px}.about-image{height:635px;position:relative}.about-image img{height:100%;object-position:50% 30%}.about-image>span{position:absolute;bottom:-25px;left:-22px;background:var(--wine);color:#f0ddc7;padding:28px 36px;font-size:11px;letter-spacing:.17em;line-height:1.9}.about-copy p:not(.eyebrow){margin-top:26px;max-width:485px;font-size:16px;line-height:1.9}.about-copy .button{margin-top:30px}.studio-location{border-top:1px solid var(--line);padding-top:25px;margin-top:36px;display:flex;gap:45px}.studio-location span{font-size:10px;letter-spacing:.17em;color:#8e7464}.studio-location strong{font-size:14px;line-height:1.8;font-weight:400}.process{border-top:1px solid var(--line);padding-top:85px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.steps article{border-top:1px solid #bdaca0;padding-top:24px}.steps span{font-size:11px;letter-spacing:.12em;color:#8c6c58}.steps h3{margin:18px 0;font-size:32px}.steps p{font-size:14px;line-height:1.9}.contact{background:var(--wine);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:9vw}.contact .eyebrow{color:var(--gold)}.contact h2 em{color:#ddbd95}.contact-copy>p:not(.eyebrow){color:#d0bdb4;margin-top:25px;max-width:365px}.phone{display:block;font-family:var(--serif);font-size:34px;margin-top:33px}.contact-copy .contact-place{font-size:14px;margin-top:22px;margin-bottom:25px}.contact form{background:#442025;padding:35px}.contact form h3{font-size:30px;margin-bottom:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:12px;color:#e0d0c7;margin-bottom:19px}input,select,textarea{display:block;width:100%;margin-top:7px;background:transparent;border:0;border-bottom:1px solid #846466;border-radius:0;color:white;padding:10px 0;font-size:14px;line-height:1.5;outline-offset:5px}input::placeholder,textarea::placeholder{color:#baa6a1}input:focus,select:focus,textarea:focus{outline:2px solid #c8a57a}input[type=date]{color-scheme:dark;min-height:43px}select option{color:#281b1b;background:var(--paper)}textarea{resize:vertical}.contact form .button{width:100%;margin-top:4px}.contact .form-note{font-size:12px;color:#c7b2a8;line-height:1.7;margin-top:15px}.faq{display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw}.questions details{border-bottom:1px solid var(--line)}.questions summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px;font-size:16px;padding:22px 0}.questions summary::-webkit-details-marker{display:none}.questions summary span{font-size:23px;color:#906650;line-height:1}.questions details[open] summary span{transform:rotate(45deg)}.questions details p{font-size:14px;padding:0 30px 24px 0;line-height:1.9}footer{border-top:1px solid var(--line);padding:45px 6vw 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:28px;padding-bottom:35px}.footer-top>p{font-family:var(--serif);font-style:italic;font-size:24px}.footer-top>a:last-child{font-size:14px}.footer-bottom{border-top:1px solid var(--line);padding-top:23px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#8b7a70}dialog{padding:20px;border:0;max-width:min(95vw,1100px);max-height:95svh;background:var(--paper);color:var(--dark)}dialog::backdrop{background:rgba(15,9,9,.9)}dialog img{max-height:78svh;width:auto;max-width:100%;object-fit:contain;margin:auto}dialog p{font-family:var(--serif);font-size:26px;text-align:center;margin-top:10px}.close-lightbox{position:absolute;right:26px;top:26px;z-index:2;border:0;background:var(--paper);width:44px;height:44px;font-size:20px}
@media(min-width:1600px){.section{padding-left:calc((100vw - 1400px)/2);padding-right:calc((100vw - 1400px)/2)}.hero{padding-left:calc((100vw - 1400px)/2)}}
@media(max-width:1000px){.header{padding:0 4vw}.header nav{gap:20px}.nav-cta{margin-left:0}.nav-cta span{padding-left:10px}.section{padding-left:5vw;padding-right:5vw}.hero{padding-left:5vw}.hero h1{font-size:78px}.gallery{grid-template-rows:290px 270px}.about{gap:6vw}.about-image{height:550px}.contact{gap:5vw}.contact form{padding:25px}.service-list article{grid-template-columns:35px 1fr 1.1fr 42px;gap:18px}.service-list h3{font-size:28px}.steps{gap:32px}.footer-top>p{display:none}}
@media(max-width:760px){html{scroll-padding-top:25px}.header{height:82px;padding:0 22px}.brand{font-size:13px;gap:10px}.brand small{font-size:8px}.monogram{font-size:38px}.monogram span{font-size:27px}.menu-toggle{display:flex;gap:12px;align-items:center;background:transparent;border:0;font-size:14px;color:var(--wine);padding:10px 0}.header nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--paper);padding:22px;box-shadow:0 10px 20px #0002;align-items:stretch;flex-direction:column;gap:0}.header nav.open{display:flex}.header nav>a{padding:14px 5px}.header nav .nav-cta{padding:14px;margin-top:10px}.hero{height:calc(100svh - 82px);min-height:690px;max-height:900px;padding:65px 24px 105px;align-items:flex-end}.hero-image{object-position:66% center}.hero-shade{background:linear-gradient(0deg,rgba(18,9,9,.93),rgba(18,9,9,.65) 48%,rgba(18,9,9,.15))}.hero h1{font-size:clamp(57px,10.8vw,79px);line-height:1.04}.hero .eyebrow{font-size:10px;letter-spacing:.15em}.hero-copy{font-size:14px;max-width:370px;margin-top:22px;line-height:1.8}.hero-actions{gap:23px;margin-top:25px}.button{font-size:13px;padding:15px 18px;gap:18px}.hero-actions .text-link{font-size:12px}.hero-bottom{left:24px;right:24px;bottom:24px}.hero-bottom>span{font-size:8px}.hero-bottom>a{font-size:8px}.hero-bottom a span{margin-left:6px}.section{padding:72px 24px}.intro{padding-top:80px;padding-bottom:60px}.intro h2{font-size:46px}.intro>p:last-child{font-size:15px}.eyebrow{font-size:10px;margin-bottom:18px}h2{font-size:45px}.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px}.portfolio{padding-top:20px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:280px 340px;gap:14px}.photo-wide{grid-column:1/3;grid-row:1}.photo-tall{grid-column:1;grid-row:2}.photo-details{grid-column:2;grid-row:2}.photo-details img{object-position:58% center}.photo-caption{padding:40px 15px 19px}.photo-caption small{font-size:8px;letter-spacing:.12em}.photo-caption strong{font-size:25px}.photo-plus{right:12px;bottom:10px;font-size:18px}.portfolio-footer{align-items:flex-start;flex-direction:column;gap:15px}.portfolio-footer>span{font-size:11px}.dark-link{font-size:12px}.service-list article{grid-template-columns:25px 1fr 40px;padding:24px 0;gap:12px}.service-list h3{font-size:29px}.service-list p{grid-column:2;grid-row:2;font-size:14px}.service-list a{grid-column:3;grid-row:1/3;width:38px;height:38px;font-size:20px}.service-number{font-size:11px}.about{grid-template-columns:1fr;gap:66px}.about-image{height:500px;margin-right:10px}.about-image>span{left:-10px;padding:22px 28px}.about-copy h2{font-size:50px}.about-copy p:not(.eyebrow){font-size:15px}.studio-location{gap:30px}.steps{grid-template-columns:1fr;gap:32px}.steps h3{margin:12px 0}.steps p{max-width:520px}.contact{grid-template-columns:1fr;gap:40px}.contact h2{font-size:54px}.contact form{padding:25px 20px}.form-row{gap:16px}.phone{font-size:35px}.faq{grid-template-columns:1fr;gap:24px}.questions summary{font-size:15px}.footer-top{align-items:flex-start;gap:20px}.footer-top>a:last-child{font-size:12px}footer{padding:35px 24px 25px}.footer-bottom{flex-wrap:wrap;font-size:10px;gap:12px}.footer-bottom>span:nth-child(2){order:3;width:100%}dialog{padding:12px}.close-lightbox{top:18px;right:18px}}
@media(max-width:380px){.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.hero{min-height:740px}.gallery{grid-template-rows:240px 300px}.photo-caption strong{font-size:22px}.form-row{grid-template-columns:1fr;gap:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
