*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#141419;color:#f3f5f7;font:16px/1.55 system-ui,sans-serif;--accent:#cfa6f5;--panel:#1d1c24}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.shell{width:min(1120px,calc(100% - 48px));margin-inline:auto}header,footer,nav{display:flex;align-items:center;gap:25px}header,footer{justify-content:space-between;padding-block:23px;border-bottom:1px solid #393543}.brand{font-size:1.4rem;font-style:italic;font-weight:950;text-transform:uppercase;letter-spacing:-.06em}.hero,.about,.quote{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,6vw,90px)}.hero{min-height:620px;padding-block:50px}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.19em;color:var(--accent)}.eyebrow span{display:inline-block;width:9px;height:9px;background:var(--accent);border-radius:50%;margin-right:7px}h1,h2,h3,p,figure{margin-top:0}h1,h2{letter-spacing:-.065em;line-height:.99;margin-bottom:24px}h1{font-size:clamp(3.6rem,7vw,7rem)}h1 em{font-style:normal;color:var(--accent)}h2{font-size:clamp(2.5rem,5vw,4.5rem)}h3{font-size:1.5rem;margin-bottom:6px}p{color:#ccc5d3}.intro{font-size:1.15rem;max-width:420px;margin-bottom:30px}.button,.outline{display:inline-flex;align-items:center;gap:20px;padding:12px 17px;border:1px solid #71677d;border-radius:7px;font:inherit;font-weight:750;cursor:pointer}.button{color:#171b20;background:var(--accent);border-color:var(--accent)}.button:hover{background:#e4cafa;color:#171b20}.outline{background:transparent;color:inherit}figure{margin:0;background:var(--panel);padding:9px;border:1px solid #40384a;border-radius:14px;transform:rotate(2deg)}img{display:block;width:100%;object-fit:cover}figure img{height:clamp(300px,39vw,460px);border-radius:8px}figcaption{display:flex;justify-content:space-between;padding:12px 7px 5px;font-size:.69rem;letter-spacing:.13em;font-weight:800}.section{padding-block:65px;border-top:1px solid #393543;scroll-margin-top:15px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cards article,form{background:var(--panel);border:1px solid #393543;border-radius:14px;overflow:hidden}.cards img{height:230px}.cards article div,form{padding:25px}.cards a{color:var(--accent);font-weight:750}.about img{height:300px;border-radius:14px}.quote{align-items:start}.quote p{max-width:410px}label{display:block;margin-bottom:15px;font-weight:650}input,select,textarea{display:block;width:100%;margin-top:6px;padding:10px 12px;background:#141419;color:inherit;border:1px solid #746781;border-radius:6px;font:inherit}textarea{resize:vertical}#resultado{margin-top:20px}#status{margin:10px 0 0;color:var(--accent)}footer{border-top:1px solid #393543;border-bottom:0}@media(max-width:700px){.shell{width:calc(100% - 32px)}header nav>a:not(.outline){display:none}.hero,.about,.quote,.cards{grid-template-columns:1fr}.hero{min-height:0}.section{padding-block:43px}figure{transform:none}.about img{order:1}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 24px;font-size:.875rem}.footer-links span{color:#ccc5d3}.footer-links span a{text-decoration:underline;text-underline-offset:3px}

header .brand,footer .brand{display:inline-flex;align-items:center;gap:9px;flex-shrink:0}.brand-icon{width:36px;height:36px}.brand span{white-space:nowrap}
.gallery{display:grid;gap:18px}.gallery article{background:var(--panel);border:1px solid #393543;border-radius:14px;padding:18px}.gallery header{border:0;padding:0 0 12px;gap:12px}.gallery header a{color:var(--accent);font-size:.85rem}.gallery h3{margin:0;font-size:1.12rem}.photo-strip{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-color:var(--accent) var(--panel);padding:4px 4px 10px}.photo-strip a{flex:0 0 clamp(104px,22vw,152px);scroll-snap-align:start}.photo-strip img{height:112px;border-radius:8px;object-fit:cover}.map{width:100%;height:320px;border:1px solid #393543;border-radius:14px}.contacts{display:grid;gap:12px;margin-block:22px}.contact-actions{display:flex;gap:8px;flex-wrap:wrap}.contact-actions a{white-space:nowrap}.contact-name{color:#f3f5f7;font-weight:800;margin-bottom:6px}.location address{font-style:normal;color:#ccc5d3}.location .outline{margin-top:18px}#resultado .outline{margin:0 5px 7px 0}.gallery-controls{display:flex;gap:8px;margin-top:8px}.gallery-controls button{padding:6px 14px}
@media(max-width:480px){header.shell{gap:8px}header .brand{font-size:1.05rem;gap:6px}header .brand-icon{width:29px;height:29px}header nav .outline{padding:8px 9px;font-size:.82rem}.gallery header{align-items:flex-start}}
@media(max-width:930px){header nav>a:not(.outline){display:none}}
