:root{--navy:#071d49;--navy-2:#0b2b68;--navy-3:#031333;--orange:#ff6a00;--orange-2:#ff8a27;--white:#fff;--off:#eef1f4;--grey:#aeb7c5;--ink:#111827;--shadow:0 18px 50px rgba(0,0,0,.22);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--white);background:var(--navy-3);line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%}.container{width:min(1160px,calc(100% - 40px));margin:auto}.skip-link{position:fixed;left:12px;top:-80px;background:var(--orange);padding:12px 18px;z-index:999}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:100;background:rgba(3,19,51,.93);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.1)}.nav-wrap{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:inline-flex;flex-direction:column;line-height:.85}.brand-main{font:900 36px/1 "Barlow Condensed",sans-serif;letter-spacing:1.5px;color:#fff}.brand-main::after{content:"";display:inline-block;width:11px;height:11px;background:var(--orange);margin-left:6px;transform:skew(-12deg)}.brand-sub{font-size:10px;letter-spacing:2.1px;margin-top:7px}.brand-sub strong{color:var(--orange)}.site-nav{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:700}.site-nav>a:not(.btn){position:relative}.site-nav>a:not(.btn)::after{content:"";position:absolute;left:0;bottom:-8px;width:0;height:2px;background:var(--orange);transition:.25s}.site-nav>a:hover::after{width:100%}.nav-toggle{display:none;background:none;border:0;padding:8px}.nav-toggle span{display:block;width:26px;height:2px;background:#fff;margin:6px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:6px;background:var(--orange);color:#fff;font-weight:800;border:2px solid var(--orange);box-shadow:0 10px 26px rgba(255,106,0,.25);transition:.25s}.btn:hover{transform:translateY(-2px);background:var(--orange-2)}.btn-small{min-height:42px;padding:0 18px}.btn-outline{background:transparent;border-color:rgba(255,255,255,.65);box-shadow:none}.btn-outline:hover{background:#fff;color:var(--navy)}.hero{min-height:760px;display:grid;align-items:center;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(3,19,51,.96),rgba(3,19,51,.6) 54%,rgba(3,19,51,.35)),url('https://images.unsplash.com/photo-1608506375591-b90e1f955e4b?auto=format&fit=crop&w=1800&q=85') center/cover}.hero::after{content:"CASTRO";position:absolute;right:-40px;bottom:30px;font:900 180px/1 "Barlow Condensed",sans-serif;color:rgba(255,255,255,.045);letter-spacing:4px}.hero-content{position:relative;z-index:2;padding:110px 0}.eyebrow{font-weight:800;letter-spacing:3px;color:var(--orange);font-size:13px}.hero h1,.privacy-hero h1{font:900 clamp(52px,7vw,92px)/.94 "Barlow Condensed",sans-serif;text-transform:uppercase;max-width:850px;margin:12px 0 24px;letter-spacing:.5px}.hero h1 span{color:var(--orange)}.hero-copy{font-size:19px;color:#e4e9f0;max-width:660px}.hero-actions{display:flex;gap:14px;margin-top:34px}.trust-row{display:flex;gap:28px;margin-top:38px;color:#fff;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:1px}.trust-row span::before{content:"";display:inline-block;width:8px;height:8px;background:var(--orange);margin-right:9px;transform:rotate(45deg)}.hero-stripe{position:absolute;left:0;bottom:0;width:100%;height:10px;background:linear-gradient(90deg,var(--orange) 0 28%,var(--off) 28% 100%)}.section{padding:104px 0}.section-heading{max-width:720px;margin-bottom:44px}.section-heading h2,.about h2,.visit h2{font:800 clamp(38px,5vw,60px)/1 "Barlow Condensed",sans-serif;text-transform:uppercase;margin:8px 0 18px}.section-heading p,.about-copy>p,.visit-info>p{color:#c9d1dc}.services{background:var(--navy)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{position:relative;padding:32px 26px;background:linear-gradient(160deg,#0c2c69,#081e4d);border:1px solid rgba(255,255,255,.12);border-top:5px solid #fff;min-height:330px;box-shadow:var(--shadow);transition:.25s}.service-card:hover{transform:translateY(-7px);border-top-color:var(--orange)}.service-card.featured{border-top-color:var(--orange)}.service-number{position:absolute;top:18px;right:20px;color:rgba(255,255,255,.18);font:800 30px "Barlow Condensed"}.service-icon{font-size:30px;color:var(--orange);margin:18px 0 28px}.service-card h3{font:800 28px "Barlow Condensed";text-transform:uppercase;margin:0 0 12px}.service-card p{color:#c8d0dc;font-size:14px}.service-card a{display:inline-block;margin-top:18px;color:var(--orange);font-weight:800;font-size:13px}.about{background:#fff;color:var(--ink)}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.about-image{min-height:560px;background:linear-gradient(180deg,transparent 55%,rgba(3,19,51,.85)),url('https://images.unsplash.com/photo-1605164599901-7e001a0e6c47?auto=format&fit=crop&w=1200&q=85') center/cover;position:relative;box-shadow:20px 20px 0 var(--orange)}.image-badge{position:absolute;left:24px;bottom:24px;background:var(--navy);padding:18px 22px;border-left:5px solid var(--orange);display:flex;flex-direction:column}.image-badge strong{color:var(--orange);font:900 28px "Barlow Condensed"}.image-badge span{color:#fff;font-size:11px;letter-spacing:2px}.about .eyebrow{color:var(--orange)}.about-copy>p{color:#4b5563}.feature-list{display:grid;gap:18px;margin:30px 0}.feature-list>div{display:grid;grid-template-columns:42px 1fr;gap:12px}.feature-list span{width:36px;height:36px;display:grid;place-items:center;background:var(--navy);color:var(--orange);font-weight:900}.feature-list p{margin:0;color:#4b5563;font-size:14px}.feature-list strong{color:var(--ink)}.text-link{color:var(--navy);font-weight:900;border-bottom:2px solid var(--orange)}.gallery-section{background:var(--off);padding-top:0}.gallery-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:16px}.gallery-card{min-height:340px;background-size:cover;background-position:center;display:flex;align-items:flex-end;position:relative;overflow:hidden}.gallery-card::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(3,19,51,.9))}.gallery-card span{position:relative;z-index:2;padding:24px;font:800 24px "Barlow Condensed";text-transform:uppercase}.gallery-one{background-image:url('https://images.unsplash.com/photo-1520340356584-f9917d1eea6f?auto=format&fit=crop&w=1000&q=85')}.gallery-two{background-image:url('https://images.unsplash.com/photo-1618843479313-40f8afb4b4d8?auto=format&fit=crop&w=900&q=85')}.gallery-three{background-image:url('https://images.unsplash.com/photo-1503736334956-4c8f8e92946d?auto=format&fit=crop&w=900&q=85')}.visit{background:linear-gradient(135deg,var(--navy-3),var(--navy-2))}.visit-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:46px;align-items:stretch}.contact-list{display:grid;gap:14px;margin:28px 0}.contact-list a,.contact-list>div{padding:18px;border-left:4px solid var(--orange);background:rgba(255,255,255,.06)}.contact-list span{display:block;color:var(--orange);font-size:10px;font-weight:900;letter-spacing:2px;margin-bottom:5px}.visit-actions{display:flex;gap:12px}.map-wrap{min-height:500px;border:8px solid rgba(255,255,255,.08);box-shadow:var(--shadow)}.map-wrap iframe{width:100%;height:100%;min-height:484px;border:0}.site-footer{background:#020b1c;padding:60px 0 0;border-top:8px solid var(--orange)}.footer-grid{display:grid;grid-template-columns:1.5fr .8fr 1fr .8fr;gap:50px;padding-bottom:46px}.footer-grid h3{font:800 20px "Barlow Condensed";text-transform:uppercase;color:var(--orange)}.footer-grid a{display:block;margin:7px 0;color:#e3e8ef}.footer-grid p{color:#aeb7c5;font-size:14px}.footer-brand{margin-bottom:22px}.footer-bottom{padding:20px 0;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;color:#8894a6;font-size:13px}.mobile-call{display:none}.privacy-main{background:var(--off);color:var(--ink)}.privacy-hero{padding:90px 0 55px;background:linear-gradient(135deg,var(--navy),var(--navy-3));color:#fff}.privacy-hero h1{margin-bottom:12px}.privacy-content{padding:70px 0}.legal-card{background:#fff;padding:50px;box-shadow:var(--shadow);max-width:900px}.legal-card h2{font:800 28px "Barlow Condensed";text-transform:uppercase;color:var(--navy);margin-top:34px}.legal-card a{color:var(--navy);font-weight:800}.no-share{background:#fff4eb;border-left:6px solid var(--orange);padding:22px;margin:18px 0}.no-share strong{color:var(--navy);font-size:18px}
@media(max-width:980px){.site-nav{position:absolute;top:84px;left:0;right:0;background:var(--navy-3);padding:24px 20px;display:none;flex-direction:column;align-items:stretch;border-top:1px solid rgba(255,255,255,.1)}.site-nav.open{display:flex}.nav-toggle{display:block}.privacy-nav{display:flex;position:static;flex-direction:row;background:transparent;padding:0}.service-grid{grid-template-columns:repeat(2,1fr)}.about-grid,.visit-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-one{grid-column:span 2}.footer-grid{grid-template-columns:1fr 1fr}.hero{min-height:690px}.hero::after{font-size:110px}}
@media(max-width:640px){.container{width:min(100% - 28px,1160px)}.nav-wrap{min-height:72px}.brand-main{font-size:30px}.site-nav{top:72px}.hero{min-height:720px;background-position:62% center}.hero-content{padding:90px 0}.hero h1{font-size:50px}.hero-copy{font-size:16px}.hero-actions,.visit-actions{flex-direction:column;align-items:stretch}.trust-row{flex-direction:column;gap:10px}.section{padding:76px 0}.service-grid{grid-template-columns:1fr}.about-image{min-height:430px;box-shadow:10px 10px 0 var(--orange)}.gallery-grid{grid-template-columns:1fr}.gallery-one{grid-column:auto}.gallery-card{min-height:300px}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-bottom{flex-direction:column;gap:6px;padding-bottom:85px}.mobile-call{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:120;background:var(--orange);color:#fff;min-height:52px;align-items:center;justify-content:center;font-weight:900;border-radius:6px;box-shadow:0 14px 40px rgba(0,0,0,.35)}.legal-card{padding:28px 20px}.privacy-nav a:not(.btn){display:none}}

/* Contact form */
.contact-heading{margin-bottom:34px}.contact-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:34px;align-items:start}.contact-form{background:#fff;color:var(--ink);padding:34px;border-top:6px solid var(--orange);box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.form-field label{font-size:13px;font-weight:800;color:var(--navy);text-transform:uppercase;letter-spacing:.6px}.form-field label span{color:var(--orange)}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #cbd2dc;border-radius:5px;background:#f8fafc;color:var(--ink);font:inherit;padding:13px 14px;outline:none;transition:border-color .2s,box-shadow .2s}.form-field textarea{resize:vertical;min-height:130px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(255,106,0,.15)}.consent-box{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;background:#f1f4f8;border-left:4px solid var(--orange);padding:18px;color:#374151;font-size:12px;line-height:1.55;cursor:pointer}.consent-box input{width:18px;height:18px;margin-top:2px;accent-color:var(--orange)}.consent-box strong{color:var(--navy)}.consent-box a{color:var(--navy);font-weight:800;text-decoration:underline}.form-note{font-size:11px;color:#687386;margin:14px 0 20px}.form-submit{border:0;cursor:pointer}.form-status{min-height:24px;margin-top:14px;font-size:13px;font-weight:700}.form-status.success{color:#116b38}.form-status.error{color:#a82424}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-side{padding:12px 0}.contact-map{margin-top:38px;min-height:390px}.contact-map iframe{min-height:374px}
@media(max-width:980px){.contact-layout{grid-template-columns:1fr}.contact-side{padding-top:12px}}
@media(max-width:640px){.contact-form{padding:24px 18px}.form-row{grid-template-columns:1fr}.consent-box{padding:15px}.contact-map{min-height:330px}.contact-map iframe{min-height:314px}}
