:root{--bg:#f4f1eb;--ink:#242825;--ink-soft:#616661;--line:#d4d3cb;--accent:#b88752;--accent-dark:#895f34;--surface:#ece5dc;--dark:#1c2622;--on-dark:#fff;--radius:5px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:400 15px/1.7 "DM Sans",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.18}em{font-family:"Playfair Display",Georgia,serif;font-weight:500}.wrap{max-width:1240px;width:calc(100% - 84px);margin:auto}.skip{position:absolute;top:-90px;left:12px;padding:12px 18px;background:white;z-index:40}.skip:focus{top:12px}
body[data-theme="taller"]{--bg:#15191c;--ink:#f1f1ec;--ink-soft:#aeb5b6;--line:#343e44;--accent:#de9d48;--accent-dark:#b77721;--surface:#20262a;--dark:#0e1113;--on-dark:#f9f7f0}
body[data-theme="clinica"]{--bg:#f5f8f5;--ink:#183b35;--ink-soft:#54726e;--line:#d6e2dc;--accent:#66ad9a;--accent-dark:#276f61;--surface:#eaf3ee;--dark:#1a5149;--on-dark:#f8fff9}
body[data-theme="inmobiliaria"]{--bg:#f7f4ed;--ink:#24382e;--ink-soft:#697b70;--line:#d6d8cc;--accent:#a88b57;--accent-dark:#755e35;--surface:#eaece2;--dark:#213b2f;--on-dark:#f7f9f3}
body[data-theme="coches"]{--bg:#f5f6f7;--ink:#1d2c35;--ink-soft:#606e76;--line:#d9dee1;--accent:#a8704b;--accent-dark:#865235;--surface:#e9eef1;--dark:#10212c;--on-dark:#f5f8fa}
.concept-ribbon{background:#0d1112;color:#d8d5ca;font-size:10px;letter-spacing:.12em;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px max(42px,calc((100vw - 1240px)/2));line-height:1.3}.concept-ribbon b{color:#e9bf81}.concept-ribbon a{color:#f0d5a8;text-decoration:underline;text-underline-offset:3px}.header{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.nav-wrap{min-height:90px;display:flex;justify-content:space-between;align-items:center;gap:24px}.business-brand{display:flex;align-items:center;gap:14px;min-width:190px}.brand-mark{width:43px;height:43px;display:grid;place-items:center;background:var(--ink);color:var(--bg);border-radius:50%;font:600 25px/1 "Playfair Display",serif}.brand-stack strong{display:block;font:800 16px/1.2 Manrope,sans-serif;letter-spacing:.16em}.brand-stack small{display:block;letter-spacing:.32em;font-size:8px;margin-top:5px;color:var(--ink-soft)}.nav{display:flex;gap:28px}.nav a{font-size:12px;font-weight:700;transition:color .2s}.nav a:hover{color:var(--accent-dark)}.nav-side{display:flex;align-items:center;gap:12px}.nav-button{border:1px solid var(--ink);padding:13px 18px;border-radius:99px;font-size:11px;font-weight:800;display:inline-flex;gap:22px}.nav-button:hover{background:var(--ink);color:var(--bg)}.nav-toggle{display:none;background:none;border:1px solid var(--line);width:43px;height:43px;border-radius:10px;padding:11px;flex-direction:column;justify-content:space-between}.nav-toggle span{height:2px;background:var(--ink);display:block}
.hero{padding-top:75px}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:6%;align-items:center;min-height:600px}.hero-content{padding:45px 0 70px}.eyebrow,.kicker{font:800 10px/1.3 Manrope,sans-serif;letter-spacing:.21em;text-transform:uppercase;color:var(--accent-dark)}.eyebrow{display:inline-flex;align-items:center;gap:11px}.eyebrow i{height:7px;width:7px;border-radius:50%;background:var(--accent)}h1{font:800 clamp(49px,5.3vw,82px)/1.075 Manrope,sans-serif;letter-spacing:-.067em;max-width:650px;margin:28px 0 26px}h1 em{display:block;letter-spacing:-.045em;color:var(--accent-dark);font-size:1.03em}.hero-subtitle{font-size:17px;color:var(--ink-soft);max-width:480px;line-height:1.8;margin-bottom:32px}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:23px}.primary-button{background:var(--ink);color:var(--bg);display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 22px;font-size:12px;font-weight:800;min-height:54px;transition:transform .2s,background .2s;border:1px solid var(--ink);border-radius:var(--radius)}.primary-button:hover{transform:translateY(-2px);background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}.text-button{font-size:12px;font-weight:800;border-bottom:1px solid var(--accent);padding-bottom:6px;display:inline-flex;gap:15px}.hero-footnote{display:flex;gap:10px;align-items:center;margin-top:65px;border-top:1px solid var(--line);padding-top:21px;font-size:11px;letter-spacing:.02em;color:var(--ink-soft)}.starline{font-size:17px;color:var(--accent)}.hero-visual{height:615px;position:relative;padding:0 23px 22px 0}.hero-visual>img{position:relative;z-index:2;filter:saturate(.88);object-position:center}.hero-image-shade{position:absolute;inset:0 23px 22px 0;background:linear-gradient(180deg,transparent 65%,#0008);z-index:3;pointer-events:none}.hero-offset{position:absolute;right:0;bottom:0;left:25px;top:26px;background:var(--accent);z-index:1}.hero-image-label{position:absolute;z-index:4;bottom:61px;left:33px;color:#fff;text-shadow:0 1px 9px #0008}.hero-image-label span{display:block;font-size:9px;letter-spacing:.26em;margin-bottom:8px}.hero-image-label strong{font:500 25px "Playfair Display",serif}.hero-index{display:flex;justify-content:space-between;padding-top:32px;padding-bottom:34px;font-size:9px;letter-spacing:.2em;font-weight:800;color:var(--ink-soft)}.hero-index b{font-size:18px;color:var(--accent)}
.vertical-signature{background:var(--dark);color:var(--on-dark);display:flex;justify-content:space-evenly;align-items:center;padding:21px 24px;gap:10px;letter-spacing:.25em;font-size:10px;font-weight:800}.vertical-signature b{font-size:16px;color:var(--accent)}.section{padding-top:118px;padding-bottom:110px}.kicker{display:block;margin-bottom:22px}.section h2,.feature-copy h2,.closing h2{font:800 clamp(37px,4.1vw,61px)/1.15 Manrope,sans-serif;letter-spacing:-.059em;margin:0}.section h2 em,.feature-copy h2 em,.closing h2 em{color:var(--accent-dark);letter-spacing:-.045em}.about{display:grid;grid-template-columns:1fr 1fr;gap:11%}.about-right{padding-top:31px}.about-right>p{font-size:19px;line-height:1.8;color:var(--ink-soft)}.about-divider{border-top:1px solid var(--line);margin:35px 0 24px}.values{display:grid;gap:14px}.value{display:flex;gap:16px;font-size:13px;font-weight:700;align-items:center}.value span{width:30px;height:30px;border:1px solid var(--accent);color:var(--accent-dark);font-size:12px;border-radius:50%;display:grid;place-items:center}
.services{background:var(--surface)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:48px}.section-head>p{max-width:340px;margin:0;color:var(--ink-soft);font-size:14px;line-height:1.75}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{background:var(--bg);border:1px solid var(--line);padding:32px 30px 36px;min-height:283px;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px #0001}.service-number{font:800 11px Manrope,sans-serif;color:var(--accent-dark);letter-spacing:.13em}.service-decoration{display:block;margin:34px 0 25px;width:41px;height:1px;background:var(--accent)}.service-card h3{font:800 19px Manrope,sans-serif;letter-spacing:-.025em}.service-card p{font-size:13px;line-height:1.85;color:var(--ink-soft);margin:15px 0 0}
.feature-section{display:grid;grid-template-columns:1fr 1fr;min-height:560px;background:var(--dark);color:var(--on-dark)}.feature-image{min-height:570px}.feature-copy{padding:min(8vw,120px);position:relative;display:flex;flex-direction:column;justify-content:center}.feature-copy .kicker{color:var(--accent)}.feature-copy h2{font-size:clamp(39px,4vw,63px);margin-bottom:25px}.feature-copy p{max-width:450px;color:#d6d8d1bb;line-height:1.8}.feature-link{color:var(--on-dark);font-weight:800;font-size:12px;display:flex;justify-content:space-between;max-width:225px;border-bottom:1px solid var(--accent);margin-top:18px;padding-bottom:14px}.feature-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff30;margin-top:70px;padding-top:15px;font-size:9px;letter-spacing:.15em}.feature-bottom span:last-child{color:var(--accent);font-size:20px}
.gallery-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}.gallery-card{margin:0;position:relative;min-height:370px;overflow:hidden;background:var(--surface)}.gallery-card img{transition:transform .6s}.gallery-card:hover img{transform:scale(1.04)}.gallery-card figcaption{position:absolute;bottom:0;left:0;right:0;padding:50px 23px 23px;color:white;background:linear-gradient(transparent,#000b);font:700 13px Manrope,sans-serif;letter-spacing:.03em}.statement{background:var(--accent);color:#1a1916;text-align:center;padding:70px 0}.statement .wrap{position:relative}.statement span:first-child{font:800 10px Manrope;letter-spacing:.25em}.statement p{font:500 clamp(30px,4.5vw,66px)/1.2 "Playfair Display",serif;margin:20px auto 0;max-width:920px}.statement-star{position:absolute;right:0;bottom:-14px;font-size:80px;opacity:.35}
.faq{display:grid;grid-template-columns:1fr 1fr;gap:10%}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:19px 0}.faq-list summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:15px;font:700 14px Manrope;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--accent-dark);font-size:22px}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--ink-soft);font-size:13px;line-height:1.75;padding-top:15px;margin-bottom:0}
.closing{background:var(--dark);color:var(--on-dark);padding:95px 0}.closing-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.closing h2{margin-bottom:22px}.closing .kicker{color:var(--accent)}.closing p{color:#d2d9d2b9;margin:0;max-width:580px}.closing-button{background:var(--accent);color:#181817;border-color:var(--accent);white-space:nowrap}.footer{background:#0d1110;color:#f2eee5;padding:32px 0}.footer-grid{display:flex;justify-content:space-between;gap:25px;align-items:center}.footer strong{letter-spacing:.18em;font:800 13px Manrope}.footer p,.footer span{font-size:11px;color:#aaa;line-height:1.5}.footer p{margin:12px 0 0}.footer-right{text-align:right;display:grid;gap:8px}.footer a{font-size:12px;font-weight:800;color:#e9c795}
@media(max-width:1050px){.wrap{width:calc(100% - 54px)}.nav{gap:16px}.hero-grid{gap:35px}.hero-visual{height:520px}.feature-copy{padding:65px 50px}.gallery-card{min-height:300px}}
@media(max-width:760px){.concept-ribbon{padding:12px 20px;letter-spacing:.04em;font-size:9px}.concept-ribbon a{display:none}.wrap{width:calc(100% - 38px)}.nav-wrap{min-height:75px}.nav-toggle{display:flex}.nav{display:none;position:absolute;top:75px;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--line);padding:20px;flex-direction:column;gap:0;box-shadow:0 15px 30px #0001}.nav.open{display:flex}.nav a{padding:13px 8px}.nav-button{display:none}.hero{padding-top:20px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-content{padding:44px 0 36px}.hero-visual{height:440px}.hero-footnote{margin-top:35px}.hero-index{padding-top:20px}.section{padding-block:75px}.about,.faq{grid-template-columns:1fr;gap:35px}.about-right{padding:0}.section-head{display:block}.section-head>p{margin-top:22px}.services-grid{grid-template-columns:1fr;gap:12px}.service-card{min-height:auto}.feature-section{grid-template-columns:1fr}.feature-image{min-height:330px;height:360px}.feature-copy{padding:65px 30px}.feature-bottom{margin-top:45px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-card{min-height:260px}.gallery-card:first-child{grid-column:span 2;min-height:370px}.closing-inner{display:block}.closing-button{margin-top:30px}.footer-grid{align-items:start}}
@media(max-width:460px){h1{font-size:clamp(44px,12vw,65px)}.hero-visual{height:370px}.hero-image-label{bottom:49px;left:19px}.hero-index{font-size:8px}.vertical-signature{font-size:8px;letter-spacing:.09em}.gallery-grid{grid-template-columns:1fr}.gallery-card:first-child{grid-column:auto;min-height:290px}.gallery-card{min-height:270px}.footer-grid{display:block}.footer-right{text-align:left;margin-top:28px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Sector catalogues: example data only, filterable client-side */
.inventory-section{background:var(--surface)}.inventory-filter-row{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:22px;padding:13px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.inventory-filter-row label{font:800 12px Manrope,sans-serif;display:flex;gap:14px;align-items:center}.inventory-filter-row select{appearance:auto;color:var(--ink);border:1px solid var(--line);border-radius:4px;background:var(--bg);padding:11px 15px;font:700 12px Manrope,sans-serif;min-width:185px}.inventory-filter-row>span{font-size:11px;color:var(--ink-soft)}
.inventory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.inventory-card{border:1px solid var(--line);background:var(--bg);min-width:0;transition:transform .25s;overflow:hidden}.inventory-card:hover{transform:translateY(-4px)}.inventory-photo{position:relative;height:230px;overflow:hidden}.inventory-photo img{transition:transform .4s}.inventory-card:hover .inventory-photo img{transform:scale(1.035)}
.inventory-photo-label{position:absolute;top:14px;left:14px;background:#131b1bde;color:white;padding:7px 11px;font:800 9px Manrope,sans-serif;letter-spacing:.1em}
.inventory-body{padding:24px 22px}.inventory-code{font:800 9px Manrope,sans-serif;letter-spacing:.1em;color:var(--accent-dark)}.inventory-body h3{font:800 21px/1.2 Manrope,sans-serif;margin:12px 0 19px;letter-spacing:-.04em}
.inventory-specs{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;padding-bottom:24px}.inventory-specs span{font-size:11px;color:var(--ink-soft)}
.inventory-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:19px}.inventory-bottom strong{font:800 22px Manrope,sans-serif;white-space:nowrap}.inventory-request{font-size:10px;font-weight:800;border-bottom:1px solid var(--accent-dark);padding-bottom:3px;white-space:nowrap}
.inventory-notice{font-size:11px;color:var(--ink-soft);margin:22px 0 0;line-height:1.7}
@media(max-width:1030px){.inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inventory-card:last-child{grid-column:1/-1;max-width:calc(50% - 10px)}}
@media(max-width:650px){.inventory-grid{grid-template-columns:1fr}.inventory-card:last-child{grid-column:auto;max-width:none}.inventory-filter-row{align-items:start;flex-direction:column}.inventory-photo{height:260px}}

/* Visual brand try-on. The public concept remains explicitly fictional. */
.brand-launcher{position:fixed;z-index:30;bottom:24px;right:24px;display:flex;align-items:center;gap:13px;color:#17130d;background:linear-gradient(110deg,#f9dda7,#dbad6c);border:1px solid #ffe3b2;border-radius:99px;padding:15px 21px;font:800 12px Manrope,sans-serif;box-shadow:0 16px 40px #0004;transition:transform .2s}
.brand-launcher:hover{transform:translateY(-3px)}.brand-launcher span{font-size:18px;line-height:1}
.brand-dialog{border:1px solid #d6ae74;border-radius:18px;background:#161718;color:#f5f0e8;padding:34px;width:min(530px,calc(100vw - 30px));box-shadow:0 35px 110px #000a;max-height:calc(100vh - 32px);overflow-y:auto}
.brand-dialog::backdrop{background:#08090cbd;backdrop-filter:blur(7px)}.brand-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:25px}.brand-dialog-head>span{font:800 10px Manrope,sans-serif;letter-spacing:.17em;color:#e4bd82}.brand-dialog-head button{width:33px;height:33px;display:grid;place-items:center;border:1px solid #ffffff36;background:transparent;border-radius:50%;color:#fff;font-size:22px}.brand-dialog h2{font:800 clamp(29px,5vw,43px)/1.17 Manrope,sans-serif;letter-spacing:-.055em;margin:0 0 18px}.brand-dialog h2 em{color:#e6b87b}.brand-dialog p{font-size:13px;color:#c8beb0;line-height:1.8}.brand-dialog form{margin:28px 0 15px;display:grid;gap:11px}.brand-dialog label{font-size:12px;color:#e7d7c0;font-weight:700}.brand-dialog input{background:#0b0c0c;border:1px solid #e0b67581;color:#fff;min-height:51px;border-radius:7px;padding:12px 15px;font:600 15px Manrope,sans-serif;width:100%}.brand-dialog input:focus-visible{outline:3px solid #dfa763}.brand-dialog .primary-button{justify-content:center;background:#edc484;color:#16110a;border-color:#edc484;margin-top:10px}.brand-dialog-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border-top:1px solid #ffffff30;padding-top:19px}.brand-dialog-actions button{color:#ebc791;border:0;border-bottom:1px solid #e2bb82;background:transparent;font-weight:700;font-size:11px;padding:5px 0}.brand-dialog #brand-feedback{margin:12px 0 0;font-size:11px;color:#f8ce8c}
.brand-stack strong{max-width:250px;overflow-wrap:anywhere}
@media(max-width:600px){.brand-launcher{bottom:15px;right:15px;padding:13px 16px;font-size:11px}.brand-dialog{padding:23px}.business-brand{min-width:0}.brand-stack strong{max-width:170px;font-size:13px}}
