:root{--ink:#142a38;--sea:#123f55;--sea2:#0d3346;--cream:#f3ecdf;--paper:#fbf8f2;--terra:#c86636;--gold:#b69459;--charcoal:#192025;--line:rgba(20,42,56,.16);--serif:'Fraunces',serif;--sans:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);overflow-x:hidden}img{display:block;width:100%}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.05;margin:.2em 0 .45em}h1{font-size:clamp(3.2rem,7vw,7.5rem)}h2{font-size:clamp(2.35rem,4.7vw,5rem)}h3{font-size:clamp(1.5rem,2vw,2.1rem)}p{margin:.6rem 0 1.25rem}.wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}.section{padding:clamp(80px,10vw,150px) 0}.section-sm{padding:60px 0}.eyebrow{text-transform:uppercase;letter-spacing:.28em;font-size:.74rem;font-weight:600;color:var(--terra)}.lead{font-size:clamp(1.15rem,1.6vw,1.4rem);max-width:760px}.btn,.nav-book,.booking-bar button{display:inline-flex;align-items:center;justify-content:center;background:var(--terra);color:#fff;border:0;padding:16px 26px;text-transform:uppercase;letter-spacing:.16em;font:600 .74rem var(--sans);cursor:pointer;transition:.25s}.btn:hover,.nav-book:hover,.booking-bar button:hover{background:#a94e27;transform:translateY(-2px)}.btn-outline{background:transparent;border:1px solid currentColor}.link{display:inline-block;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:600;border-bottom:1px solid;padding-bottom:5px}.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4vw,68px);color:white;transition:.3s}.site-header.scrolled,.inner-page .site-header{background:rgba(243,236,223,.96);color:var(--ink);box-shadow:0 8px 30px rgba(0,0,0,.06)}.brand{width:220px}.brand svg{display:block;width:100%;fill:currentColor}.brand text{font:600 19px var(--serif);letter-spacing:.1em}.brand .brand-sub{font:600 9px var(--sans);letter-spacing:.38em}.brand .brand-gold{stroke:var(--gold)}.main-nav{display:flex;align-items:center;gap:clamp(14px,2vw,32px)}.main-nav>a{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em}.nav-book{padding:13px 19px}.menu-toggle{display:none;background:none;border:0;padding:10px}.menu-toggle span{display:block;width:26px;height:1px;background:currentColor;margin:6px}.hero{min-height:100svh;display:grid;place-items:center;text-align:center;color:#fff;position:relative;background:linear-gradient(rgba(6,25,36,.28),rgba(6,25,36,.7)),url('../img/hero/slider-1.jpg') center/cover}.hero-content{width:min(1000px,calc(100% - 40px));padding-top:80px}.hero h1 em{font-weight:400}.hero .lead{margin:0 auto 2rem}.hero-scroll{position:absolute;bottom:25px;font-size:.65rem;letter-spacing:.35em;text-transform:uppercase}.booking-wrap{background:var(--sea);padding:0 20px}.booking-bar{width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:1fr 1fr 1.3fr auto;align-items:end;padding:28px 0;gap:16px;color:#fff}.booking-bar label span{display:block;text-transform:uppercase;letter-spacing:.2em;font-size:.67rem;margin-bottom:8px}.booking-bar input,.booking-bar select{width:100%;height:52px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff;padding:0 14px;font:inherit;color-scheme:dark}.booking-bar button{height:52px}.distance-strip{display:flex;justify-content:center;gap:clamp(20px,5vw,70px);padding:22px 20px;background:var(--cream);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;overflow:auto}.distance-strip strong{font:600 1.15rem var(--serif);margin-right:4px}.split{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(50px,8vw,110px);align-items:center}.mosaic{display:grid;grid-template-columns:1.1fr .8fr;grid-template-rows:220px 220px;gap:14px}.mosaic img{height:100%;object-fit:cover}.mosaic img:first-child{grid-row:1/3}.apartment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:50px}.apartment-card{background:#fff;transition:.3s}.apartment-card:hover{transform:translateY(-8px);box-shadow:0 22px 60px rgba(20,42,56,.12)}.apartment-image{height:310px;position:relative;overflow:hidden}.apartment-image img{height:100%;object-fit:cover;transition:.5s}.apartment-card:hover img{transform:scale(1.04)}.size-tag{position:absolute;right:0;bottom:0;background:var(--cream);padding:10px 14px;font:600 .75rem var(--sans)}.card-body{padding:26px}.card-meta{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--terra)}.advantages{background:var(--cream)}.icon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:45px}.icon-card{background:var(--cream);padding:38px}.icon{font:400 2rem var(--serif);color:var(--terra)}.dark-section{background:var(--sea2);color:#fff}.destination-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:42px}.destination{min-height:520px;position:relative;display:flex;align-items:end;overflow:hidden;color:#fff;padding:30px}.destination img{position:absolute;inset:0;height:100%;object-fit:cover}.destination:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 25%,rgba(4,22,32,.82))}.destination-content{position:relative;z-index:1}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:40px}.experience img{height:270px;object-fit:cover;margin-bottom:24px}.reviews{text-align:center;background:var(--cream)}.quote{font:400 clamp(1.8rem,3vw,3rem)/1.35 var(--serif);max-width:900px;margin:30px auto}.family{min-height:560px;display:grid;place-items:center;text-align:center;color:#fff;background:linear-gradient(rgba(13,51,70,.25),rgba(13,51,70,.75)),url('../img/hero/san-vito-lo-capo-2.jpg') center/cover}.final-cta{background:var(--charcoal);color:#fff}.final-cta .split{grid-template-columns:1.1fr .9fr}.map-card{min-height:360px;background:var(--cream);color:var(--ink);display:grid;place-items:center;text-align:center;padding:30px}.inner-hero{min-height:72vh;display:flex;align-items:end;color:#fff;padding:170px 0 90px;background:linear-gradient(rgba(8,29,40,.25),rgba(8,29,40,.78)),var(--hero) center/cover}.inner-hero h1{font-size:clamp(3.2rem,7vw,6.8rem);max-width:950px}.content-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:start}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{padding:28px;border:1px solid var(--line);background:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-item{position:relative;cursor:pointer;overflow:hidden}.gallery-item img{height:320px;object-fit:cover;transition:.4s}.gallery-item:hover img{transform:scale(1.04)}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px}.contact-card{background:white;padding:clamp(28px,5vw,55px)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field-full{grid-column:1/-1}.contact-card label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.contact-card input,.contact-card textarea,.contact-card select{width:100%;padding:14px;border:1px solid var(--line);background:var(--paper);font:inherit}.notice{padding:16px 20px;background:#e4f0e7;margin-bottom:20px}.site-footer{background:#0e151a;color:#d9d8d4;padding:80px 0 25px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:50px}.site-footer h2{font:600 .7rem var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}.site-footer a:hover{color:#fff}.footer-brand{font:500 2rem var(--serif)}.footer-brand span{display:block;font:600 .72rem var(--sans);letter-spacing:.35em;color:var(--gold)}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:60px;padding-top:22px;display:flex;justify-content:space-between;font-size:.72rem}.whatsapp{position:fixed;z-index:45;right:22px;bottom:22px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-weight:700;box-shadow:0 10px 30px rgba(0,0,0,.2)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:980px){.main-nav{position:fixed;inset:0;background:var(--sea2);color:#fff;display:flex;flex-direction:column;justify-content:center;transform:translateX(100%);transition:.3s}.main-nav.open{transform:none}.main-nav>a{font-size:1.05rem}.menu-toggle{display:block;z-index:2;color:inherit}.booking-bar{grid-template-columns:1fr 1fr}.split,.content-grid,.contact-grid{grid-template-columns:1fr}.apartment-grid{grid-template-columns:1fr 1fr}.icon-grid,.service-grid{grid-template-columns:1fr 1fr}.destination-grid{grid-template-columns:1fr}.destination{min-height:420px}.experience-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.site-header{height:74px;padding:0 18px}.brand{width:185px}.section{padding:76px 0}.wrap{width:min(100% - 28px,1180px)}.booking-bar{grid-template-columns:1fr;padding:24px 0}.distance-strip{justify-content:flex-start}.mosaic{grid-template-rows:170px 170px}.apartment-grid,.icon-grid,.service-grid,.gallery-grid,.form-grid,.footer-grid{grid-template-columns:1fr}.apartment-image,.gallery-item img{height:280px}.final-cta .split{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:12px}.inner-hero{min-height:62vh;padding-bottom:60px}}
:root{}.family{background-image:linear-gradient(rgba(13,51,70,.25),rgba(13,51,70,.75)),url('../img/hero/slider-2.jpg')}
