@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
:root{--paper:#f9f6f0;--ink:#292521;--wine:#4b202d;--line:#d9d2c7;--muted:#675f58}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a77845;outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.13}h1{font-size:clamp(52px,5.1vw,83px);letter-spacing:-3px}h2{font-size:clamp(38px,3.5vw,56px);letter-spacing:-1.8px}h3{font-size:27px}em{font-weight:400;color:var(--wine)}.preview{background:var(--wine);color:#f5eadd;display:flex;justify-content:space-between;padding:7px 5%;font-size:10px;letter-spacing:1.6px}.preview span{letter-spacing:.5px}header{padding:26px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.logo{font-family:Georgia,serif;font-size:38px;letter-spacing:-2px;line-height:1}.logo span{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:4px;margin-top:12px;text-align:center}nav{display:flex;gap:34px;align-items:center;font-size:12px}.nav-cta{border-bottom:1px solid var(--wine);padding-bottom:5px;color:var(--wine)}.nav-cta span{margin-left:26px}.menu{display:none}.hero{display:grid;grid-template-columns:48% 52%;min-height:690px}.hero-copy{padding:65px 9% 35px 10.4%;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;line-height:1.5;margin-bottom:25px}.intro{max-width:390px;color:var(--muted);margin-top:26px;font-size:14px}.actions{display:flex;gap:25px;align-items:center;margin-top:30px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;gap:35px;align-items:center;background:var(--wine);border:1px solid var(--wine);color:#fff;padding:16px 23px;font-size:12px}.button:hover{background:#693244}.text-link{font-size:12px;border:0;border-bottom:1px solid currentColor;padding:5px 0;background:transparent;color:var(--wine)}.hero-note{border-top:1px solid var(--line);margin-top:50px;padding-top:20px;max-width:360px}.hero-note span{font-size:8px;letter-spacing:1.7px}.hero-note p{font-family:Georgia,serif;font-size:17px;margin-top:8px;max-width:260px}.hero-image{position:relative}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-image figcaption{position:absolute;bottom:20px;left:25px;right:25px;color:#fff;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;text-shadow:0 1px 6px #000}.principles{display:flex;justify-content:space-evenly;padding:25px 5%;border-bottom:1px solid var(--line);font:18px Georgia,serif}.principles i{color:#9c7e5b;font-style:normal}.section{padding:90px 7%}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.section-top>p{max-width:345px;font-size:13px;color:var(--muted)}.gallery{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:23px}.interior{padding:0;background:transparent;border:0;color:inherit;text-align:left}.interior img{width:100%;height:340px;object-fit:cover;transition:filter .2s}.interior:hover img{filter:brightness(.9)}.interior div{padding:17px 0}.interior span{font-size:9px;letter-spacing:1.8px}.interior h3{font-size:23px;margin:10px 0}.interior b{float:right;font:20px 'DM Sans',sans-serif;font-weight:400}.interior p{font-size:11px;color:var(--muted)}.micro{font-size:11px;color:var(--muted);margin-top:15px}.style-section{padding:65px 7%;background:#eae5da;display:grid;grid-template-columns:1fr 1fr;gap:12%}.style-section>div>p:not(.eyebrow){max-width:380px;margin-top:25px;color:var(--muted);font-size:13px}.quiz{background:var(--paper);padding:35px}.quiz h3{margin-bottom:23px}.choices{display:grid;gap:10px}.choices button{border:1px solid var(--line);background:transparent;text-align:left;padding:14px 17px;font-size:13px;color:var(--ink)}.choices button:hover{background:#eae5da}.choices span{float:right;font-size:10px}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.services article{padding:30px 30px 10px 0}.services article+article{border-left:1px solid var(--line);padding-left:30px}.number{font-family:Georgia,serif;color:#958478;font-size:25px}.services .eyebrow{margin:27px 0 12px;font-size:9px}.services article>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-top:20px;min-height:50px}.services ul{list-style:none;padding:0;font-size:12px;margin:24px 0}.services li{padding:8px 0;border-bottom:1px solid var(--line)}.process{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:12%}.process>div>p:not(.eyebrow){max-width:330px;margin:24px 0;font-size:13px;color:var(--muted)}.process ol{list-style:none;padding:0;margin:0}.process li{display:flex;gap:25px;border-bottom:1px solid var(--line);padding:22px 0}.process li>span{font-size:12px;color:var(--wine)}.process h3{font-size:24px}.process li p{font-size:13px;color:var(--muted);margin-top:10px}.brief{background:var(--wine);color:var(--paper);display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.brief em{color:#d9bca4}.brief>div>p:not(.eyebrow){max-width:320px;margin-top:25px;font-size:13px;color:#dfcfd1}.brief-note{border-top:1px solid #795360;margin-top:35px;padding-top:20px;font-size:11px;max-width:320px;color:#dfcfd1}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:11px;margin-bottom:16px}input,select,textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #a0828b;color:var(--paper);padding:11px 0;border-radius:0;font-size:12px;outline-offset:4px}input::placeholder,textarea::placeholder{color:#d2bcc3;opacity:1}select option{color:var(--ink);background:var(--paper)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #e1c5a8}form .button{background:var(--paper);color:var(--wine);margin-top:15px;width:100%}form .button:hover{background:#e7dccd}.optional{color:#ceb9c0}#brief-status{font-size:12px;margin-top:15px}#download{color:#fff}#download[hidden]{display:none}.faq{max-width:1050px;margin:auto}.faq h2{margin-bottom:35px}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-size:14px}.faq details p{font-size:13px;color:var(--muted);padding-top:15px;max-width:750px}footer{padding:45px 7% 25px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:30px}footer .logo{justify-self:start}footer p{font-size:12px;color:var(--muted)}footer>div{display:flex;justify-content:end;gap:30px;font-size:12px}footer small{grid-column:1/-1;font-size:9px;color:var(--muted);border-top:1px solid var(--line);padding-top:25px;margin-top:20px}dialog{border:0;background:var(--paper);padding:50px;width:min(580px,90vw);color:var(--ink);max-height:90vh}dialog::backdrop{background:#221a19aa}dialog h2{font-size:42px;margin-bottom:25px}dialog p:not(.eyebrow){color:var(--muted);font-size:14px}dialog h3{font-size:22px;margin-top:25px}dialog ul{font-size:13px;padding-left:18px;margin-bottom:30px}.close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:20px}
@media(min-width:1500px){main,header,footer{max-width:1700px;margin:auto}.hero{min-height:760px}}@media(max-width:1000px){nav{gap:20px}.hero-copy{padding-top:45px;padding-bottom:35px}.hero{min-height:610px}h1{font-size:60px}.gallery{gap:15px}.interior img{height:270px}.interior h3{font-size:20px}.style-section{gap:7%}.section{padding:65px 6%}.brief{gap:6%}}@media(max-width:720px){.preview{font-size:8px}.preview span{display:none}header{padding:22px 6%;flex-wrap:wrap}.logo{font-size:32px}.menu{display:block;background:none;border:1px solid var(--line);padding:8px 12px;font-size:11px}nav{display:none;width:100%;padding:25px 0 5px;flex-direction:column;align-items:start}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6%}.hero h1{font-size:59px;letter-spacing:-2px}.hero-note{margin-top:30px}.hero-image{height:400px}.principles{flex-wrap:wrap;gap:15px;font-size:14px}.principles i{display:none}.section-top{display:block}.section-top>p{margin-top:25px}.gallery{grid-template-columns:1fr}.interior img{height:340px}.interior h3{font-size:25px}.gallery .interior{margin-bottom:15px}.style-section,.process,.brief{grid-template-columns:1fr;gap:35px}.style-section{padding:50px 6%}.quiz{padding:25px}.services{grid-template-columns:1fr}.services article+article{border-left:0;border-top:1px solid var(--line);padding-left:0}.services article{padding:25px 0}.services .eyebrow{margin-top:15px}.services article>p:not(.eyebrow){min-height:0}footer{grid-template-columns:1fr 1fr}footer p{grid-column:1/-1;grid-row:2}footer>div{gap:15px}dialog{padding:40px 25px}.fields{gap:15px}h2{font-size:42px}.section{padding:55px 6%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Luxury direction: restrained bronze, architectural spacing, image-led concepts. */
:root{--paper:#faf7f1;--wine:#46202a;--line:#d8cebf}.hero{min-height:770px;grid-template-columns:44% 56%}.hero-copy{padding-left:11.4%;padding-right:9%}.hero h1{font-size:clamp(55px,4.8vw,79px);line-height:1.08}.hero-image img{object-position:center}.gallery{grid-template-columns:repeat(3,1fr)}.interior img{height:310px}.interior div>span{color:#826749}.investment{background:#ede7dc;display:grid;grid-template-columns:1fr 1fr;gap:12%}.investment-intro{font-size:15px;color:var(--muted);margin-bottom:25px}.value-row{display:flex;gap:22px;padding:20px 0;border-top:1px solid #d1c7b7}.value-row>span{font-size:11px;color:#826749}.value-row h3{font-size:24px}.value-row p{font-size:13px;color:var(--muted);margin-top:12px}.light{color:#dfcfd1;margin:0 0 20px}.look-image{width:100%;height:310px;object-fit:cover;margin-bottom:28px}.close{background:var(--paper);width:35px;height:35px;z-index:1}dialog{width:min(800px,94vw);padding:35px}dialog .eyebrow{margin-bottom:15px}.skip{position:absolute;z-index:10;left:15px;top:-100px;background:var(--paper);padding:12px}.skip:focus{top:10px}.hero .intro{font-size:14px}.hero-note{margin-top:36px}.interior h3{font-size:24px}#brief-status:empty{display:none}
@media(max-width:1000px){.hero{min-height:700px}.hero h1{font-size:61px}.interior img{height:250px}.interior h3{font-size:21px}.investment{gap:7%}}
@media(max-width:720px){.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:45px 6%}.hero h1{font-size:58px}.hero-image{height:420px}.gallery,.investment{grid-template-columns:1fr}.interior img{height:320px}.interior h3{font-size:26px}.investment{gap:30px}.look-image{height:230px}dialog{padding:25px}dialog h2{font-size:33px}.hero .intro{max-width:440px}}
.collection-filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}.collection-filters button{border:1px solid var(--line);background:transparent;padding:10px 16px;color:var(--muted);font-size:11px}.collection-filters button span{margin-left:18px;font-size:9px}.collection-filters button[aria-pressed=true]{background:var(--wine);border-color:var(--wine);color:white}.interior[hidden]{display:none}.gallery{row-gap:25px}
.photo-credit{display:block;margin-top:15px;font-size:11px;text-decoration:underline;text-underline-offset:4px;color:var(--wine)}.photo-credits{padding-top:25px;padding-bottom:45px;border-top:1px solid var(--line)}.photo-credits>p:not(.eyebrow){font-size:12px;color:var(--muted)}.photo-credits ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.photo-credits li{font-size:11px;color:var(--muted)}.photo-credits a:hover{text-decoration:underline}.hero-image img{object-position:50% 50%}@media(max-width:720px){.photo-credits ul{grid-template-columns:1fr 1fr}}
/* Portfolio and dimensional interaction */
.hero-image img{object-fit:cover;object-position:center}.project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.project-card{border:0;padding:0;background:transparent;text-align:left;color:var(--ink)}.project-image{height:330px;position:relative;overflow:hidden;background:#e8e0d4}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1)}.project-card:hover img,.project-card:focus-visible img{transform:scale(1.035)}.image-open{position:absolute;bottom:12px;right:12px;background:var(--paper);padding:7px 11px;font-size:10px;opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s}.project-card:hover .image-open,.project-card:focus-visible .image-open{opacity:1;transform:none}.project-meta{padding-top:18px}.project-meta>span{font-size:9px;letter-spacing:1.5px;color:#826749}.project-meta h3{font-size:24px;margin:10px 0}.project-meta p{font-size:12px;color:var(--muted)}.spatial-section{display:grid;grid-template-columns:1fr 1.15fr;gap:8%;background:#eae4d9;overflow:hidden}.spatial-copy>p:not(.eyebrow){max-width:360px;margin-top:25px;color:var(--muted);font-size:14px}.spatial-copy .text-link{display:inline-block;margin-top:25px}.spatial-copy .micro{font-size:11px!important}.spatial-stage{height:360px;position:relative;display:grid;place-items:center;perspective:1000px;isolation:isolate;background:radial-gradient(ellipse at 50% 55%,#fff9eb 0%,#e6ddcf 70%);border:1px solid #d7cabb;transition:background .6s}.room-model{--angle:-35deg;--accent:#6a3e61;width:300px;height:240px;position:relative;transform-style:preserve-3d;transform:rotateX(58deg) rotateZ(var(--angle));transition:transform .15s ease-out;filter:drop-shadow(10px 15px 10px #66513a33)}.room-floor{position:absolute;inset:0;background:repeating-linear-gradient(90deg,#c9b89c 0 48px,#ad9b7d 49px 50px);border:1px solid #ad987b;box-shadow:0 0 0 9px #b8a181}.room-wall{position:absolute;transform-style:preserve-3d;background:#f3eadb;border:1px solid #c5b79e;box-shadow:inset 0 -8px 0 #e2d3bd}.back-wall{width:300px;height:150px;transform-origin:top left;transform:rotateX(90deg);top:0;left:0;background:linear-gradient(90deg,#e5d9c4 0 22%,#f8f1e5 22% 78%,#e5d9c4 78%)}.left-wall{width:240px;height:150px;transform-origin:top left;left:0;top:240px;transform:rotateZ(-90deg) rotateX(90deg);background:#eee3d1}.window-grid{position:absolute;left:42px;top:20px;width:150px;height:98px;border:6px solid #413b35;background:linear-gradient(0deg,#a9c7b6,#d3e6e6);box-shadow:inset 0 0 0 1px #413b35}.window-grid:before{content:'';position:absolute;left:48%;height:100%;width:4px;background:#413b35}.wall-art{position:absolute;width:82px;height:65px;left:110px;top:43px;background:linear-gradient(35deg,#d0b183 0 30%,var(--accent) 30% 60%,#f9f5eb 60%);border:4px solid #66543e;transform:translateZ(2px)}.light-line{position:absolute;left:7px;right:7px;bottom:9px;height:3px;background:#d7c2a0;box-shadow:0 0 0 transparent}.room-rug{position:absolute;left:48px;top:100px;width:215px;height:120px;background:#f4ece2;transform:translateZ(1px);border:3px solid #e4d9ca}.prism{width:var(--w);height:var(--d);position:absolute;transform-style:preserve-3d;--object:var(--accent)}.prism i{position:absolute;display:block;transform-style:preserve-3d;background:var(--object);border:1px solid #ffffff22;transition:background .4s}.prism .top{width:var(--w);height:var(--d);transform:translateZ(var(--h));filter:brightness(1.13)}.prism .front{width:var(--w);height:var(--h);top:var(--d);transform-origin:top left;transform:rotateX(90deg);filter:brightness(.85)}.prism .side{width:var(--d);height:var(--h);transform-origin:top left;transform:rotateZ(90deg) rotateX(90deg);filter:brightness(.7)}.sofa{left:72px;top:152px;transform:translateZ(2px)}.sofa-back{left:72px;top:203px;transform:translateZ(2px)}.room-table{left:115px;top:103px;--object:#af9370;transform:translateZ(2px)}.room-desk{left:170px;top:25px;--object:#594433;transform:translateZ(2px)}.model-caption{position:absolute;bottom:15px;left:20px;font-size:8px;letter-spacing:1.8px;color:#6c5e4b}.evening{background:radial-gradient(ellipse at center,#56465d,#282332)}.evening .room-model{filter:brightness(.78) drop-shadow(10px 15px 10px #0005)}.evening .light-line{background:#ffe0a1;box-shadow:0 -10px 30px 13px #ffd58488}.evening .window-grid{background:linear-gradient(#383b59,#76628a)}.evening .model-caption{color:#e7dccb}.model-controls{padding-top:18px}.rotation-label{display:flex;justify-content:space-between;color:var(--ink);font-size:11px;margin:0}.model-controls input[type=range]{width:100%;accent-color:var(--wine);border:none;padding:10px 0;margin:0;background:none}.finish-controls{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.finish-controls button{display:flex;gap:8px;align-items:center;padding:8px 12px;border:1px solid #c5b79e;background:transparent;font-size:11px;color:var(--ink)}.finish-controls button[aria-pressed=true]{border-color:var(--wine);box-shadow:inset 0 0 0 1px var(--wine)}.swatch{display:block;width:12px;height:12px;border-radius:50%}.plum{background:#6a3e61}.ivory{background:#dfd2b8}.olive{background:#647258}.lighting-button{background:transparent;border:0;border-bottom:1px solid #9e8c78;padding:9px 0;margin:12px 22px 0 0;font-size:11px;color:var(--wine)}.lighting-button span{margin-left:20px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}.hero-copy h1{animation:hero-in .8s ease both}.hero-copy .intro{animation:hero-in 1s .12s ease both}@keyframes hero-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.interior{animation:card-in .35s ease}@keyframes card-in{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:none}}.look-image{object-fit:contain;background:#eee8df;height:380px}dialog[open]{animation:dialog-in .25s ease}@keyframes dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.project-grid{grid-template-columns:repeat(2,1fr)}.project-image{height:350px}.spatial-section{gap:5%}.spatial-stage{height:320px}.room-model{scale:.85}}
@media(max-width:720px){.spatial-section{grid-template-columns:1fr;gap:35px}.project-grid{gap:22px 14px}.project-image{height:265px}.project-meta h3{font-size:22px}.spatial-stage{height:350px}.room-model{scale:.85}.image-open{opacity:1;transform:none}.look-image{height:330px}.project-meta p{font-size:11px}}
@media(max-width:400px){.project-image{height:220px}.room-model{scale:.72}.spatial-stage{height:310px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.hero-copy h1,.hero-copy .intro{opacity:1}}
/* Six clipped facets rotate away to reveal the next design. */
.prism-showcase{overflow:hidden;isolation:isolate;background:#342a26}.prism-showcase>img{position:absolute;inset:0}.prism-shards{position:absolute;inset:0;perspective:1100px;pointer-events:none;z-index:1}.prism-shard{position:absolute;inset:0;backface-visibility:hidden;transform-origin:var(--pivot) 50%;animation:prism-turn .95s cubic-bezier(.22,.72,.18,1) var(--delay) both;will-change:transform,opacity}.prism-shard img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.prism-shard:after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 25%,#fff6 49%,transparent 72%);opacity:0;animation:prism-glint .95s ease var(--delay) both}.prism-showcase figcaption{z-index:2;bottom:24px;gap:20px}.prism-showcase figcaption span:last-child{text-align:right}.prism-controls{position:absolute;z-index:3;top:20px;right:20px;display:flex;align-items:center;gap:6px;background:#221a19b8;padding:6px;color:#fff;backdrop-filter:none}.prism-controls[hidden]{display:none}.prism-controls button{background:transparent;border:1px solid #ffffff60;color:#fff;min-width:40px;min-height:40px;font-size:11px;padding:8px}.prism-controls button:hover,.prism-controls button:focus-visible{background:#ffffff28}.prism-controls span{font-size:9px;letter-spacing:1px;padding:0 8px}@keyframes prism-turn{0%{transform:translateX(0) rotateY(0deg);opacity:1}70%{opacity:1}100%{transform:translateX(var(--shift)) rotateY(var(--turn));opacity:0}}@keyframes prism-glint{0%,100%{opacity:0}40%{opacity:.65}}@media(max-width:720px){.prism-controls{top:12px;right:12px}.prism-shard{animation-duration:.75s}.prism-showcase figcaption{left:18px;right:18px;font-size:8px}}@media(prefers-reduced-motion:reduce){.prism-shards{display:none}}

/* Preserve uploaded image detail by avoiding enlargement beyond native pixels. */
.prism-showcase{background:#e8e0d4}.prism-showcase>img,.prism-shard img{object-fit:scale-down}.prism-shard{background:#e8e0d4}.project-image img[src*="lensartic-"],.look-image[src*="lensartic-"]{object-fit:scale-down}.project-card:hover img[src*="lensartic-"],.project-card:focus-visible img[src*="lensartic-"]{transform:none}.prism-showcase figcaption{background:#221a19b8;padding:10px;text-shadow:none}

/* Full-frame photography, with restrained tonal definition. */
.prism-showcase>img,.prism-shard img,.project-image img[src*="lensartic-"]{object-fit:cover;filter:contrast(1.045) saturate(1.025)}.prism-showcase{background:#342a26}.prism-shard{background:#342a26}.look-image[src*="lensartic-"]{object-fit:contain}.hero-offer{font-size:11px;color:var(--wine);margin-top:18px;max-width:340px}.hero-offer strong{font-weight:500}.offer-section{background:#eee5d8;display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center;border-top:1px solid var(--line)}.offer-section h2{margin-bottom:24px}.offer-section>div>p:not(.eyebrow){max-width:420px;font-size:14px;color:var(--muted)}.offer-amount{display:block;font-family:Georgia,serif;font-size:86px;line-height:1;color:var(--wine);margin-bottom:22px}.offer-amount em{font-size:36px;font-weight:400}.offer-action .button{display:flex;justify-content:space-between;max-width:360px}.offer-action .micro{font-size:11px!important;margin-top:18px}.offer-choice{display:flex;align-items:flex-start;gap:10px;line-height:1.5;padding:14px;border:1px solid #a0828b;margin-bottom:16px}.offer-choice input{width:16px;height:16px;flex-shrink:0;margin:2px 0 0;accent-color:#d9bca4}#offer-status:empty{display:none}@media(max-width:720px){.offer-section{grid-template-columns:1fr;gap:30px}.offer-amount{font-size:68px}}

/* Detail images use their natural aspect ratio, without letterbox bands. */
dialog .look-image,dialog .look-image[src*="lensartic-"]{display:block;width:100%;height:auto;max-height:none;object-fit:initial;background:none;margin-bottom:24px}dialog{padding:28px}dialog .close{position:sticky;top:0;float:right;margin:-16px -16px 8px 8px}dialog .look-image{clear:both}.section-cta{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px;grid-column:1/-1}.section-cta strong{font-size:11px;letter-spacing:1px;color:var(--wine)}.offer-cta{font-weight:700;font-size:13px!important}.consultation{background:#eee5d8;display:grid;grid-template-columns:1fr 1.2fr;gap:8%}.consultation>div>p:not(.eyebrow){font-size:14px;margin-top:24px;max-width:420px}.consultation input,.consultation select,.consultation textarea{color:var(--ink);border-color:#a39280}.consultation input::placeholder,.consultation textarea::placeholder{color:#776b60}.consultation-note{padding-top:18px;border-top:1px solid var(--line);font-size:11px!important;color:var(--muted)}.consultation .button{background:var(--wine);color:white}.offer-form-line{font-size:11px;font-weight:700;color:var(--wine);margin-top:14px}#consultation-status{font-size:12px;margin-top:15px}#consultation-status:empty{display:none}#consultation-download[hidden]{display:none}.floating-offer{position:fixed;bottom:18px;right:18px;z-index:8;background:var(--wine);color:#fff;padding:13px 20px;box-shadow:0 4px 20px #221a1930;border:1px solid #d9bca4;display:flex;flex-direction:column;gap:5px}.floating-offer span{font-size:11px;font-weight:700}.floating-offer strong{font-size:13px;letter-spacing:.5px}body{padding-bottom:85px}.nav-cta{font-weight:700}@media(max-width:720px){.consultation{grid-template-columns:1fr;gap:28px}.floating-offer{left:12px;right:12px;bottom:12px;flex-direction:row;justify-content:space-between;align-items:center;padding:14px 12px}.floating-offer span{font-size:10px}.floating-offer strong{font-size:11px}dialog{padding:22px}}
/* A restrained spring response for the three service options. */
@keyframes service-bounce{0%{transform:translateY(0) scale(1)}35%{transform:translateY(-10px) scale(1.012)}62%{transform:translateY(3px) scale(.997)}82%{transform:translateY(-3px) scale(1.004)}100%{transform:translateY(0) scale(1)}}
.services article{transform-origin:center bottom}.services article:focus-within,.services article.service-bounce{animation:service-bounce .65s cubic-bezier(.22,.8,.3,1) both}.services article button{transition:color .2s ease}.services article:focus-within button{color:var(--wine)}
@media(hover:hover) and (pointer:fine){.services article:hover{animation:service-bounce .65s cubic-bezier(.22,.8,.3,1) both}}
@media(prefers-reduced-motion:reduce){.services article:hover,.services article:focus-within,.services article.service-bounce{animation:none!important}}
/* Editorial text motion and a restrained invitation to act. */
@keyframes text-arrive{from{opacity:0;transform:translateY(18px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
.text-in-view{animation:text-arrive .85s cubic-bezier(.22,.7,.18,1) both}h2 em{position:relative;display:inline-block}h2 em:after{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(.12);transform-origin:left;opacity:.35;transition:transform .65s cubic-bezier(.22,.7,.18,1)}h2.text-in-view em:after,h2:hover em:after{transform:scaleX(1)}
@keyframes invitation-pulse{0%,75%,100%{transform:translateY(0)}82%{transform:translateY(-3px)}89%{transform:translateY(0)}94%{transform:translateY(-1px)}}
@keyframes offer-shimmer{0%,65%{transform:translateX(-180%) skewX(-18deg)}90%,100%{transform:translateX(350%) skewX(-18deg)}}
@keyframes offer-emphasis{0%,70%,100%{transform:scale(1)}82%{transform:scale(1.035)}}
.offer-cta,.floating-offer,.nav-cta{position:relative;isolation:isolate;overflow:hidden;animation:invitation-pulse 5s cubic-bezier(.25,.8,.25,1) infinite}.floating-offer{position:fixed}.offer-cta:after,.floating-offer:after{content:'';position:absolute;pointer-events:none;inset:-30% auto -30% 0;width:35%;background:linear-gradient(90deg,transparent,#fff2,transparent);animation:offer-shimmer 6s ease-in-out infinite;z-index:-1}.offer-amount,.section-cta strong,.offer-form-line{animation:offer-emphasis 5s cubic-bezier(.25,.8,.25,1) infinite;transform-origin:left center}.offer-cta:hover,.offer-cta:focus-visible,.floating-offer:hover,.floating-offer:focus-visible,.nav-cta:hover,.nav-cta:focus-visible{animation-play-state:paused}.offer-cta span,.nav-cta span{display:inline-block;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.offer-cta:hover span,.offer-cta:focus-visible span{transform:translate(3px,-3px)}
.decorative-motion-toggle{position:fixed;bottom:22px;left:18px;z-index:8;background:var(--paper);color:var(--wine);border:1px solid var(--line);padding:9px 12px;font-size:10px}.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off .reveal{opacity:1;transform:none}.motion-off h2 em:after{transform:scaleX(1)}
@media(max-width:720px){.decorative-motion-toggle{bottom:74px;left:auto;right:12px;padding:7px 10px}}@media(prefers-reduced-motion:reduce){.text-in-view,.offer-cta,.floating-offer,.nav-cta,.offer-amount,.section-cta strong,.offer-form-line,.offer-cta:after,.floating-offer:after{animation:none!important}h2 em:after{transform:scaleX(1);transition:none}.decorative-motion-toggle{display:none}}
/* Seamless left-to-right offer ribbon; duplicated words are decorative. */
.offer-marquee{display:block;overflow:hidden;background:var(--wine);color:var(--paper);border-top:1px solid #d9bca466;border-bottom:1px solid #d9bca466;padding:17px 0;text-decoration:none}.offer-marquee-track{display:flex;width:max-content;animation:offer-travel-right 24s linear infinite}.offer-marquee-group{display:flex;flex-shrink:0;min-width:100vw;justify-content:space-around}.offer-marquee-group>span{display:flex;align-items:center;gap:28px;white-space:nowrap;padding:0 30px;font-size:18px;font-weight:700;letter-spacing:.3px}.offer-marquee-group i{font-size:20px;color:#d9bca4;font-style:normal;margin-left:20px}.offer-marquee-group b{font-weight:400}.offer-marquee:hover .offer-marquee-track,.offer-marquee:focus-visible .offer-marquee-track{animation-play-state:paused}.offer-marquee:focus-visible{outline:3px solid #b2956d;outline-offset:3px}@keyframes offer-travel-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}@media(max-width:720px){.offer-marquee{padding:14px 0}.offer-marquee-group>span{font-size:14px;padding:0 20px;gap:18px}.offer-marquee-track{animation-duration:28s}}@media(prefers-reduced-motion:reduce){.offer-marquee-track{animation:none!important;width:100%}.offer-marquee-group{min-width:0;width:100%}.offer-marquee-group+ .offer-marquee-group,.offer-marquee-group>span+span{display:none}.offer-marquee-group>span{white-space:normal;text-align:center;justify-content:center;font-size:14px}.offer-marquee-group i{display:none}}

.calendar-booking{background:var(--paper);padding:35px;border:1px solid var(--line)}.calendar-booking h3{font-size:32px;margin-bottom:20px}.calendar-booking>p:not(.eyebrow){font-size:13px;margin:20px 0}.calendar-booking .button{display:flex;justify-content:space-between;gap:20px}.calendar-booking .micro{font-size:11px!important}@media(max-width:720px){.calendar-booking{padding:25px}}
