:root{--bg:#070809;--panel:#121416;--ink:#f7f7f5;--muted:#b9bdc1;--gold:#e4e6e7;--line:#34383c}
body{background:var(--bg);font-family:'DM Sans',sans-serif}html{scroll-padding-top:110px}.preview-bar{background:#17191b;color:#c8ccce;font-size:12px;letter-spacing:.08em}
header{height:110px;background:#060708;padding:0 4%;gap:25px;border-bottom:1px solid #ffffff1a;position:relative;z-index:3}
header .brand-image{width:160px;height:100px;display:flex;align-items:center;flex-shrink:0;line-height:0}header .brand-image img{width:100%;height:100%;object-fit:contain}header nav{display:flex;gap:25px;font-size:14px}header nav a{white-space:nowrap}.language-switch a{min-width:32px}
.button,.button.small{background:#e6e8e9;border:1px solid #e6e8e9;color:#090b0d;border-radius:5px;font-weight:700;font-size:14px;letter-spacing:.045em;min-height:54px;padding:16px 26px;justify-content:center;gap:20px}.button:hover,.button.small:hover{background:#fff;color:#08090a;border-color:#fff}.button-outline{background:#080a0c45;color:#fff;border-color:#ffffffb3}.button-outline:hover{color:#08090a}
h1,h2,h3{font-family:'Manrope',sans-serif;font-weight:800;letter-spacing:-.035em}h1 em,h2 em{font-family:inherit;font-style:normal;font-weight:inherit;color:inherit}
.hero{height:auto;min-height:690px;max-height:none;align-items:center;text-align:center;overflow:hidden}.hero-content{padding:85px 5% 115px;max-width:1250px;margin:auto}.hero-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-photo{object-position:center;filter:none}.hero-shade{background:linear-gradient(180deg,#06080985,#06080960 45%,#060809ba)}
h1,html[lang=es] h1{font-size:clamp(48px,5.8vw,84px);line-height:1.04;letter-spacing:-.045em;margin-bottom:24px}h1 span{color:#d4d9dd}.hero .eyebrow{font-size:13px;letter-spacing:.24em;margin-bottom:22px;color:#e9ecee}.hero-subtitle{font-size:clamp(20px,2.3vw,31px);font-weight:600;line-height:1.3;max-width:940px;margin:0 auto 22px}.hero-copy{font-size:17px;color:#e2e5e7;margin:auto;max-width:740px}.hero-actions{justify-content:center;margin-top:36px;gap:16px}.hero-actions .button{min-width:210px}.hero-bottom{display:none}.film-toggle{position:absolute;right:4%;bottom:20px;background:#05070980;border:1px solid #ffffff80;color:#fff;border-radius:4px;min-height:44px;padding:10px 14px;font:inherit;font-size:12px}
.principles{padding:22px 5%;background:#111315;border-block:1px solid #2a2d30;gap:24px;color:#cdd1d4;font-size:12px;font-weight:600;letter-spacing:.09em}
.section{padding:80px 5%}.eyebrow{color:#b8bec3;font-size:12px;letter-spacing:.17em}h2{font-size:clamp(32px,3.5vw,48px);line-height:1.12;margin-bottom:22px}.section-heading{max-width:1300px;margin:0 auto 42px;gap:50px;align-items:center}.section-heading>div{flex:1}.section-heading>p{flex:1;max-width:550px;margin:0;font-size:16px;line-height:1.75;color:#b6bcc1}
.services{background:#070809}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;border:0;max-width:1300px;margin:auto}.service-grid article{position:relative;isolation:isolate;overflow:hidden;min-height:440px;padding:42px!important;border:1px solid #30363b!important;background:#121619;align-items:center;text-align:center;justify-content:flex-end}.service-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .5s}.visual-service:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#05080b1a,#05080b55 25%,#05080bd9 70%,#05080bf2);z-index:-1}.visual-service:hover .service-photo{transform:scale(1.035)}.service-grid .service-top{position:absolute;top:25px;left:28px;right:28px;font-size:11px;letter-spacing:.14em;color:#e4e6e8;margin:0}.service-grid h3{font-size:clamp(27px,2.5vw,36px);text-transform:uppercase;margin:0 0 15px;max-width:460px}.service-grid p{color:#d3d8dc;line-height:1.6;min-height:0;max-width:390px;margin:0 0 24px;font-size:16px}.service-button{margin:0;border:1px solid #e2e5e7;background:#e2e5e7;color:#0a0d10;border-radius:4px;padding:15px 24px;min-height:52px;width:auto;gap:26px;font-size:14px;font-weight:700}.service-button:hover{background:white;color:#07090b}.stock-note{font-size:12px;color:#8f989f;margin:18px auto;max-width:1300px}.ceramic-note{max-width:1300px;margin:20px auto;color:#9fa7ad;font-size:14px;line-height:1.7}.quote-contact{max-width:1300px;margin:38px auto 0;padding-top:30px;border-color:#30363b}.quote-contact h3{font-size:24px}
.atelier{background:#121619;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6%}.atelier p:not(.eyebrow){color:#bec5cb;line-height:1.8;max-width:580px}.atelier figure{margin:0}.atelier video{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#080a0c}.atelier figcaption{font-size:12px;color:#99a2aa;margin-top:12px}.atelier .button{margin-top:12px}
.approach{background:#080a0c;grid-template-columns:.65fr 1.35fr;gap:8%;padding-top:70px;padding-bottom:70px}.brand-signature{background:transparent;max-width:300px;justify-self:center}.brand-signature img{display:block;width:100%;height:auto}.approach p:not(.eyebrow){max-width:760px;line-height:1.8}.approach-foot{color:#d1d5d9;font-size:12px;border-color:#343b41}
.reservation{display:block;background:#14181c;border-block:1px solid #323a40;text-align:center}.reservation>div:first-child{max-width:840px;margin:0 auto}.reservation h2{font-size:clamp(34px,4vw,52px)}.reservation h2 br{display:none}.reserve-info>p{font-size:16px;color:#c2c9ce}.reserve-info ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:1300px;margin:42px auto 32px;text-align:left}.reserve-info li{display:block;padding:28px 25px;border:1px solid #3b454d;background:#111518}.reserve-info li>span{display:block;font-family:'Manrope',sans-serif;font-size:32px;font-weight:800;color:#8d9ba5;margin-bottom:20px}.reserve-info h3{font-size:19px;line-height:1.4;margin-bottom:12px}.reserve-info li p{font-size:16px;line-height:1.7;color:#c0c7cd}.reserve-info .location-note{max-width:830px;margin:22px auto 0;font-size:14px!important}.connect{background:#070809;grid-template-columns:1.3fr 1fr;gap:8%}.connect h2{font-size:36px}.socials a{font-size:18px}.contact-email{color:#e2e5e7}
footer{background:#050607;align-items:flex-start;flex-wrap:wrap;border-color:#252b30}footer .brand-image{display:block;width:180px;line-height:0}footer .brand-image img{width:100%;height:auto}footer p{font-size:13px;max-width:310px;line-height:1.8}
dialog{background:#11161a;border-color:#65717a;border-radius:8px}dialog h2{font-size:34px}input,select,textarea{background:#1b2329;border-color:#596771}.demo-note{border-color:#c8d1d8}.fine-print{font-size:14px}
@media(max-width:1150px){header{gap:15px}header nav{gap:14px;font-size:12px}header .brand-image{width:140px}header .button.small{font-size:12px;padding:13px 15px}}
@media(max-width:900px){header nav{display:none}.hero{min-height:620px}.hero-content{padding:70px 5% 95px}.service-grid article{padding:30px!important;min-height:410px}.reserve-info ol{gap:16px}.reserve-info li{padding:22px 18px}.approach{grid-template-columns:.65fr 1.35fr;gap:5%}}
@media(max-width:700px){html{scroll-padding-top:20px}.preview-bar{font-size:10px;padding:7px 4%}.preview-bar span{display:none}header{grid-template-columns:1fr auto auto;height:93px;padding:5px 4%;gap:10px}header .brand-image{width:120px;height:82px}.language-switch{grid-column:2;grid-row:1;font-size:12px}.language-switch a{min-width:28px}header .button.small{grid-column:3;grid-row:1;width:auto;max-width:150px;min-height:44px;font-size:11px;padding:9px 12px;line-height:1.4}header .button.small span{display:none}.hero{min-height:570px;height:auto}.hero-content{padding:68px 6% 86px}h1,html[lang=es] h1{font-size:clamp(40px,10.7vw,64px);line-height:1.08}.hero .eyebrow{font-size:11px;margin-bottom:24px}.hero-subtitle{font-size:21px;line-height:1.4}.hero-copy{font-size:16px}.hero-actions{align-items:stretch;flex-direction:column;gap:12px;margin-top:28px;max-width:330px;margin-inline:auto}.hero-actions .button{min-width:0;font-size:13px;min-height:52px}.hero-shade{background:linear-gradient(180deg,#05080bc9,#05080b70,#05080bd9)}.film-toggle{bottom:12px;right:5%;font-size:11px;min-height:36px}.principles{display:flex;gap:12px;padding:18px 5%;font-size:10px}.principles span:last-child{display:block;width:100%}.section{padding:55px 5%}.section-heading{display:block;margin-bottom:30px}.section-heading h2{font-size:34px}.section-heading>p{font-size:16px}.service-grid{grid-template-columns:1fr;gap:18px}.service-grid article{min-height:410px;padding:30px 24px!important}.service-grid h3{font-size:30px}.service-grid p{font-size:16px}.service-photo{object-position:center}.quote-contact{align-items:stretch}.atelier,.approach{grid-template-columns:1fr;gap:32px}.atelier h2{font-size:34px}.brand-signature{max-width:220px}.approach h2{font-size:32px}.approach-foot{font-size:11px}.reserve-info ol{grid-template-columns:1fr;gap:15px;margin-top:28px}.reserve-info li{display:flex;gap:22px;padding:25px}.reserve-info li>span{font-size:27px;margin:0}.reserve-info h3{font-size:19px}.reservation h2{font-size:35px}.reserve-info .button{width:100%}.connect{grid-template-columns:1fr;gap:20px}.connect h2{font-size:32px}footer{gap:28px}footer .brand-image{width:165px}dialog{padding:24px}}
@media(prefers-reduced-motion:reduce){.service-photo{transition:none}.visual-service:hover .service-photo{transform:none}}

/* Header appointment call to action: brushed dark metal and silver trim. */
header .button.small.appointment-cta{position:relative;overflow:hidden;flex-shrink:0;display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px;padding:14px 20px;background:linear-gradient(135deg,#30383e 0%,#12181d 48%,#080b0d 100%);color:#f1f5f7;border:1px solid #89979f;border-radius:7px;box-shadow:inset 0 1px 0 #ffffff2e,0 0 18px #acced51a;font-size:12px;letter-spacing:.07em;line-height:1.25;transition:border-color .2s,box-shadow .2s,transform .2s}header .appointment-cta .appointment-label{display:inline;white-space:nowrap}header .appointment-arrow{display:block;width:22px;height:22px;flex-shrink:0;color:#c5d7df;transition:transform .2s}header .button.small.appointment-cta:hover{background:linear-gradient(135deg,#414d55,#172127 58%,#0d1216);border-color:#d4e4ea;color:#fff;box-shadow:inset 0 1px 0 #ffffff45,0 0 24px #b4d9e033;transform:translateY(-1px)}header .appointment-cta:hover .appointment-arrow{transform:translate(2px,-2px)}header .appointment-cta:focus-visible{outline:2px solid #e0edf2;outline-offset:4px}@media(max-width:1150px){header .button.small.appointment-cta{font-size:11px;padding:13px 15px;gap:12px}}@media(prefers-reduced-motion:reduce){header .button.small.appointment-cta,header .appointment-arrow{transition:none}header .button.small.appointment-cta:hover,header .appointment-cta:hover .appointment-arrow{transform:none}}
