/*
Theme Name: The Artist Duo RN — V8 Full Width Editorial Edition
Theme URI: https://example.com/
Author: Custom Theme
Description: Reference-matched editorial beauty WordPress theme with Elementor compatibility and live theme colors.
Version: 11.0.0
Text Domain: duo-rn-v5
*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--page:#f5f1e9;--paper:#f1ece4;--paper2:#ebe5dc;--ink:#211d19;--muted:#817970;--line:#d9d0c5;--accent:#b8892d;--accent-soft:#d4b36c;--max:1120px;--radius:24px}
:root[data-theme="rose"]{--accent:#b96f68;--accent-soft:#dca09a} :root[data-theme="sage"]{--accent:#7d8a68;--accent-soft:#aab697} :root[data-theme="wine"]{--accent:#965362;--accent-soft:#cf8b98} :root[data-theme="ocean"]{--accent:#77999a;--accent-soft:#a9c3c4} :root[data-theme="gold"]{--accent:#b8892d;--accent-soft:#d4b36c}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--page);color:var(--ink);font-family:"DM Sans",sans-serif;-webkit-font-smoothing:antialiased}body.is-menu-open{overflow:hidden}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}img{display:block;max-width:100%}.container,.ref-shell{width:min(var(--max),calc(100% - 100px));margin:auto}
.site-header{position:fixed;z-index:100;top:33px;left:50%;transform:translateX(-50%);width:min(918px,calc(100% - 72px));height:52px;background:rgba(249,247,242,.94);border:1px solid rgba(55,48,40,.09);border-radius:999px;color:#2c2823;box-shadow:0 9px 28px rgba(45,36,27,.08);backdrop-filter:blur(15px);transition:.35s ease}.site-header.scrolled{top:17px;box-shadow:0 13px 34px rgba(45,36,27,.13)}.nav{height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 17px}.brand{display:flex;align-items:center;gap:9px;font-size:8px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap}.brand-mark{width:28px;height:28px;border:1px solid var(--accent);border-radius:50%;display:grid;place-items:center;color:var(--accent);font-size:12px}.brand em{font-style:normal;color:var(--accent)}.menu{display:flex;align-items:center;gap:28px;margin-left:45px}.menu a{font-size:7px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:#5f5850;opacity:.8;transition:.2s}.menu a:hover,.menu a.active{color:var(--accent);opacity:1}.nav-actions{display:flex;align-items:center;gap:7px}.round-btn{border:1px solid rgba(38,33,28,.1);background:rgba(255,255,255,.35);width:29px;height:29px;border-radius:50%;cursor:pointer;color:#4d4740;font-size:14px}.wa-nav{background:#201d19;color:#fff;border-radius:999px;padding:9px 15px;font-size:7px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hamb{border:1px solid rgba(38,33,28,.1);background:transparent;border-radius:50%;width:29px;height:29px;color:#4d4740;cursor:pointer;font-size:13px;display:none}
.theme-picker{position:relative}.theme-picker-btn{height:29px;border:1px solid rgba(38,33,28,.1);background:rgba(255,255,255,.3);border-radius:999px;padding:0 8px;display:flex;align-items:center;gap:5px;cursor:pointer;color:#4d4740;font-size:7px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.theme-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:inset 0 0 0 2px rgba(255,255,255,.6)}.theme-palette{position:absolute;right:0;top:38px;display:flex;gap:6px;padding:8px;background:#faf7f1;border:1px solid #d8d0c5;border-radius:999px;box-shadow:0 14px 35px rgba(0,0,0,.14);opacity:0;visibility:hidden;transform:translateY(-5px) scale(.96);transition:.2s;z-index:20}.theme-picker.open .theme-palette{opacity:1;visibility:visible;transform:none}.theme-swatch{width:21px;height:21px;border-radius:50%;border:2px solid transparent;background:var(--swatch);cursor:pointer;transition:.2s}.theme-swatch:hover{transform:scale(1.1)}.theme-swatch.is-selected{box-shadow:0 0 0 2px #fff,0 0 0 3px #332d2726}
.hero-ref{padding:105px 0 0}.hero-ref .ref-shell{max-width:918px}.hero-ref-grid{display:grid;grid-template-columns:55% 45%;min-height:820px;border-radius:23px;overflow:hidden;background:var(--paper);box-shadow:0 12px 45px rgba(63,49,37,.05)}.hero-ref-photo{position:relative;overflow:hidden;background:#d7d1cc}.hero-ref-photo img{width:100%;height:100%;object-fit:cover;object-position:center center;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.hero-ref-photo:hover img{transform:scale(1.025)}.hero-ref-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 72%,rgba(20,15,12,.58))}.photo-label{position:absolute;z-index:2;bottom:18px;left:29px;color:#fff;font-size:6.5px;letter-spacing:.2em;text-transform:uppercase;display:flex;align-items:center;gap:8px}.photo-label span{width:5px;height:5px;border-radius:50%;background:var(--accent-soft)}.hero-ref-copy{padding:59px 59px 34px 59px;display:flex;flex-direction:column;background:linear-gradient(120deg,#f3eee7,#eee8e0)}.hero-topline{font-size:7px;letter-spacing:.28em;color:var(--accent);font-weight:700;text-transform:uppercase;margin-bottom:58px}.hero-index{font-size:7px;letter-spacing:.24em;color:#8e8277;text-transform:uppercase;margin-bottom:25px}.hero-ref-copy h1{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:clamp(62px,6.25vw,87px);line-height:.74;letter-spacing:-.055em;margin:0 0 26px}.hero-ref-copy h1 em{font-style:italic;color:var(--accent)}.hero-ref-copy>p{max-width:310px;color:#776e66;font-size:11px;line-height:1.75;margin:0}.ref-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:26px}.ref-btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:999px;padding:12px 15px;text-transform:uppercase;letter-spacing:.15em;font-size:6.7px;font-weight:700;border:1px solid #ddd5cb;transition:.25s}.ref-btn span{font-size:11px;line-height:1}.ref-btn.dark{background:#211e1a;color:#fff;border-color:#211e1a}.ref-btn.light{background:transparent;color:#2b2722}.ref-btn:hover{transform:translateY(-2px);box-shadow:0 9px 20px rgba(35,29,24,.11)}.hero-ref-meta{margin-top:auto;border-top:1px solid #ddd5cc;padding-top:16px;display:flex;justify-content:space-between;color:#8c8177;font-size:5.8px;letter-spacing:.22em;line-height:1.65;text-transform:uppercase}.hero-ref-meta span:last-child{text-align:right}
.statement-ref{background:var(--page);padding:89px 0 91px}.statement-grid{display:grid;grid-template-columns:45% 55%;align-items:center}.tiny-label{font-size:7px;letter-spacing:.29em;color:var(--accent);font-weight:700;text-transform:uppercase}.statement-ref p{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:39px;line-height:1.08;letter-spacing:-.035em;margin:0}.statement-ref em,.services-intro h2 em,.duo-copy h2 em,.portfolio-head h2 em,.quote-ref em,.contact-ref h2 em{font-style:italic;color:var(--accent)}
.services-ref{background:#f0ebe4;border-top:1px solid #e0d8ce;padding:0 0 100px}.section-marker{height:104px;border-bottom:1px solid #ddd4ca;display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:17px;color:#847a71;font-size:6.5px;letter-spacing:.2em;text-transform:uppercase}.section-marker span:first-child{color:var(--accent)}.services-intro{display:grid;grid-template-columns:30% 42% 28%;gap:35px;padding:83px 0 72px;align-items:end}.services-intro h2{font-family:"Cormorant Garamond",serif;font-size:62px;line-height:.86;font-weight:500;letter-spacing:-.045em;margin:0}.services-intro p{max-width:290px;color:#756c64;font-size:10px;line-height:1.8;margin:0}.service-ref-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d9d0c6;border-bottom:1px solid #d9d0c6}.service-ref-grid article{min-height:280px;padding:24px 24px 29px;border-right:1px solid #d9d0c6;display:flex;flex-direction:column}.service-ref-grid article:last-child{border-right:0}.service-ref-grid article>span{font-size:7px;letter-spacing:.2em;color:var(--accent)}.service-ref-grid h3{font-family:"Cormorant Garamond",serif;font-size:34px;font-weight:500;margin:54px 0 10px}.service-ref-grid p{font-size:10px;line-height:1.75;color:#756c64;max-width:260px;margin:0}.service-ref-grid a{margin-top:auto;padding-top:20px;font-size:7px;letter-spacing:.17em;text-transform:uppercase;color:#4b443d}
.duo-ref{padding:110px 0;background:var(--paper2)}.duo-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.duo-image{height:590px;border-radius:22px 22px 22px 0;overflow:hidden}.duo-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.duo-copy{padding-right:50px}.duo-copy h2{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:65px;line-height:.9;letter-spacing:-.05em;margin:20px 0 25px}.duo-copy p,.contact-ref p{font-size:11px;line-height:1.85;color:#756c64;max-width:430px}.duo-copy .ref-btn{margin-top:15px}
.portfolio-ref{padding:115px 0;background:var(--page)}.portfolio-head{display:grid;grid-template-columns:1fr 1fr;align-items:end;margin-bottom:50px}.portfolio-head h2{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:70px;line-height:.84;letter-spacing:-.05em;margin:19px 0 0}.portfolio-head p{justify-self:end;max-width:290px;color:#756c64;font-size:10px;line-height:1.8}.portfolio-ref-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:14px}.portfolio-ref-grid .p-card:nth-child(2),.portfolio-ref-grid .p-card:nth-child(3){height:290px}.portfolio-ref-grid .p-card{height:590px;position:relative;overflow:hidden;background:#d8d0c7}.portfolio-ref-grid .p-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.portfolio-ref-grid .p-card:hover img{transform:scale(1.035)}.portfolio-ref-grid .p-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(22,18,15,.5))}.portfolio-ref-grid .p-card span{position:absolute;z-index:2;left:20px;bottom:18px;color:#fff;font-size:6.5px;letter-spacing:.2em;text-transform:uppercase}.portfolio-ref-grid .p-card:nth-child(2){grid-column:2;grid-row:1}.portfolio-ref-grid .p-card:nth-child(3){grid-column:2;grid-row:2;margin-top:-300px;transform:translateY(314px)}
.quote-ref{padding:130px 0;text-align:center;background:#efe9e1}.quote-ref p{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:58px;line-height:.98;letter-spacing:-.045em;max-width:820px;margin:auto}.quote-ref span{display:block;margin-top:25px;font-size:7px;letter-spacing:.26em;color:#857b72}
.contact-ref{padding:110px 0;background:#f3eee7;border-top:1px solid #ddd5cb}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-ref h2{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:68px;line-height:.9;letter-spacing:-.05em;margin:18px 0 25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{margin-bottom:13px}.field label{display:block;font-size:7px;letter-spacing:.18em;text-transform:uppercase;color:#80766d;margin-bottom:6px}.field input,.field textarea{width:100%;border:1px solid #d8d0c6;background:#f8f4ee;color:#26211d;border-radius:7px;padding:11px 12px;outline:none}.field textarea{min-height:110px;resize:vertical}.field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent)}.submit{cursor:pointer}.form-message{font-size:9px;color:var(--accent);margin-top:9px;min-height:18px}
.site-footer{padding:38px 0;background:var(--page);border-top:1px solid #ddd5cb;color:#827870;font-size:7px;letter-spacing:.12em;text-transform:uppercase}.footer-flex{display:flex;justify-content:space-between}.floating-wa{position:fixed;z-index:80;right:23px;bottom:22px;background:#211e1a;color:#fff;border-radius:999px;padding:11px 15px;font-size:7px;font-weight:700;letter-spacing:.15em;box-shadow:0 10px 28px rgba(0,0,0,.16)}.floating-wa i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#78d54e;margin-right:6px}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.2s}.mobile-menu{display:none;position:fixed;z-index:90;inset:0;background:#f4efe8;padding:105px 28px 40px;color:#25211d}.mobile-menu.open{display:block;animation:menuIn .3s ease}.mobile-menu small{color:var(--accent);font-size:7px;font-weight:700;letter-spacing:.25em;text-transform:uppercase}.mobile-menu a{display:block;font-family:"Cormorant Garamond",serif;font-size:47px;border-bottom:1px solid #ddd4ca;padding:11px 0}@keyframes menuIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.soft-light{filter:saturate(.94)}
@media(max-width:900px){.container,.ref-shell{width:calc(100% - 40px)}.site-header{width:calc(100% - 28px);top:16px}.menu{display:none}.hamb{display:block}.hero-ref{padding-top:90px}.hero-ref-grid{grid-template-columns:1fr;min-height:0}.hero-ref-photo{height:610px}.hero-ref-copy{min-height:650px;padding:48px 42px 30px}.hero-topline{margin-bottom:44px}.hero-ref-copy h1{font-size:75px}.statement-grid,.services-intro,.portfolio-head,.contact-grid{grid-template-columns:1fr}.statement-ref{padding:75px 0}.statement-ref .tiny-label{margin-bottom:25px}.services-intro{gap:25px}.services-intro h2{font-size:58px}.services-intro p{max-width:420px}.service-ref-grid{grid-template-columns:1fr}.service-ref-grid article{border-right:0;border-bottom:1px solid #d9d0c6;min-height:230px}.service-ref-grid article:last-child{border-bottom:0}.duo-grid{grid-template-columns:1fr;gap:45px}.duo-image{height:500px}.duo-copy{padding-right:0}.portfolio-head p{justify-self:start;margin-top:20px}.portfolio-ref-grid{grid-template-columns:1fr}.portfolio-ref-grid .p-card,.portfolio-ref-grid .p-card:nth-child(2),.portfolio-ref-grid .p-card:nth-child(3){height:420px;grid-column:auto;grid-row:auto;margin:0;transform:none}.contact-grid{gap:45px}.theme-label{display:none}.theme-picker-btn{width:29px;padding:0;justify-content:center}.theme-palette{right:-50px}}
@media(max-width:560px){.container,.ref-shell{width:calc(100% - 28px)}.brand{font-size:7px;letter-spacing:.14em}.brand-mark{width:27px;height:27px}.wa-nav{padding:8px 10px}.round-btn{display:none}.theme-picker{display:none}.hero-ref{padding-top:80px}.hero-ref-grid{border-radius:18px}.hero-ref-photo{height:500px}.hero-ref-copy{min-height:600px;padding:37px 27px 25px}.hero-topline{font-size:6px;margin-bottom:38px}.hero-index{font-size:6px;margin-bottom:20px}.hero-ref-copy h1{font-size:57px;line-height:.77}.hero-ref-copy>p{font-size:10px}.hero-ref-meta{font-size:5px}.statement-ref p{font-size:34px}.section-marker{height:88px}.services-intro{padding:60px 0}.services-intro h2{font-size:52px}.service-ref-grid h3{margin-top:40px}.duo-copy h2,.contact-ref h2{font-size:53px}.portfolio-head h2{font-size:57px}.quote-ref p{font-size:43px}.form-row{grid-template-columns:1fr}.footer-flex{display:block}.footer-flex div+div{margin-top:10px}}
/* V5 — real client gallery + editable home polish */
.portfolio-real-grid{grid-template-columns:1.15fr .85fr;grid-auto-rows:270px;gap:14px}.portfolio-real-grid .p-card{height:270px!important;grid-column:auto!important;grid-row:auto!important;margin:0!important;transform:none!important}.portfolio-real-grid .p-card:first-child{height:554px!important;grid-row:span 2!important}.portfolio-real-grid .p-card img{object-position:center center}.portfolio-real-grid .p-card:nth-child(4),.portfolio-real-grid .p-card:nth-child(7){grid-column:1}.portfolio-real-grid .p-card:nth-child(5),.portfolio-real-grid .p-card:nth-child(8){grid-column:2}.portfolio-real-grid .p-card:nth-child(n+4){min-height:270px}.portfolio-real-grid .p-card span{font-size:6.2px}
@media(max-width:900px){.portfolio-real-grid{grid-template-columns:1fr 1fr;grid-auto-rows:320px}.portfolio-real-grid .p-card,.portfolio-real-grid .p-card:first-child{height:320px!important;grid-row:auto!important}.portfolio-real-grid .p-card:first-child{grid-column:span 2!important}.portfolio-real-grid .p-card:nth-child(n){grid-column:auto!important}}
@media(max-width:560px){.theme-picker{display:block}.theme-picker-btn{width:29px}.theme-palette{right:-72px}.portfolio-real-grid{grid-template-columns:1fr;grid-auto-rows:430px}.portfolio-real-grid .p-card,.portfolio-real-grid .p-card:first-child{height:430px!important;grid-column:auto!important}}

/* V6 — larger type, richer editorial styling, refined enquiry form */
:root{--max:1180px;--radius:28px}
body{font-size:14px;background:radial-gradient(circle at 12% 8%,rgba(184,137,45,.08),transparent 26%),var(--page)}
.site-header{width:min(1080px,calc(100% - 56px));height:62px;top:28px;border-radius:999px;box-shadow:0 14px 40px rgba(45,36,27,.11)}
.nav{padding:0 16px 0 20px}.brand{font-size:10px;letter-spacing:.19em}.brand-mark{width:34px;height:34px;font-size:14px}.menu{gap:34px;margin-left:30px}.menu a{font-size:9px;letter-spacing:.14em}.wa-nav{padding:11px 18px;font-size:9px}.round-btn{width:34px;height:34px}.hamb{width:34px;height:34px;font-size:15px}.theme-picker-btn{height:34px;font-size:8px;padding:0 10px}.theme-dot{width:12px;height:12px}.theme-swatch{width:25px;height:25px}
.hero-ref{padding-top:116px}.hero-ref .ref-shell{max-width:1080px}.hero-ref-grid{grid-template-columns:57% 43%;min-height:790px;border-radius:28px;box-shadow:0 22px 70px rgba(63,49,37,.10)}.hero-ref-copy{padding:72px 66px 38px}.hero-topline,.hero-index{font-size:9px}.hero-topline{margin-bottom:62px}.hero-index{margin-bottom:29px}.hero-ref-copy h1{font-size:clamp(76px,7vw,104px);line-height:.78;margin-bottom:30px}.hero-ref-copy>p{font-size:14px;line-height:1.8;max-width:370px}.ref-actions{gap:11px;margin-top:30px}.ref-btn{padding:14px 19px;font-size:8px;letter-spacing:.14em}.ref-btn span{font-size:13px}.hero-ref-meta{font-size:7px;padding-top:19px}
.photo-label{font-size:8px;bottom:22px;left:32px}.photo-label span{width:7px;height:7px}
.statement-ref{padding:112px 0 116px}.tiny-label{font-size:9px;letter-spacing:.25em}.statement-ref p{font-size:50px}
.services-ref{padding-bottom:120px}.section-marker{height:120px;padding-bottom:21px;font-size:8px}.services-intro{padding:100px 0 82px;gap:45px}.services-intro h2{font-size:76px}.services-intro p{font-size:13px;line-height:1.85;max-width:350px}.service-ref-grid article{min-height:320px;padding:30px 30px 35px}.service-ref-grid article>span{font-size:9px}.service-ref-grid h3{font-size:42px;margin:62px 0 14px}.service-ref-grid p{font-size:13px;line-height:1.8;max-width:320px}.service-ref-grid a{font-size:8px}
.duo-ref{padding:135px 0}.duo-grid{gap:85px}.duo-image{height:650px;border-radius:28px 28px 28px 0}.duo-copy{padding-right:20px}.duo-copy h2{font-size:78px;margin:24px 0 30px}.duo-copy p,.contact-ref p{font-size:14px;line-height:1.9;max-width:500px}
.portfolio-ref{padding:140px 0}.portfolio-head{margin-bottom:62px}.portfolio-head h2{font-size:82px}.portfolio-head p{font-size:13px;line-height:1.85;max-width:350px}.portfolio-real-grid{grid-auto-rows:310px;gap:18px}.portfolio-real-grid .p-card{height:310px!important}.portfolio-real-grid .p-card:first-child{height:638px!important}.portfolio-ref-grid .p-card span{font-size:8px;left:24px;bottom:22px}
.quote-ref{padding:155px 0}.quote-ref p{font-size:70px}.quote-ref span{font-size:9px}
.contact-ref{padding:135px 0}.contact-grid{gap:110px}.contact-ref h2{font-size:80px;margin:22px 0 30px}.field{margin-bottom:18px}.field label{font-size:9px;margin-bottom:8px}.field input,.field textarea,.field select{font-size:14px;padding:14px 15px;border-radius:10px}.field textarea{min-height:145px}.field select{width:100%;border:1px solid #d8d0c6;background:#f8f4ee;color:#26211d;outline:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#8b8177 50%),linear-gradient(135deg,#8b8177 50%,transparent 50%);background-position:calc(100% - 18px) 52%,calc(100% - 13px) 52%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.submit{min-width:180px}.form-message{font-size:12px;margin-top:12px}.site-footer{font-size:9px}.floating-wa{font-size:9px;padding:13px 18px}
.mobile-menu a{font-size:58px}.mobile-menu small{font-size:9px}
.hero-ref-photo img{filter:saturate(1.05) contrast(1.02)}
.portfolio-ref-grid .p-card{border-radius:18px}.portfolio-ref-grid .p-card:after{background:linear-gradient(180deg,transparent 52%,rgba(22,18,15,.62))}.portfolio-ref-grid .p-card:hover{box-shadow:0 18px 45px rgba(44,31,22,.14)}

@media(max-width:900px){
 .site-header{width:calc(100% - 28px);height:58px}.brand{font-size:8px}.brand-mark{width:31px;height:31px}.wa-nav{padding:10px 13px;font-size:8px}.theme-picker-btn{height:31px}.hero-ref{padding-top:90px}.hero-ref-grid{grid-template-columns:1fr;min-height:0}.hero-ref-photo{height:650px}.hero-ref-copy{min-height:690px;padding:58px 48px 34px}.hero-ref-copy h1{font-size:82px}.hero-ref-copy>p{font-size:13px}.statement-ref p{font-size:46px}.services-intro h2{font-size:68px}.service-ref-grid h3{font-size:40px}.duo-image{height:580px}.duo-copy h2{font-size:68px}.portfolio-head h2{font-size:72px}.quote-ref p{font-size:60px}.contact-ref h2{font-size:70px}
}
@media(max-width:560px){
 .site-header{top:12px;width:calc(100% - 18px);height:54px}.brand{font-size:7px;letter-spacing:.12em;gap:6px}.brand-mark{width:29px;height:29px}.wa-nav{display:none}.theme-picker-btn{width:31px;padding:0;justify-content:center}.theme-label{display:none}.round-btn{display:none}.hero-ref{padding-top:72px}.hero-ref-grid{border-radius:20px}.hero-ref-photo{height:570px}.hero-ref-copy{min-height:650px;padding:42px 28px 28px}.hero-topline{font-size:7px;margin-bottom:42px}.hero-index{font-size:7px;margin-bottom:22px}.hero-ref-copy h1{font-size:64px;line-height:.8}.hero-ref-copy>p{font-size:12px}.hero-ref-meta{font-size:6px}.ref-btn{padding:13px 16px;font-size:7px}.statement-ref{padding:80px 0}.statement-ref p{font-size:39px}.section-marker{height:95px;font-size:7px}.services-intro{padding:68px 0}.services-intro h2{font-size:57px}.services-intro p{font-size:12px}.service-ref-grid h3{font-size:37px}.service-ref-grid p{font-size:12px}.duo-ref{padding:90px 0}.duo-image{height:500px}.duo-copy h2{font-size:57px}.duo-copy p,.contact-ref p{font-size:12px}.portfolio-ref{padding:90px 0}.portfolio-head h2{font-size:61px}.portfolio-head p{font-size:12px}.portfolio-real-grid{grid-auto-rows:430px}.portfolio-real-grid .p-card,.portfolio-real-grid .p-card:first-child{height:430px!important}.quote-ref{padding:100px 0}.quote-ref p{font-size:48px}.contact-ref{padding:90px 0}.contact-ref h2{font-size:58px}.field input,.field textarea,.field select{font-size:13px;padding:13px 14px}.mobile-menu a{font-size:50px}
}


/* V7 — full-width header/hero + full-resolution image viewing */
.site-header-full{left:0;right:0;transform:none;width:100%;top:0;border-radius:0;border-left:0;border-right:0;border-top:0;height:74px;background:rgba(249,247,242,.96);box-shadow:0 8px 30px rgba(45,36,27,.09)}
.site-header-full.scrolled{top:0}
.site-header-full .nav{width:min(100%,1440px);margin:auto;padding-left:30px;padding-right:30px}
.hero-fullwidth{padding-top:74px}
.hero-fullwidth .hero-ref-grid{width:100%;max-width:none;margin:0;border-radius:0;grid-template-columns:minmax(0,58%) minmax(0,42%);min-height:calc(100vh - 74px);box-shadow:none}
.hero-fullwidth .hero-ref-photo{min-height:calc(100vh - 74px);border-radius:0}
.hero-fullwidth .hero-ref-photo img{width:100%;height:100%;object-fit:cover;object-position:center center}
.hero-fullwidth .hero-ref-copy{display:flex;flex-direction:column;justify-content:center;padding:80px clamp(50px,6vw,110px)}
.hero-fullwidth .hero-ref-copy h1{font-size:clamp(76px,7.2vw,118px)}

/* Keep gallery photos sharp and uncropped. Clicking any photo opens the original full-size image. */
.portfolio-real-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;align-items:start;gap:22px}
.portfolio-real-grid .p-card,
.portfolio-real-grid .p-card:first-child{height:auto!important;min-height:0!important;grid-column:auto!important;grid-row:auto!important;border:0;padding:0;background:transparent;overflow:hidden;position:relative;display:block;cursor:zoom-in;text-align:left}
.portfolio-real-grid .p-card img{width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto;object-fit:contain;display:block;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease}
.portfolio-real-grid .p-card:hover img{transform:scale(1.025);filter:saturate(1.04) contrast(1.02)}
.portfolio-real-grid .p-card span{position:absolute;left:18px;right:18px;bottom:16px;color:#fff;font-size:9px;letter-spacing:.14em;text-transform:uppercase;text-shadow:0 2px 10px rgba(0,0,0,.45);opacity:0;transform:translateY(7px);transition:.3s ease}
.portfolio-real-grid .p-card:hover span{opacity:1;transform:translateY(0)}
.portfolio-real-grid .p-card span b{font-size:15px;margin-left:5px}

.image-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(10,7,5,.94);display:flex;align-items:center;justify-content:center;padding:30px;opacity:0;visibility:hidden;pointer-events:none;transition:.25s ease}
.image-lightbox.is-open{opacity:1;visibility:visible;pointer-events:auto}
.image-lightbox figure{margin:0;max-width:96vw;max-height:94vh;display:flex;flex-direction:column;align-items:center;justify-content:center}
.image-lightbox img{display:block;width:auto;height:auto;max-width:96vw;max-height:88vh;object-fit:contain;box-shadow:0 25px 80px rgba(0,0,0,.45)}
.image-lightbox figcaption{margin-top:13px;color:#f6f1e9;font-size:10px;letter-spacing:.18em;text-transform:uppercase;text-align:center}
.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;border:0;background:rgba(255,255,255,.11);color:#fff;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;cursor:pointer;transition:.2s ease}
.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:rgba(255,255,255,.22);transform:scale(1.05)}
.lightbox-close{top:24px;right:28px;font-size:30px;line-height:1}.lightbox-prev{left:24px;font-size:38px}.lightbox-next{right:24px;font-size:38px}
body.lightbox-open{overflow:hidden}

@media(max-width:900px){
 .site-header-full .nav{padding-left:18px;padding-right:18px}
 .hero-fullwidth .hero-ref-grid{grid-template-columns:1fr;min-height:0}
 .hero-fullwidth .hero-ref-photo{min-height:0;height:auto}
 .hero-fullwidth .hero-ref-photo img{height:auto;object-fit:contain;width:100%}
 .hero-fullwidth .hero-ref-copy{min-height:620px;padding:58px 48px}
 .portfolio-real-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
}
@media(max-width:560px){
 .site-header-full{height:60px}.site-header-full .nav{padding-left:12px;padding-right:12px}
 .hero-fullwidth{padding-top:60px}
 .hero-fullwidth .hero-ref-copy{min-height:600px;padding:42px 28px}
 .portfolio-real-grid{grid-template-columns:1fr;gap:12px}
 .portfolio-real-grid .p-card span{opacity:1;transform:none;font-size:8px}
 .image-lightbox{padding:12px}
 .image-lightbox img{max-width:94vw;max-height:82vh}
 .lightbox-prev,.lightbox-next{width:40px;height:40px;font-size:30px}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-close{top:12px;right:12px}
}

/* V7 hero: photograph runs edge-to-edge across the entire viewport */
.hero-fullwidth .hero-ref-grid{display:block;position:relative;min-height:calc(100vh - 74px);height:calc(100vh - 74px)}
.hero-fullwidth .hero-ref-photo{position:absolute;inset:0;width:100%;height:100%;min-height:0}
.hero-fullwidth .hero-ref-photo img{width:100%;height:100%;object-fit:cover;object-position:center 28%}
.hero-fullwidth .hero-ref-copy{position:absolute;z-index:2;right:0;top:0;width:min(44%,650px);height:100%;min-height:0;background:rgba(245,241,233,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);justify-content:center;box-shadow:-18px 0 60px rgba(25,18,13,.10)}
.hero-fullwidth .photo-label{z-index:3}
@media(max-width:900px){
 .hero-fullwidth .hero-ref-grid{height:auto;min-height:0;display:block}
 .hero-fullwidth .hero-ref-photo{position:relative;inset:auto;width:100%;height:auto}
 .hero-fullwidth .hero-ref-photo img{height:auto;object-fit:contain;object-position:center}
 .hero-fullwidth .hero-ref-copy{position:relative;right:auto;top:auto;width:100%;height:auto;min-height:620px;background:var(--paper);box-shadow:none;backdrop-filter:none}
}


/* V8 — eliminate horizontal page scrolling and refine hero image selection */
html, body { width:100%; max-width:100%; overflow-x:hidden; }
.site-wrap, .reference-page, main { width:100%; max-width:100%; overflow-x:hidden; }
img, video, iframe { max-width:100%; }
.hero-fullwidth { width:100%; max-width:100vw; overflow:hidden; }
.hero-fullwidth .hero-ref-grid { width:100%; max-width:100vw; overflow:hidden; }
.hero-fullwidth .hero-ref-photo { overflow:hidden; }
.hero-fullwidth .hero-ref-photo img { max-width:none; }
@media (min-width:901px){
  .hero-fullwidth .hero-ref-photo img { object-position:center 38%; }
}
@media (max-width:900px){
  .hero-fullwidth .hero-ref-photo img { max-width:100%; width:100%; height:auto; }
}


/* V9 — typography alignment + sharper hero presentation */
.hero-fullwidth .hero-ref-photo img{
  image-rendering:auto;
  filter:saturate(1.04) contrast(1.045) brightness(1.01);
  object-position:36% 30%;
}
.hero-fullwidth .hero-ref-copy{
  text-align:left;
  align-items:flex-start;
}
.hero-fullwidth .hero-ref-copy h1{
  font-family:"Cormorant Garamond",serif;
  font-weight:500;
  font-size:clamp(72px,6.6vw,112px);
  line-height:.86;
  letter-spacing:-.045em;
  text-align:left;
  max-width:8ch;
  margin:0 0 30px;
}
.hero-fullwidth .hero-ref-copy>p{
  font-family:"DM Sans",sans-serif;
  font-size:15px;
  line-height:1.75;
  letter-spacing:0;
  text-align:left;
  max-width:420px;
}
.hero-fullwidth .hero-topline,.hero-fullwidth .hero-index{
  font-family:"DM Sans",sans-serif;
  font-weight:700;
  line-height:1.4;
}
.hero-fullwidth .ref-actions{align-items:center}
.hero-fullwidth .hero-ref-meta{width:100%;font-family:"DM Sans",sans-serif;line-height:1.6}
@media (min-width:1400px){
  .hero-fullwidth .hero-ref-copy{width:min(42%,680px);padding-left:clamp(70px,6vw,120px);padding-right:clamp(60px,5vw,100px)}
  .hero-fullwidth .hero-ref-copy h1{font-size:clamp(88px,6vw,116px)}
}
@media (max-width:900px){
  .hero-fullwidth .hero-ref-photo img{object-position:center 25%;filter:saturate(1.04) contrast(1.035) brightness(1.01)}
  .hero-fullwidth .hero-ref-copy h1{font-size:clamp(62px,11vw,88px);line-height:.88;max-width:9ch}
  .hero-fullwidth .hero-ref-copy>p{font-size:14px;max-width:600px}
}
@media (max-width:560px){
  .hero-fullwidth .hero-ref-copy h1{font-size:60px;line-height:.9;max-width:9ch;letter-spacing:-.04em}
  .hero-fullwidth .hero-ref-copy>p{font-size:13px;line-height:1.75}
}

/* V10 — THE RITUAL alignment + contact details */
.services-ref .services-intro{max-width:900px;margin:0 auto 76px;display:grid;grid-template-columns:220px minmax(0,1fr);column-gap:70px;align-items:start}
.services-ref .services-intro .tiny-label{padding-top:12px}
.services-ref .services-intro h2{margin:0 0 22px;max-width:700px;line-height:.94}
.services-ref .services-intro p{grid-column:2;max-width:650px;margin:0;font-size:17px;line-height:1.75;color:#62584f}
.services-ref .service-ref-grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(50,42,35,.16)}
.services-ref .service-ref-grid article{padding:42px 34px 40px;border-right:1px solid rgba(50,42,35,.16);min-height:285px}
.services-ref .service-ref-grid article:first-child{border-left:1px solid rgba(50,42,35,.16)}
.services-ref .service-ref-grid article>span{font-size:12px;letter-spacing:.18em;color:var(--accent);font-weight:700}
.services-ref .service-ref-grid h3{font-size:29px;line-height:1.05;margin:30px 0 15px}
.services-ref .service-ref-grid p{font-size:15px;line-height:1.7;color:#655b52;max-width:330px;margin-bottom:25px}
.services-ref .service-ref-grid a{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#27211d;font-weight:700}
.contact-details{margin-top:52px;padding-top:28px;border-top:1px solid rgba(50,42,35,.16);display:grid;gap:16px}
.contact-details .contact-name{font-family:"Cormorant Garamond",serif;font-size:25px;font-weight:600;color:#241f1b}
.contact-details .contact-item{display:flex;gap:14px;align-items:flex-start;font-size:15px;line-height:1.65;color:#62584f}
.contact-details .contact-icon{width:25px;color:var(--accent);font-weight:700;flex:0 0 25px}
.contact-details a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(50,42,35,.2)}
.contact-details a:hover{color:var(--accent)}
@media(max-width:800px){
 .services-ref .services-intro{display:block;margin-bottom:48px}
 .services-ref .services-intro .tiny-label{margin-bottom:18px}
 .services-ref .services-intro p{margin-top:22px;font-size:15px}
 .services-ref .service-ref-grid{grid-template-columns:1fr;border-top:1px solid rgba(50,42,35,.16)}
 .services-ref .service-ref-grid article,.services-ref .service-ref-grid article:first-child{border-left:1px solid rgba(50,42,35,.16);border-right:1px solid rgba(50,42,35,.16);border-bottom:1px solid rgba(50,42,35,.16);min-height:0;padding:32px 24px}
 .services-ref .service-ref-grid h3{font-size:27px}
 .contact-details{margin-top:38px}
}
