
:root{--navy:#0c1f33;--navy2:#142f4a;--gold:#c89b4b;--cream:#f7f4ee;--text:#22303c;--muted:#64707b;--line:#e6e8ea;--white:#fff;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--text);line-height:1.65;background:#fff}a{color:inherit}img{max-width:100%;height:auto;display:block}.container{width:min(var(--max),calc(100% - 36px));margin:auto}.topbar{background:#081725;color:#d9e0e6;font-size:.88rem}.topbar .container{display:flex;justify-content:space-between;gap:24px;padding:8px 0;flex-wrap:wrap}.topbar a{text-decoration:none}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.98);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:24px}.brand img{width:210px}.menu{display:flex;align-items:center;gap:26px}.menu a{text-decoration:none;font-weight:700;font-size:.95rem}.menu a:hover,.menu a[aria-current=page]{color:#9a7028}.menu-toggle{display:none;border:0;background:none;font-size:1.8rem}.hero{position:relative;min-height:610px;display:grid;align-items:center;color:white;background:linear-gradient(90deg,rgba(5,18,30,.82),rgba(5,18,30,.34)),url('../img/dosemealti-villa-hero.webp') center/cover}.hero.small{min-height:360px}.hero-copy{max-width:760px;padding:80px 0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#e0bb79;font-size:.82rem}.hero h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.08;margin:.3em 0}.hero p{font-size:1.15rem;max-width:720px}.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-block;padding:13px 20px;border-radius:6px;text-decoration:none;font-weight:800;background:var(--gold);color:#17202a}.btn.alt{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.65)}section{padding:76px 0}.section-head{max-width:780px;margin-bottom:34px}.section-head h2{font-size:clamp(2rem,4vw,3rem);line-height:1.15;margin:.2em 0}.section-head p{color:var(--muted)}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.card .pad{padding:24px}.card h3{margin-top:0}.soft{background:var(--cream)}.dark{background:var(--navy);color:#fff}.dark p{color:#d8e0e7}.feature{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}.feature img{border-radius:14px}.list{padding-left:20px}.list li{margin:8px 0}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.fact{background:#fff;border:1px solid var(--line);padding:20px;border-radius:10px}.fact strong{display:block;color:var(--navy);font-size:1.05rem}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-weight:800}.breadcrumbs{font-size:.9rem;margin-bottom:14px;opacity:.9}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px}.contact-box{background:var(--cream);padding:28px;border-radius:12px}.form{display:grid;gap:14px}.form input,.form select,.form textarea{width:100%;padding:13px;border:1px solid #cfd5d9;border-radius:6px;font:inherit}.form textarea{min-height:150px}.form button{border:0;cursor:pointer}.footer{background:#081725;color:#d9e0e6;padding:54px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}.footer h3,.footer h4{color:#fff}.footer a{text-decoration:none}.footer-bottom{border-top:1px solid #294055;margin-top:34px;padding-top:20px;font-size:.9rem}.notice{padding:18px;border-left:4px solid var(--gold);background:#fbf8f1}.pill{display:inline-block;padding:6px 10px;border-radius:999px;background:#eef2f4;font-size:.85rem;font-weight:700;margin:3px}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:#fff;padding:10px;z-index:99}@media(max-width:900px){.menu-toggle{display:block}.menu{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:18px 24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.menu.open{display:flex}.feature,.contact-grid,.grid-2,.grid-3,.facts,.footer-grid{grid-template-columns:1fr}.hero{min-height:540px}.hero-copy{padding:60px 0}.topbar .container{display:block}.topbar span{display:block;margin:2px 0}.brand img{width:180px}}


/* V2 visual refinement */
body{background:linear-gradient(180deg,#fff 0,#fbfcfd 100%)}
.site-header{backdrop-filter:saturate(160%) blur(12px);box-shadow:0 8px 30px rgba(8,23,37,.05)}
.nav{min-height:84px}.menu a{position:relative}.menu a:after{content:"";position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:var(--gold);transition:right .25s ease}.menu a:hover:after,.menu a[aria-current=page]:after{right:0}
.hero{min-height:680px;background:linear-gradient(90deg,rgba(4,15,25,.90) 0%,rgba(4,15,25,.66) 48%,rgba(4,15,25,.18) 100%),url('../img/dosemealti-villa-hero.webp') center/cover;isolation:isolate}
.hero:after{content:"";position:absolute;inset:auto 0 0;height:150px;background:linear-gradient(transparent,rgba(6,20,32,.24));z-index:-1}.hero-copy{padding:105px 0}.hero h1{max-width:900px;letter-spacing:-.035em;text-shadow:0 8px 30px rgba(0,0,0,.2)}.hero p{font-size:1.2rem;line-height:1.75;color:#f2f5f7}.btn{border-radius:999px;padding:14px 23px;box-shadow:0 10px 24px rgba(200,155,75,.18);transition:transform .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(200,155,75,.28)}.btn.alt{box-shadow:none;backdrop-filter:blur(6px)}
section{padding:88px 0}.section-head h2,.feature h2{letter-spacing:-.025em}.card{border:0;border-radius:20px;box-shadow:0 16px 45px rgba(15,34,51,.08);transition:transform .25s ease,box-shadow .25s ease}.card:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(15,34,51,.13)}.card img{aspect-ratio:16/8;object-fit:cover}.card .pad{padding:28px}.feature img{border-radius:24px;box-shadow:0 24px 60px rgba(12,31,51,.14)}
.trust-strip{margin-top:-42px;position:relative;z-index:5}.trust-panel{background:#fff;border:1px solid rgba(230,232,234,.8);border-radius:22px;box-shadow:0 18px 55px rgba(7,24,39,.12);display:grid;grid-template-columns:1.25fr repeat(3,1fr);overflow:hidden}.trust-intro,.trust-item{padding:26px 28px}.trust-intro{background:var(--navy);color:#fff}.trust-intro strong{display:block;font-size:1.05rem}.trust-intro span{color:#cfd8e0;font-size:.9rem}.trust-item{border-left:1px solid var(--line);text-decoration:none}.trust-item small{display:block;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:5px}.trust-item strong{display:block;color:var(--navy)}.trust-item:hover strong{color:#9a7028}
.brand-network{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:stretch}.brand-card{background:linear-gradient(145deg,#0b2034,#132f49);color:#fff;border-radius:24px;padding:38px;box-shadow:0 24px 55px rgba(12,31,51,.15)}.brand-card h3{font-size:1.75rem;margin:.25em 0}.brand-card p{color:#dbe3e9}.brand-links{display:grid;gap:14px}.brand-link{display:flex;gap:16px;align-items:flex-start;padding:22px;border:1px solid var(--line);background:#fff;border-radius:18px;text-decoration:none;box-shadow:0 10px 32px rgba(15,34,51,.05)}.brand-link .icon{flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--cream);font-weight:900;color:#9a7028}.brand-link strong{display:block;color:var(--navy);font-size:1.02rem}.brand-link span{color:var(--muted);font-size:.92rem}.brand-link:hover{border-color:#d4bb8d;transform:translateX(3px)}
.agent-signature{display:grid;grid-template-columns:120px 1fr;gap:22px;align-items:center;margin-top:28px}.agent-signature img{width:120px;height:120px;object-fit:cover;border-radius:50%;border:3px solid rgba(255,255,255,.18);box-shadow:none}.agent-signature strong{display:block;font-size:1.12rem}.agent-signature span{color:#d8e0e7}
.fact{border:0;border-radius:16px;box-shadow:0 10px 32px rgba(15,34,51,.06);padding:24px}.fact strong{font-size:1.12rem;margin-bottom:5px}.soft{background:linear-gradient(180deg,#f8f5ef,#f3f6f8)}
@media(max-width:900px){.trust-strip{margin-top:-24px}.trust-panel{grid-template-columns:1fr}.trust-item{border-left:0;border-top:1px solid var(--line)}.brand-network{grid-template-columns:1fr}.hero{min-height:620px}.hero-copy{padding:80px 0}.agent-signature{grid-template-columns:84px 1fr}.agent-signature img{width:84px;height:84px}}

/* V3 authority & conversion components */
.authority-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.authority-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 12px 35px rgba(15,34,51,.06)}.authority-card .num{font-size:2rem;font-weight:900;color:var(--gold);line-height:1}.authority-card h3{margin:.5em 0 .25em;color:var(--navy)}
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.guide-card{display:flex;flex-direction:column;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 14px 38px rgba(15,34,51,.08);text-decoration:none}.guide-card img{aspect-ratio:16/9;object-fit:cover}.guide-card .pad{padding:24px}.guide-card small{color:#9a7028;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.guide-card h3{color:var(--navy);margin:.45em 0}.guide-card p{color:var(--muted);margin-bottom:0}.guide-card:hover{transform:translateY(-4px);transition:.2s ease}
.region-block{padding:28px 0;border-top:1px solid var(--line);scroll-margin-top:110px}.region-block h2{font-size:clamp(1.6rem,3vw,2.25rem);color:var(--navy);margin-bottom:8px}.region-meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 18px}.region-meta span{background:var(--cream);border-radius:999px;padding:6px 10px;font-size:.85rem;font-weight:700}.compare-table{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 10px 30px rgba(15,34,51,.05)}.compare-table th,.compare-table td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.compare-table th{background:var(--navy);color:#fff}.compare-table tr:last-child td{border-bottom:0}
.proof-band{background:linear-gradient(135deg,#0b2034,#173b59);color:#fff;border-radius:24px;padding:36px;display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center}.proof-band p{color:#dce4ea}.proof-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.proof-list div{padding:14px 16px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:rgba(255,255,255,.04)}
.sticky-contact{position:fixed;right:18px;bottom:18px;z-index:30;display:flex;gap:10px}.sticky-contact a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:900;border-radius:999px;padding:13px 17px;box-shadow:0 12px 30px rgba(8,23,37,.22)}.sticky-contact .wa{background:#fff;color:#123}.sticky-contact .call{background:var(--gold);color:#17202a}.article{max-width:860px}.article h2{margin-top:2.1em;color:var(--navy);font-size:1.75rem}.article h3{margin-top:1.6em;color:var(--navy)}.article .lead{font-size:1.16rem;color:#45515d}.toc{background:var(--cream);border-radius:16px;padding:22px 26px;margin:28px 0}.toc a{text-decoration:none}.source-note{font-size:.9rem;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:28px}
@media(max-width:900px){.authority-grid,.guide-grid,.proof-band,.proof-list{grid-template-columns:1fr}.compare-table{display:block;overflow-x:auto}.sticky-contact{left:14px;right:14px}.sticky-contact a{flex:1}.topbar .container span:last-child{margin-top:5px}}

/* V4: compact inner-page heroes */
.hero.small{min-height:250px;background-position:center 46%;}
.hero.small .hero-copy{padding:46px 0 52px;}
.hero.small h1{font-size:clamp(2rem,4vw,3.45rem);margin:.22em 0;}
.hero.small p{font-size:1.04rem;line-height:1.6;max-width:760px;margin-bottom:0;}
.hero.small .btns{margin-top:20px;}
.type-link{text-decoration:none;color:inherit;}
.type-link:hover h3,.inline-link:hover{color:#9a7028;}
.type-detail{scroll-margin-top:120px;}
.type-detail h3{font-size:1.55rem;margin:.15em 0 .45em;}
.type-detail .links{display:flex;gap:14px;flex-wrap:wrap;margin-top:16px;}
.inline-link{font-weight:800;text-decoration:none;border-bottom:1px solid currentColor;}
@media(max-width:900px){.hero.small{min-height:220px}.hero.small .hero-copy{padding:36px 0 42px}.hero.small .btns{margin-top:16px}}
