:root{--ivory:#f7f2ec;--sand:#d9c6b4;--taupe:#a8957f;--walnut:#6b513e;--olive:#7a7d68;--coal:#2c2b28;--muted:#68615a;--line:#d9d1c7;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Montserrat',Arial,sans-serif;--gutter:clamp(22px,5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ivory);color:var(--coal);font:400 14px/1.75 var(--sans);-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--walnut);outline-offset:5px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--walnut);outline-offset:3px}img{display:block;max-width:100%}figure,h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);line-height:1.02;letter-spacing:-.045em}h2{font-size:clamp(44px,4.6vw,74px)}em{font-weight:400}.icon{width:21px;height:21px;flex-shrink:0;vertical-align:middle;pointer-events:none}.eyebrow{font-size:10px;letter-spacing:.15em;font-weight:500;line-height:1.6;text-transform:uppercase}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:-80px;left:20px;padding:12px 20px;background:var(--coal);color:white;z-index:100}.skip:focus{top:12px}.section{padding:100px var(--gutter)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:48px}.section-heading .eyebrow{margin-bottom:20px}.section-heading>p{max-width:355px;font-size:13px;color:var(--muted)}.button{min-height:52px;padding:16px 24px;display:inline-flex;justify-content:space-between;align-items:center;gap:35px;font-size:11px;letter-spacing:.02em;line-height:1.5;border:1px solid transparent;transition:background .2s,color .2s}.button.dark{background:var(--coal);color:var(--ivory)}.button.dark:hover{background:var(--walnut)}.button.outline{border-color:var(--line)}.button.outline:hover{background:#eae2d8}.button.light{background:var(--ivory);color:var(--coal)}.button.light:hover{background:var(--sand)}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:12px 0;border-bottom:1px solid currentColor;font-size:12px;line-height:1.5}.text-link:hover{color:var(--walnut)}
.site-header{height:104px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:35px;position:sticky;top:0;z-index:30;background:var(--ivory);border-bottom:1px solid var(--line)}.brand{width:260px;flex-shrink:0;display:block}.brand img{width:100%;height:auto}.brand span{display:block;font-size:9px;letter-spacing:.15em;margin:3px 0 0 9px}.desktop-nav{display:flex;align-items:center;gap:28px;font-size:11px}.desktop-nav a{padding:15px 0;border-bottom:1px solid transparent}.desktop-nav a:hover{border-color:var(--coal)}.header-actions{display:flex;align-items:center;gap:28px}.saved-toggle{display:flex;align-items:center;justify-content:center;gap:9px;min-width:44px;min-height:44px;font-size:11px}.header-contact{display:flex;gap:20px;align-items:center;font-size:11px;min-height:44px}.menu-toggle{display:none;width:44px;height:44px}.mobile-nav{position:fixed;top:104px;left:0;right:0;background:var(--ivory);z-index:29;box-shadow:0 18px 28px #2c2b2814;padding:20px var(--gutter) 32px;max-height:calc(100dvh - 104px);overflow:auto}.mobile-nav a{display:block;padding:11px 0;border-bottom:1px solid var(--line);font-size:18px}
.hero{display:grid;grid-template-columns:.9fr 1.1fr;min-height:650px}.hero-copy{padding:clamp(45px,7vw,110px) 40px 35px var(--gutter);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero-copy>.eyebrow{margin-bottom:38px}.hero h1{font-size:clamp(58px,5.5vw,88px)}.hero-copy>p:not(.eyebrow){font-size:13px;max-width:330px;margin:28px 0 32px;color:var(--muted)}.hero-signature{margin-top:65px;width:100%;font-size:10px;display:flex;flex-direction:column;gap:6px;color:var(--muted)}.hero-signature a{display:inline-flex;gap:15px;align-items:center;width:fit-content}.hero-signature .icon{width:15px;height:15px}.hero-visual{position:relative;background:#e3d9cb}.hero-visual>a{display:block;height:100%}.hero-visual img{width:100%;height:100%;max-height:800px;object-fit:contain}.hero-visual figcaption{position:absolute;left:28px;right:28px;bottom:23px;display:flex;justify-content:space-between;align-items:center;font-size:19px;background:#f7f2eceb;padding:12px 18px}.hero-visual small{font:9px var(--sans);margin-left:15px;color:var(--muted)}.hero-visual figcaption>a{padding:6px}.intro-line{display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid var(--line);padding:38px var(--gutter)}.intro-line p{font-family:var(--serif);font-size:30px;line-height:1.2}.intro-line>span{font-size:9px;letter-spacing:.15em;color:var(--muted)}
.catalog-toolbar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;min-height:72px;align-items:center}.filters{display:flex;gap:27px;align-self:stretch}.filters button{padding:18px 0;border-bottom:2px solid transparent;font-size:12px;white-space:nowrap}.filters button.active{border-color:var(--coal)}.filters small{display:block;font-size:8px;letter-spacing:.06em;color:var(--muted)}.catalog-tools{display:flex;gap:20px;align-items:center}.catalog-tools select{border:0;background:transparent;max-width:170px;min-height:44px;font-size:11px}.search{display:flex;align-items:center;gap:9px}.search .icon{width:17px;height:17px}.search input{border:0;background:transparent;width:170px;min-height:44px;font-size:11px}.catalog-status{display:flex;align-items:center;gap:18px;font-size:10px;min-height:62px;color:var(--muted)}.catalog-status>a{margin-left:auto;text-decoration:underline;text-underline-offset:4px}.catalog-status button{display:flex;gap:8px;align-items:center;font-size:10px;min-height:44px;padding:0}.catalog-status .icon{width:14px;height:14px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 24px}.product-card{min-width:0}.product-picture{position:relative;background:#e9e0d5;aspect-ratio:4/5;overflow:hidden}.product-open{display:block;width:100%;height:100%;padding:0}.product-picture img{width:100%;height:100%;object-fit:contain;transition:filter .3s}.product-open:hover img{filter:brightness(1.025)}.favorite{position:absolute;top:12px;right:12px;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;background:#f7f2eceb}.favorite[aria-pressed=true]{background:var(--coal);color:var(--ivory)}.product-info{padding-top:18px;display:flex;justify-content:space-between;gap:10px}.product-info .eyebrow{font-size:8px;letter-spacing:.1em;color:var(--muted)}.product-info h3{font-family:var(--serif);font-size:34px;line-height:1.15;margin:5px 0}.product-info p:not(.eyebrow){font-size:11px;color:var(--muted)}.round-link{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0}.image-note{font-size:10px;line-height:1.8;color:var(--muted);max-width:750px;margin-top:32px}.empty-state{text-align:center;padding:65px 20px}.empty-state h3{font-family:var(--serif);font-size:35px}.empty-state p{margin:12px 0 25px;font-size:13px}
.ranges{background:#eee6dd}.range-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.range-photo{display:block;aspect-ratio:4/5;background:#e1d5c7;margin-bottom:25px}.range-photo img{width:100%;height:100%;object-fit:contain}.range-card>.eyebrow{font-size:8px;color:var(--muted)}.range-card h3{font-family:var(--serif);font-size:46px;line-height:1.2;margin:7px 0 12px}.range-card>p:not(.eyebrow){font-size:12px;color:var(--muted);max-width:340px;min-height:65px}.range-card .text-link{margin-top:16px;font-size:11px}.contract{background:var(--coal);color:var(--ivory);display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.contract-heading .eyebrow{color:var(--sand);margin-bottom:25px}.contract h2{font-size:clamp(43px,4.3vw,68px)}.contract-heading>p:not(.eyebrow){font-size:13px;margin:28px 0 30px;max-width:380px;color:#d7cfc4}.contract-types article{border-top:1px solid #ffffff30;padding:22px 0}.contract-types h3{font-family:var(--serif);font-size:30px;margin-bottom:7px}.contract-types p{font-size:12px;color:#d7cfc4}.contract-types small{display:block;font-size:10px;color:#c8bbaa;margin-top:15px}.wall{border-bottom:1px solid var(--line)}.wall>.eyebrow{color:var(--walnut);margin-bottom:25px}.wall>div{display:grid;grid-template-columns:1fr 1fr;gap:10%}.wall p:not(.eyebrow){font-size:13px;margin-bottom:16px;max-width:470px}.wall .text-link{margin-top:6px}.studio{display:grid;grid-template-columns:1.12fr 1fr;gap:9%;align-items:center}.studio figure>img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;object-position:50% 65%}.studio figcaption{font-size:9px;margin-top:12px;color:var(--muted)}.studio .eyebrow{margin-bottom:25px}.studio h2{font-size:clamp(43px,4vw,65px);margin-bottom:25px}.studio>div>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-bottom:17px}.studio .text-link{margin-top:15px}.projects{padding-top:25px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px;margin-bottom:30px}.project-item{padding:0;text-align:left;min-width:0}.project-item img{width:100%;aspect-ratio:4/5;object-fit:cover;background:#e9e0d5}.project-item>span{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;padding-top:13px}.projects>.button{margin:15px auto 0;display:flex;width:fit-content}
.contact{background:#e9dfd3;display:grid;grid-template-columns:1fr 1fr;gap:11%}.contact .eyebrow{margin-bottom:25px}.contact h2{font-size:clamp(45px,4.6vw,72px)}.contact-copy>p:not(.eyebrow){max-width:365px;font-size:13px;margin:25px 0}.contact-number{font-family:var(--serif);font-size:30px;display:flex;align-items:center;gap:16px;margin-top:34px}.contact-copy>span{font-size:10px;color:var(--muted)}.contact-copy>p.small{font-size:11px;margin-top:27px;color:var(--muted)}fieldset{border:0;padding:0;margin:0 0 25px}legend{font-size:12px;margin-bottom:10px}.audience-options{display:flex;gap:30px}.audience-options label{display:flex!important;flex-direction:row!important;gap:8px!important;align-items:center!important}.audience-options input{width:17px;height:17px;accent-color:var(--coal)}form>label,.form-row>label{display:flex;flex-direction:column;font-size:11px;gap:7px;margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}form input:not([type=radio]),form select,form textarea{width:100%;background:#f7f2ec80;border:0;border-bottom:1px solid #a69a8c;border-radius:0;padding:12px 10px;min-height:48px;font-size:14px}textarea{resize:vertical}form .button{width:100%;margin-top:8px}form small{display:block;font-size:10px;line-height:1.7;color:var(--muted);margin-top:14px}.form-selection{font-size:11px;color:var(--walnut);margin:3px 0 18px}form label>span{display:inline}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:10%}.faq .eyebrow{margin-bottom:18px}.faq h2{font-size:48px}details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:22px;cursor:pointer;font-size:12px;padding:22px 0}summary::-webkit-details-marker{display:none}details[open] summary .icon{transform:rotate(45deg)}details p{font-size:12px;color:var(--muted);padding:0 30px 25px 0}
footer{padding:65px var(--gutter) 25px;background:#e5dacd}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:55px;padding-bottom:55px}.footer-brand img{width:300px;max-width:100%;height:auto}.footer-brand>span{font-size:10px;letter-spacing:.13em;margin-left:10px;display:block}.footer-brand p{font-size:12px;color:var(--muted);margin-top:24px}.footer-main nav{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:11px}.footer-main h3{font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin:8px 0 12px}.footer-main nav a{padding:3px 0}.footer-main nav .icon{width:14px;height:14px;margin-left:8px}.footer-bottom{border-top:1px solid #cbbdaf;padding-top:22px;display:flex;align-items:center;gap:35px;font-size:10px}.footer-bottom button{font-size:10px;min-height:44px}.footer-bottom>a{margin-left:auto;display:flex;align-items:center;gap:18px}
/* Independent overlays: the photograph and the product information remain readable. */
dialog{border:0;color:var(--coal);background:var(--ivory);padding:0;max-width:calc(100% - 48px);max-height:calc(100dvh - 48px);overscroll-behavior:contain}dialog::backdrop{background:#201c18a3;backdrop-filter:blur(4px)}.close-dialog{position:absolute;right:15px;top:15px;z-index:3;background:var(--ivory);border:1px solid var(--line);border-radius:50%;width:44px;height:44px;display:grid;place-items:center}.product-dialog{width:1200px}.product-detail{display:grid;grid-template-columns:1.12fr 1fr}.detail-visual{background:#eae1d7;padding:24px}.detail-visual>img{width:100%;height:min(68dvh,730px);object-fit:contain}.photo-switch{display:flex;justify-content:center;gap:8px;margin-top:18px}.photo-switch button{font-size:11px;min-height:44px;padding:8px 17px;border-bottom:1px solid transparent}.photo-switch button[aria-pressed=true]{border-color:var(--coal)}#photo-caption{font-size:9px;text-align:center;color:var(--muted);margin-top:12px}.detail-copy{padding:65px 38px 40px}.detail-copy h2{font-size:60px;margin:16px 0 22px}.detail-copy>p:not(.eyebrow){font-size:12px;color:var(--muted)}dl{margin:27px 0}dl>div{display:grid;grid-template-columns:110px 1fr;gap:18px;border-top:1px solid var(--line);padding:12px 0;font-size:11px}dt{color:var(--muted)}dd{margin:0}.detail-copy .button{width:100%;margin-top:13px}.detail-copy .text-link{font-size:10px;margin-top:15px}.detail-note{font-size:10px!important}.selection-dialog,.message-dialog{width:590px;padding:55px 40px 35px}.selection-dialog h2,.message-dialog h2{font-size:52px;margin:15px 0 28px}.selection-row{display:grid;grid-template-columns:80px 1fr 44px;gap:18px;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.selection-row img{width:80px;height:95px;object-fit:contain;background:#eae1d7}.selection-row h3{font:28px var(--serif)}.selection-row p{font-size:10px;color:var(--muted)}.selection-row button{height:44px}.selection-dialog>.button{width:100%;margin-top:25px}.selection-dialog>.text-link{font-size:11px}.message-dialog>p{font-size:12px;margin-bottom:17px}.message-dialog textarea{border:1px solid var(--line);background:#eee7df;width:100%;padding:15px;font-size:13px;line-height:1.7;margin-bottom:20px}.message-dialog>.button{width:100%}.message-dialog>.text-link{margin:16px 0}#copy-status{font-size:10px;color:var(--muted)}.photo-dialog{background:var(--coal);color:var(--ivory);width:fit-content;padding:18px}.photo-dialog img{max-height:80dvh;max-width:85vw;object-fit:contain}.photo-dialog>p{font-size:10px;padding-top:12px}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);background:var(--coal);color:var(--ivory);font-size:12px;max-width:90vw;padding:13px 22px;z-index:100;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.toast.visible{opacity:1;transform:translate(-50%,0)}
@media(min-width:1600px){.section,.intro-line,footer{padding-left:max(var(--gutter),calc((100vw - 1450px)/2));padding-right:max(var(--gutter),calc((100vw - 1450px)/2))}.hero-copy{padding-left:max(var(--gutter),calc((100vw - 1450px)/2))}}
@media(max-width:1150px){.desktop-nav{gap:17px}.brand{width:225px}.header-actions{gap:17px}.header-contact{display:none}.hero{min-height:550px}.hero-copy{padding-right:25px}.hero h1{font-size:65px}.catalog-toolbar{align-items:stretch;flex-direction:column;gap:0}.filters{min-height:65px}.catalog-tools{justify-content:space-between;padding:8px 0;border-top:1px solid var(--line)}.search input{width:210px}.section{padding-top:75px;padding-bottom:75px}.contract{gap:7%}.hero-signature{margin-top:40px}}
@media(max-width:850px){.desktop-nav{display:none}.menu-toggle{display:grid;place-items:center}.site-header{height:90px}.mobile-nav{top:90px}.hero-copy{padding-top:40px}.hero h1{font-size:54px}.hero-copy>.eyebrow{font-size:8px;margin-bottom:25px}.hero-signature{display:none}.hero{min-height:510px}.hero-visual small{display:block;margin:0}.section-heading{gap:25px}.section-heading>p{max-width:260px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.range-grid{grid-template-columns:1fr;gap:40px}.range-card{display:grid;grid-template-columns:1.05fr 1fr;column-gap:35px;align-content:start}.range-photo{grid-row:1/6;margin-bottom:0}.range-card>.eyebrow{margin-top:28px}.range-card>p:not(.eyebrow){min-height:0}.range-card .text-link{align-self:start;width:fit-content}.studio{gap:6%}.contact{gap:7%}.contract{grid-template-columns:1fr;gap:40px}.contract-heading>p:not(.eyebrow){max-width:570px}.contract-types{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.contract-types small{grid-column:1/-1}.contract-types h3{font-size:25px}.footer-main{gap:25px}.footer-brand img{width:235px}.product-detail{grid-template-columns:1fr 1fr}.detail-copy{padding:65px 24px 30px}dl>div{grid-template-columns:1fr;gap:4px}}
@media(max-width:620px){html{scroll-padding-top:96px}.site-header{height:88px;gap:10px;padding:0 20px}.brand{width:min(59vw,250px)}.brand span{font-size:8px;margin-left:7px}.header-actions{gap:5px}.saved-toggle{gap:5px;min-width:40px}.mobile-nav{top:88px;max-height:calc(100dvh - 88px)}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:35px var(--gutter) 32px}.hero-copy>.eyebrow{font-size:8px;margin-bottom:19px}.hero h1{font-size:clamp(49px,12.4vw,72px)}.hero-copy>p:not(.eyebrow){font-size:12px;margin:20px 0 23px;max-width:340px}.hero .button{min-height:50px}.hero-visual{margin:0 var(--gutter);aspect-ratio:4/5}.hero-visual img{max-height:none}.hero-visual figcaption{left:13px;right:13px;bottom:13px;padding:9px 13px}.hero-visual small{display:inline;margin-left:12px}.intro-line{padding:29px var(--gutter);align-items:flex-end}.intro-line p{font-size:23px}.intro-line>span{font-size:7px;max-width:100px;text-align:right;line-height:1.8}.section{padding:59px var(--gutter)}h2{font-size:45px}.section-heading{display:block;margin-bottom:28px}.section-heading .eyebrow{margin-bottom:17px;font-size:9px}.section-heading>p{margin-top:22px;max-width:none;font-size:12px}.catalog-toolbar{min-height:0}.filters{gap:22px;overflow-x:auto}.filters button{font-size:12px;min-height:64px}.catalog-tools{gap:15px;flex-wrap:wrap;padding:9px 0}.catalog-tools select{font-size:12px;max-width:none}.range-control{width:100%}.range-control select{width:100%;padding:0}.search{width:100%;border-top:1px solid var(--line);padding-top:5px}.search input{font-size:16px;width:100%;min-width:0}.catalog-status{font-size:10px;gap:10px;flex-wrap:wrap;padding:10px 0;min-height:60px}.catalog-status>a{font-size:9px}.product-grid{grid-template-columns:minmax(0,1fr);gap:34px}.product-info{padding-top:15px}.product-info h3{font-size:35px}.product-info p:not(.eyebrow){font-size:12px}.product-info .eyebrow{font-size:9px}.image-note{font-size:10px;margin-top:28px}.range-grid{gap:45px}.range-card{display:block}.range-photo{margin-bottom:23px}.range-card>.eyebrow{margin-top:0;font-size:9px}.range-card h3{font-size:47px}.range-card>p:not(.eyebrow){font-size:13px;max-width:none}.range-card .text-link{font-size:12px}.contract h2{font-size:45px}.contract-types{display:block}.contract-types h3{font-size:29px}.contract-types small{margin-top:25px}.wall>div{grid-template-columns:1fr;gap:25px}.wall p:not(.eyebrow){font-size:12px}.studio{grid-template-columns:1fr;gap:32px}.studio h2{font-size:45px}.studio>div>p:not(.eyebrow){font-size:12px}.studio .eyebrow{font-size:9px}.projects{padding-top:25px}.project-grid{grid-template-columns:minmax(0,1fr);gap:27px}.project-item img{aspect-ratio:5/4;object-fit:contain}.contact{grid-template-columns:1fr;gap:35px}.contact h2{font-size:48px}.contact-number{font-size:29px}.contact-copy>p:not(.eyebrow){font-size:12px}.contact-copy>p.small{font-size:11px;margin-bottom:0}.form-row{gap:16px}form input:not([type=radio]),form select,form textarea{font-size:16px}.audience-options label{min-height:44px}.faq{grid-template-columns:1fr;gap:25px}.faq h2{font-size:43px}summary{font-size:12px;line-height:1.6}footer{padding:45px var(--gutter) 20px}.footer-main{grid-template-columns:1fr 1fr;gap:35px 22px;padding-bottom:30px}.footer-brand{grid-column:1/-1}.footer-brand img{width:280px}.footer-brand p{margin-top:18px}.footer-main nav{font-size:11px}.footer-bottom{gap:12px;flex-wrap:wrap;font-size:9px}.footer-bottom>span{width:100%}.footer-bottom>a{font-size:9px}.product-dialog{max-width:100%;width:100%;max-height:100dvh;height:100dvh;margin:0}.product-detail{display:block}.detail-visual{padding:20px 15px}.detail-visual>img{height:54dvh}.close-dialog{position:sticky;top:12px;float:right;margin:12px 12px -56px 0;right:12px}.detail-copy{padding:30px var(--gutter)}.detail-copy h2{font-size:52px}.detail-copy .eyebrow{font-size:9px}dl>div{grid-template-columns:105px 1fr;gap:12px}.selection-dialog,.message-dialog{max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:45px 22px 28px}.selection-dialog .close-dialog,.message-dialog .close-dialog{position:absolute;top:0;right:0}.selection-dialog h2,.message-dialog h2{font-size:44px}.selection-row{grid-template-columns:65px 1fr 44px;gap:12px}.selection-row img{width:65px;height:85px}.message-dialog textarea{font-size:16px}.photo-dialog{max-width:100%;padding:12px}.photo-dialog img{max-width:calc(100vw - 24px)}.photo-dialog .close-dialog{position:absolute;top:0;right:0}.toast{font-size:11px;text-align:center;width:max-content;bottom:20px}.button{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.site-header,.mobile-nav,form,dialog,.favorite,.catalog-toolbar,.catalog-status,footer,.toast{display:none!important}.section{padding:25px}.product-grid{grid-template-columns:repeat(3,1fr)}.product-card{break-inside:avoid}.hero{min-height:0}.hero-copy{padding:25px}.hero h1{font-size:45px}}
/* Wall uses windows into the existing concept board, preserving every design. */
.wall-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 28px}.wall-card{min-width:0}.wall-open{display:block;padding:0;width:100%;background:#e5dacd;cursor:zoom-in}.wall-art{display:block;width:100%;height:auto;max-height:580px;background:#e5dacd}.wall-card>.eyebrow{margin-top:22px;font-size:9px;color:var(--muted)}.wall-card h3{font-family:var(--serif);font-size:38px;line-height:1.2;margin:8px 0 12px}.wall .wall-card>p:not(.eyebrow){font-size:12px;margin:0;min-height:45px}.wall-card .text-link{margin-top:15px}.wall>.wall-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 28px}.wall-references{margin-top:30px;border-top:1px solid var(--line)}.wall-reference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding-bottom:25px}.wall-reference-grid img{width:100%;height:350px;object-fit:contain;background:#e9e0d5}.wall-reference-grid figcaption{font-size:9px;margin-top:10px;color:var(--muted)}.wall-dialog{width:850px;padding:24px;display:none;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.wall-dialog[open]{display:grid}.wall-dialog>svg{height:75dvh;width:100%;max-height:800px}.wall-dialog>div{padding:20px}.wall-dialog h2{font-size:48px;margin:15px 0}.wall-dialog p:not(.eyebrow){font-size:12px;margin-bottom:25px}.detail-zoom{display:block;padding:0;width:100%;position:relative;cursor:zoom-in}.detail-zoom img{width:100%;height:min(68dvh,730px);object-fit:contain}.detail-zoom>span{display:block;text-align:center;font-size:10px;text-decoration:underline;text-underline-offset:4px;padding-top:8px}.projects .project-item img{aspect-ratio:4/5;object-fit:contain}.whatsapp-float{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;gap:11px;min-height:56px;padding:14px 20px;background:var(--coal);color:var(--ivory);border:1px solid #f7f2ec66;border-radius:30px;box-shadow:0 5px 22px #2c2b2824;font-size:12px;transition:background .2s,transform .2s}.whatsapp-float svg{width:25px;height:25px}.whatsapp-float:hover{background:var(--walnut);transform:translateY(-2px)}body.locked .whatsapp-float{visibility:hidden}.toast{bottom:100px}footer{padding-bottom:100px}
@media(max-width:850px){.wall>.wall-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.wall-dialog{grid-template-columns:1fr 1fr}.wall-reference-grid{grid-template-columns:1fr}.wall-reference-grid img{height:auto;max-height:550px}}
@media(max-width:620px){.wall>.wall-gallery{grid-template-columns:1fr;gap:36px}.wall-art{max-height:620px}.wall .wall-card>p:not(.eyebrow){min-height:0}.wall-card h3{font-size:39px}.wall-dialog{padding:15px;grid-template-columns:1fr;gap:10px}.wall-dialog>svg{height:57dvh}.wall-dialog>div{padding:15px}.wall-dialog h2{font-size:40px}.wall-dialog .button{width:100%}.wall-dialog .close-dialog{position:absolute;top:0;right:0}.detail-zoom img{height:54dvh}.whatsapp-float{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:56px;height:56px;padding:15px;justify-content:center}.whatsapp-float span{display:none}.wall-reference-grid img{max-height:500px}footer{padding-bottom:92px}}
@media print{.whatsapp-float{display:none!important}}

/* Editorial cover: own Curva photograph, edge to edge, motion once only. */
.hero.hero-editorial{display:flex;flex-direction:column;min-height:0;padding:0;gap:0}
.hero-editorial .hero-visual{position:relative;margin:0;width:100%;aspect-ratio:3/2;max-height:none;overflow:hidden}
.hero-editorial .hero-visual>a{display:block;width:100%;height:100%}
.hero-editorial .hero-visual img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;animation:cover-settle 4.5s cubic-bezier(.16,1,.3,1) both}
.hero-editorial .hero-visual figcaption{left:var(--gutter);right:var(--gutter);bottom:25px;padding:12px 20px;background:rgba(247,242,236,.94);width:fit-content;gap:36px;max-width:calc(100% - 2 * var(--gutter))}
.hero-editorial .hero-visual figcaption small{display:inline;margin-left:18px}
.hero-editorial .hero-copy{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;padding:55px var(--gutter) 65px;animation:cover-copy 1.2s ease-out both}
.hero-editorial h1{font-size:clamp(48px,6vw,94px);margin:16px 0 0;line-height:1.03}
.hero-editorial .hero-intro{align-self:end;max-width:420px;padding-bottom:8px}
.hero-intro p{font-size:14px;line-height:1.9;margin-bottom:24px}
.hero-editorial+.intro-line{display:none}
.gama-guide{border-bottom:1px solid var(--line);margin:0 0 30px;padding:0 0 15px}
.gama-guide summary{width:fit-content;cursor:pointer;font-size:12px}
.gama-options{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:25px 0}
.gama-options h3{font:34px var(--serif);margin-bottom:10px}.gama-options p{font-size:12px;line-height:1.8}.gama-options .text-link{font-size:11px;margin-top:14px}
.whatsapp-float{width:56px;height:56px;min-width:56px;padding:14px;border-radius:50%;justify-content:center}.whatsapp-float span{display:none}
@keyframes cover-settle{from{transform:scale(1.035)}to{transform:scale(1)}}
@keyframes cover-copy{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1000px){.hero-editorial .hero-visual{aspect-ratio:16/10;max-height:calc(100svh - 100px);min-height:480px}.hero-editorial .hero-visual img{object-position:center 56%}}
@media(max-width:620px){.hero-editorial .hero-visual{aspect-ratio:3/2;margin:0}.hero-editorial .hero-visual figcaption{bottom:12px;left:20px;right:auto;padding:8px 12px;gap:24px}.hero-editorial .hero-visual figcaption>span{font-size:22px}.hero-editorial .hero-visual figcaption small{font-size:9px;margin-left:9px}.hero-editorial .hero-copy{display:block;padding:30px var(--gutter) 38px}.hero-editorial h1{font-size:53px}.hero-editorial .hero-intro{margin-top:22px}.hero-intro p{font-size:12px;margin-bottom:18px}.gama-options{grid-template-columns:1fr;gap:22px}}
@media(prefers-reduced-motion:reduce){.hero-editorial .hero-visual img,.hero-editorial .hero-copy{animation:none;transform:none}}

/* Search is a header action; the collection keeps a compact browsing bar. */
.search-toggle{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0}
.search-dialog{width:min(640px,calc(100vw - 32px));padding:55px 40px 38px;background:var(--ivory);color:var(--coal)}
.search-dialog h2{font-size:52px;margin:16px 0 25px}
.search-dialog .search{width:100%;border-top:0;border-bottom:1px solid var(--coal);padding:6px 0;margin-bottom:12px}
.search-dialog .search input{width:100%;min-width:0;font-size:16px;min-height:54px}
.search-dialog form>p{font-size:11px;color:var(--muted);margin-bottom:25px}
.search-dialog .button{width:100%}
.collection .catalog-tools{border-top:0;padding:0}
.collection .catalog-toolbar{gap:16px}
.collection .catalog-status{min-height:38px;padding:8px 0 16px;line-height:1.6}
.collection .gama-guide{margin-top:32px;margin-bottom:0;padding-bottom:12px}
.collection .gama-guide summary{padding:10px 0;min-height:44px}
@media(max-width:1150px){.collection .catalog-toolbar{flex-direction:row;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0 20px}}
@media(max-width:620px){.site-header{gap:8px}.site-header .brand{width:min(51vw,250px)}.header-actions{gap:0}.header-actions .search-toggle,.header-actions .menu-toggle{width:40px;min-width:40px}.header-actions .saved-toggle{min-width:36px}.collection .section-heading{margin-bottom:22px}.collection .section-heading>p{margin-top:15px}.collection .filters{gap:18px;min-height:48px;width:100%}.collection .filters button{min-height:48px}.collection .filters small{display:none}.collection .catalog-tools{width:100%;padding:0}.collection .range-control{width:auto}.collection .range-control select{min-height:42px;font-size:11px}.collection .catalog-status{min-height:30px;padding:10px 0 18px}.search-dialog{padding:52px 24px 28px}.search-dialog h2{font-size:42px}}
@media(max-width:360px){.site-header{padding:0 14px}.site-header .brand{width:calc(100vw - 155px)}}

/* Wall Essential: responsive, touch-friendly carousel. */
.wall>.wall-carousel{display:block;grid-template-columns:none;gap:0;min-width:0;width:100%}.wall-carousel .wall-gallery{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;scrollbar-width:thin;padding:0 0 16px}.wall-carousel .wall-card{flex:0 0 calc((100% - 56px)/3);scroll-snap-align:start;scroll-snap-stop:always}.wall-carousel .wall-art{height:clamp(280px,35vw,520px);object-fit:contain}.wall-controls:not([hidden]){display:flex;align-items:center;justify-content:center;gap:18px;margin-top:20px}.wall-controls>button{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:transparent;font-size:22px;cursor:pointer}.wall-controls>button:disabled{opacity:.3;cursor:default}.wall-dots{display:flex;gap:4px}.wall-dots button{width:32px;height:44px;padding:10px;background:transparent;cursor:pointer}.wall-dots button:after{content:"";display:block;width:8px;height:8px;border-radius:50%;background:var(--line)}.wall-dots button[aria-current="true"]:after{background:var(--coal)}.wall-position{font-size:12px;color:var(--muted);white-space:nowrap}.wall-gallery:focus-visible,.wall-controls button:focus-visible{outline:2px solid var(--walnut);outline-offset:4px}
@media(max-width:850px){.wall-carousel .wall-card{flex-basis:calc((100% - 24px)/2)}.wall-carousel .wall-gallery{gap:24px}.wall-carousel .wall-art{height:420px}}
@media(max-width:620px){.wall-carousel .wall-gallery{gap:16px}.wall-carousel .wall-card{flex-basis:88%}.wall-carousel .wall-art{height:clamp(300px,100vw,500px)}.wall-controls:not([hidden]){gap:6px}.wall-controls>button{width:44px;height:44px}.wall-dots button{width:28px}.wall-position{font-size:10px}}
@media(prefers-reduced-motion:reduce){.wall-gallery{scroll-behavior:auto}}
.detail-thumbs{display:flex;justify-content:center;gap:8px;margin-top:14px;flex-wrap:wrap}.detail-thumbs button{width:64px;height:64px;padding:0;border:1px solid transparent;background:var(--ivory);opacity:.7}.detail-thumbs button[aria-pressed=true]{border-color:var(--coal);opacity:1}.detail-thumbs img{width:100%;height:100%;object-fit:cover}.detail-thumbs button:focus-visible{outline:2px solid var(--coal);outline-offset:2px}.photo-switch[hidden],.photo-switch button[hidden]{display:none}
