:root{--paper:#faf8f4;--ink:#46382e;--muted:#796e64;--cream:#f0eae0;--border:#d9d0c4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:100%;object-fit:cover}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #916c48;outline-offset:6px}.header{height:114px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid var(--border)}.brand{font-family:'Cormorant Garamond',Georgia,serif;font-size:36px;letter-spacing:5px;line-height:1}.brand span{display:block;font-family:Manrope,sans-serif;font-size:10px;font-weight:500;letter-spacing:2.4px;margin-top:12px}.header nav{display:flex;gap:38px;font-size:14px}.header nav a:hover,.text-link:hover{color:#a17c54}.header-link{font-size:13px;border-bottom:1px solid var(--ink);padding:9px 0}.header-link span{margin-left:24px;font-size:19px}.menu{display:none}.hero{position:relative;display:grid;grid-template-columns:48% 52%;min-height:710px;padding:32px 4% 32px 6%;gap:0}.hero-copy{padding:49px 35px 25px 0}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:600;display:flex;align-items:center;gap:15px}.line{width:32px;height:1px;background:var(--muted)}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;margin:0}h1{font-size:clamp(65px,6.3vw,96px);line-height:.98;letter-spacing:-3px;margin:32px 0 27px}em{font-weight:400;color:#967956}h1 em{white-space:nowrap}.hero-copy>p{max-width:365px;color:var(--muted);font-size:14px;line-height:1.9;margin-bottom:30px}.button{display:inline-flex;gap:40px;align-items:center;background:var(--ink);color:#fff;padding:17px 25px;font-size:13px;transition:background .2s}.button:hover{background:#6d5745}.button span{font-size:19px}.hero-foot{display:flex;gap:15px;align-items:center;margin-top:39px;font-size:11px;line-height:1.7;letter-spacing:.4px;color:var(--muted)}.little-star{font-size:38px;font-weight:400;color:#9a805b}.hero-image{position:relative;min-height:640px;overflow:hidden;background:#e5d8c6}.hero-image img{position:absolute;object-position:58% 50%}.hero-image:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(58,42,30,.38))}.image-note{position:absolute;left:30px;top:25px;font-size:10px;letter-spacing:2.5px;color:#544434}.image-caption{position:absolute;z-index:1;bottom:33px;left:35px;color:#fffaf2;font-family:'Cormorant Garamond',Georgia,serif;font-size:37px;line-height:1.1}.image-caption em{color:#fffaf2}.vertical-note{position:absolute;right:1.3%;top:50%;writing-mode:vertical-rl;font-size:9px;letter-spacing:3px}.section{padding:90px 6%}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:40px}.section-head>p{font-size:14px;color:var(--muted);margin-bottom:9px}h2{font-size:56px;line-height:1.06;letter-spacing:-1.5px;margin-top:20px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.card-image{height:320px;position:relative;overflow:hidden;background:var(--cream)}.card-image img{transition:transform .6s}.service-card:first-child img{object-position:70% 57%}.round-arrow{position:absolute;bottom:18px;right:18px;width:42px;height:42px;background:var(--paper);border-radius:50%;display:grid;place-items:center;font-size:22px}.card-title{display:flex;align-items:center;justify-content:space-between;margin:19px 0 2px}h3{font-size:29px;line-height:1.25}.card-title>span{color:#9c8f80;font-size:11px}.service-card>p{font-size:13px;color:var(--muted);margin:5px 0}details{border-bottom:1px solid var(--border)}summary{cursor:pointer;padding:14px 0;font-size:13px;display:flex;justify-content:space-between}details p{font-size:14px;max-width:760px;color:var(--muted);margin:0 0 20px}details[open] summary span{transform:rotate(45deg)}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%;background:var(--cream);align-items:center;padding-top:75px;padding-bottom:75px}.about-image{position:relative;height:490px}.about-image img{object-position:45%}.photo-label{position:absolute;bottom:0;left:0;background:var(--paper);padding:15px 22px;font-size:9px;letter-spacing:2px}.about-copy .eyebrow{font-size:10px}.about-copy h2{font-size:52px;margin-bottom:27px}.about-copy>p{font-size:14px;max-width:395px;color:var(--muted)}.about-copy .signature{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:29px;color:var(--ink);margin:25px 0}.text-link{font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:9px;display:inline-flex;gap:32px}.approach{text-align:center}.approach>.eyebrow{justify-content:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin-top:48px}.steps article>span{display:block;color:#aa9070;font-family:'Cormorant Garamond',serif;font-size:25px;margin-bottom:16px}.steps p{font-size:14px;color:var(--muted);max-width:300px;margin:15px auto}.steps article+article{border-left:1px solid var(--border);padding-left:25px}footer{display:flex;justify-content:space-between;align-items:center;padding:40px 6%;border-top:1px solid var(--border)}footer .brand{font-size:27px}footer .brand span{font-size:8px}footer p,footer>a:last-child{font-size:12px;color:var(--muted)}@media(min-width:1550px){body{max-width:1800px;margin:auto}.hero{min-height:800px}.hero-image{min-height:730px}.hero-copy{padding-top:80px}}@media(max-width:1000px){.header{padding:0 5%;height:100px}.header nav{gap:20px}.header-link{display:none}.hero{padding-left:5%;min-height:620px}.hero-copy{padding-top:35px}h1{font-size:72px}.hero-image{min-height:590px}.hero-copy>p{font-size:13px;padding-right:20px}.section{padding:70px 5%}h2{font-size:48px}.card-image{height:270px}h3{font-size:25px}.about{gap:6%}.about-copy h2{font-size:44px}.about-image{height:470px}.steps{gap:25px}}@media(max-width:650px){.header{height:88px}.brand{font-size:29px}.brand span{font-size:8px}.menu{display:flex;gap:12px;border:0;background:none;font-size:12px;color:var(--ink);padding:12px}.header nav{display:none;position:absolute;top:88px;left:0;right:0;background:var(--paper);z-index:5;padding:24px 6%;border-bottom:1px solid var(--border)}.header nav.open{display:flex;flex-direction:column}.hero{display:flex;flex-direction:column;padding:0 5% 22px;min-height:0}.hero-copy{padding:42px 0 30px}.eyebrow{font-size:9px;letter-spacing:1.7px}h1{font-size:72px;letter-spacing:-2px;margin:26px 0 23px}.hero-copy>p{max-width:350px;font-size:14px;margin-bottom:24px}.hero-foot{display:none}.button{font-size:12px;padding:15px 22px}.hero-image{min-height:425px}.image-caption{font-size:32px;bottom:25px;left:25px}.image-note{font-size:8px;left:25px}.vertical-note{display:none}.section{padding:55px 6%}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:20px;font-size:13px}h2{font-size:45px}.service-grid{grid-template-columns:1fr;gap:29px}.card-image{height:360px}.card-title{margin-top:16px}h3{font-size:29px}.about{grid-template-columns:1fr;gap:35px}.about-image{height:370px}.about-copy h2{font-size:45px}.about-copy>p{font-size:14px}.steps{grid-template-columns:1fr;gap:25px;margin-top:30px}.steps article+article{border:0;border-top:1px solid var(--border);padding:25px 0 0}.steps article>span{margin-bottom:7px}.steps p{max-width:290px}footer{flex-wrap:wrap;gap:25px;padding:30px 6%}footer p{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Full-width hero video with a readable text overlay. */
.hero{isolation:isolate;overflow:hidden;background:#46382e;color:#fffaf2}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(25,20,16,.375),rgba(25,20,16,.175) 55%,rgba(25,20,16,.075))}
.hero-copy{position:relative;z-index:1}
.hero-copy>p,.hero-foot,.hero .little-star,.hero h1 em{color:#fffaf2}
.hero .line{background:#fffaf2}
.hero .button{background:#faf8f4;color:#46382e}
.hero .button:hover{background:#e5d8c6}
.hero-image{background:transparent;overflow:visible}
.hero-image:after{display:none}
.image-note{color:#fffaf2}
@media(max-width:650px){.hero{min-height:670px}.hero-image{min-height:120px}.hero-copy{padding-bottom:15px}.hero:before{background:linear-gradient(90deg,rgba(25,20,16,.375),rgba(25,20,16,.175))}}

.portfolio{border-bottom:1px solid var(--border)}
.portfolio-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:28px 36px}
.portfolio-grid figure{margin:0;min-width:0}.portfolio-main{grid-row:span 2}
.portfolio-grid img{height:230px}.portfolio-main img{height:560px;object-position:65% center}
.portfolio-grid figcaption{padding-top:16px}.portfolio-grid figcaption span,.price-number{font-size:10px;letter-spacing:1.7px;color:var(--muted)}
.portfolio-grid h3{margin-top:6px;font-size:28px}
.pricing{background:var(--cream)}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.price-card{display:flex;flex-direction:column;padding:30px;background:var(--paper);border:1px solid var(--border)}.price-card h3{margin-top:22px}
.price-card>p{font-size:14px;color:var(--muted);margin:16px 0 30px}.price-value{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px;margin-top:auto;margin-bottom:22px;line-height:1.2}.price-card .text-link{align-self:flex-start;gap:15px}.section-note{font-size:12px;color:var(--muted);margin:24px 0 0}
.faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%}.faq>div>p,.contact-copy>p{font-size:14px;color:var(--muted);margin-top:25px}.faq-list{border-top:1px solid var(--border)}.faq summary{font-size:14px;gap:20px;padding:22px 0}.faq summary span{flex-shrink:0}.faq details p{line-height:1.9}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:8%;background:var(--cream)}.contact-copy>p{max-width:365px}.contact-info{border-top:1px solid var(--border);margin-top:32px;padding-top:25px}.contact-info h3{font-size:24px}.contact-info p{font-size:13px;color:var(--muted);margin:8px 0 22px}
.enquiry-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.enquiry-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;min-width:0}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;min-width:0;border:1px solid #c5b8a6;border-radius:0;background:var(--paper);color:var(--ink);padding:14px;font:inherit;font-size:14px}.enquiry-form textarea{resize:vertical}.enquiry-form :is(input,select,textarea):focus-visible{outline:2px solid #916c48;outline-offset:2px}.form-note,.form-status{font-size:12px;color:var(--muted);margin:0}.form-status:empty{display:none}.enquiry-form .button{align-self:flex-start;border:0;cursor:pointer}.enquiry-form .button:disabled{opacity:.55;cursor:not-allowed}
.site-footer{gap:30px;align-items:flex-start}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 35px;font-size:12px}.footer-links a:hover{color:#a17c54}.footer-contact{display:flex;flex-direction:column;gap:16px;font-size:12px;color:var(--muted)}
@media(max-width:1000px){.price-card{padding:22px}.price-grid{gap:16px}.price-card h3{font-size:26px}.price-card .text-link{font-size:11px}.faq,.contact{gap:5%}.form-row{grid-template-columns:1fr}}
@media(max-width:650px){.portfolio-grid,.price-grid,.faq,.contact{grid-template-columns:1fr}.portfolio-main{grid-row:auto}.portfolio-grid img,.portfolio-main img{height:350px}.portfolio-grid{gap:30px}.price-grid{gap:18px}.price-card{padding:28px}.price-card h3{font-size:29px}.faq,.contact{gap:35px}.form-row{grid-template-columns:1fr;gap:20px}.site-footer{flex-direction:column}.footer-links{gap:14px 30px}.footer-contact{gap:12px}}

.demo-label{font-size:11px;color:var(--muted)}.enquiry-preview{padding:24px;border:1px solid var(--border);background:var(--paper)}.enquiry-preview p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px}.enquiry-preview[hidden]{display:none}

/* Footer columns follow the reference's content hierarchy. */
.site-footer{display:block;padding:65px 6% 25px;background:var(--paper)}
.footer-grid{display:grid;grid-template-columns:2.1fr 1fr 1.25fr 1fr;gap:45px;align-items:start}
.site-footer h2{font-size:38px;line-height:1.15;letter-spacing:-.7px;margin:0 0 30px}
.footer-intro>p{display:block;font-size:14px;line-height:1.85;max-width:430px;margin:0 0 26px}
.footer-intro .button{font-size:12px;padding:14px 20px;gap:24px}
.footer-inquiries{display:grid;gap:5px;margin:28px 0 23px;font-size:13px;overflow-wrap:anywhere}
.footer-inquiries span{color:var(--muted)}.footer-inquiries span:not(:first-child){margin-top:15px}
.footer-socials{display:flex;gap:12px;margin-bottom:14px}.footer-socials a{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:30px;padding:10px 17px;font-size:12px}
.footer-column nav{display:flex;flex-direction:column;gap:20px;font-size:13px}.footer-column nav span{color:var(--muted)}.footer-column small{display:block;margin-top:20px}
.site-footer a:not(.button):hover{color:#a17c54}
.footer-bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px;margin-top:55px;padding-top:23px;border-top:1px solid var(--border)}
.footer-bottom .brand{justify-self:start;font-size:24px}.footer-bottom p{display:block;margin:0;text-align:center;font-size:11px;color:var(--muted)}.footer-bottom>a:last-child{justify-self:end;font-size:11px;color:var(--muted)}
@media(max-width:1100px){.footer-grid{grid-template-columns:1.7fr 1fr 1fr 1fr;gap:25px}.site-footer h2{font-size:32px}.footer-column nav{font-size:12px}}
@media(max-width:850px){.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.footer-bottom{grid-template-columns:1fr auto}.footer-bottom p{grid-row:2;grid-column:1 / -1;text-align:left}}
@media(max-width:450px){.site-footer{padding-top:45px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px 20px}.footer-intro{grid-column:1 / -1}.footer-column:last-child{grid-column:1 / -1}.site-footer h2{font-size:30px;margin-bottom:22px}.footer-column nav{gap:14px}.footer-bottom{margin-top:35px;gap:18px}.footer-bottom p{font-size:10px}}

/* Original atelier monogram and company wordmark. */
.brand{display:inline-flex;align-items:center;gap:13px;flex-shrink:0}
.brand .brand-logo{display:block;width:66px;height:66px;object-fit:contain;flex-shrink:0}
.brand .brand-wordmark{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:30px;font-weight:400;letter-spacing:3px;line-height:1;margin:0}
.brand .brand-tagline{display:block;font-family:Manrope,Arial,sans-serif;font-size:8px;font-weight:500;letter-spacing:1.8px;margin-top:10px}
.footer-bottom{grid-template-columns:auto 1fr auto}.footer-bottom .brand .brand-logo{width:56px;height:56px}.footer-bottom .brand .brand-wordmark{font-size:25px}.footer-bottom .brand .brand-tagline{font-size:7px}
@media(max-width:1100px) and (min-width:651px){.header nav{gap:18px}.header-link{display:none}}
@media(max-width:850px){.footer-bottom{grid-template-columns:1fr auto}.footer-bottom p{grid-row:2;grid-column:1 / -1}}
@media(max-width:650px){.brand{gap:8px}.brand .brand-logo{width:48px;height:48px}.brand .brand-wordmark{font-size:25px;letter-spacing:2px}.brand .brand-tagline{font-size:7px;letter-spacing:1.3px;margin-top:8px}.footer-bottom .brand .brand-logo{width:45px;height:45px}.footer-bottom .brand .brand-wordmark{font-size:22px}.footer-bottom{gap:12px}}
@media(max-width:360px){.header .brand .brand-wordmark{font-size:22px}.header .brand .brand-logo{width:40px;height:40px}.menu{padding:8px}}

.service-price{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:5px 15px;margin-top:17px;padding-top:12px;border-top:1px solid var(--border);font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;line-height:1.25}.service-price span{font-family:Manrope,Arial,sans-serif;font-size:10px;color:var(--muted)}.pricing-guide-link{margin-top:28px}.service-card:first-child img{object-position:center}.service-card:nth-child(3) img{object-position:center 62%}
.pricing-table{width:100%;border-collapse:collapse;text-align:left;font-size:15px}.pricing-table th,.pricing-table td{padding:19px 24px;border-bottom:1px solid var(--border)}.pricing-table thead th{font-weight:600;background:rgba(250,248,244,.6)}.pricing-table tbody th{font-weight:400}.pricing-table td{width:28%;white-space:nowrap}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:650px){.pricing-table{font-size:13px}.pricing-table th,.pricing-table td{padding:16px 10px}.pricing-table td{width:25%}.service-price{font-size:27px}}

/* Transparent navigation sits directly over the hero video. */
body{position:relative}
.header{position:absolute;top:0;left:0;right:0;z-index:10;background:transparent;border:0;color:#fffaf2;height:114px}
.header .brand .brand-logo{width:150px;height:100px;object-fit:contain;filter:brightness(0) invert(1)}
.header nav a:hover{color:#e5d8c6}
.header .header-link{display:inline-flex;justify-content:center;padding:15px 23px;border:0;background:var(--paper);color:var(--ink);font-size:12px;white-space:nowrap}
.header .header-link:hover{background:#e5d8c6}
.hero{padding-top:146px;min-height:824px}
@media(min-width:1550px){.hero{min-height:914px}}
@media(max-width:1000px){.header{height:100px}.header .brand .brand-logo{width:120px;height:85px}.header nav{gap:18px;font-size:12px}.header .header-link{padding:13px 16px;font-size:11px}.hero{padding-top:132px;min-height:752px}}
@media(max-width:650px){.header{height:88px;gap:10px;padding:0 5%}.header .brand .brand-logo{width:78px;height:65px}.header .header-link{margin-left:auto;padding:12px 14px;font-size:10px}.header .menu{color:#fffaf2;padding:8px;gap:6px}.header nav{background:rgba(38,30,25,.96);color:#fffaf2;border:0}.hero{padding-top:88px;min-height:758px}.hero-copy{padding-top:42px}}
@media(max-width:360px){.header .brand .brand-logo{width:62px}.header .header-link{padding:11px 9px}.header .menu{font-size:11px;padding:5px}}
