/* Il Mio Paradiso — production styles */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;0,800;1,400;1,500&family=Inter:wght@300;400;500;600;700&family=Allura&display=swap');
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:#F7F6F1;}
body{font-family:'Inter',sans-serif;color:#263238;-webkit-font-smoothing:antialiased;line-height:1.5;}
img{max-width:100%;display:block;}
a{color:inherit;}
h1,h2,h3{font-family:'Playfair Display',serif;color:#0E3554;margin:0;}
.script{font-family:'Allura',cursive;color:#7D8B5E;line-height:1;}
.shell{max-width:1340px;margin:0 auto;padding:0 28px;}
.sec{max-width:1240px;margin:0 auto;padding:0 28px;}
.muted{color:#6B7478;}
/* header */
.topbar{max-width:1340px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 32px;flex-wrap:nowrap;}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;}
.brand img{width:58px;height:58px;object-fit:contain;}
.brand b{font-family:'Playfair Display',serif;font-weight:700;font-size:19px;letter-spacing:.5px;color:#0E3554;display:block;}
.brand span{font-size:9px;letter-spacing:1.6px;color:#7D8B5E;font-weight:600;}
.nav{display:flex;align-items:center;gap:18px;flex-wrap:nowrap;}
.nav a{text-decoration:none;font-size:12px;letter-spacing:.4px;font-weight:500;color:#0E3554;white-space:nowrap;padding-bottom:5px;position:relative;}
.nav a.active{font-weight:600;}
.nav a.active::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#7D8B5E;border-radius:2px;}
.hdr-right{display:flex;align-items:center;gap:13px;}
.lang{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:#0E3554;}
.lang span[data-lang]{cursor:pointer;opacity:.5;}
.lang span[data-lang].on{opacity:1;text-decoration:underline;}
.btn{display:inline-flex;align-items:center;gap:9px;border-radius:11px;padding:13px 20px;font-size:12px;font-weight:600;letter-spacing:.5px;cursor:pointer;text-decoration:none;border:1.5px solid transparent;transition:opacity .2s;white-space:nowrap;}
.btn:hover{opacity:.88;}
.btn svg{width:15px;height:15px;}
.btn-primary{background:#006B7A;color:#fff;box-shadow:0 12px 24px -14px rgba(0,107,122,.7);}
.btn-ghost{background:#fff;color:#0E3554;border-color:#0E3554;}
.btn-light{background:#fff;color:#0E3554;}
.btn-sm{padding:11px 16px;font-size:11.5px;}
.burger{display:none;width:46px;height:46px;border-radius:10px;background:#006B7A;border:0;align-items:center;justify-content:center;cursor:pointer;}
.burger svg{width:22px;height:22px;stroke:#fff;}
.mnav{display:none;}
.mnav.open{display:block;}
.mnav-in{max-width:1340px;margin:0 auto;padding:0 28px 10px;}
.mnav-card{background:#fff;border:1px solid #E8E4DC;border-radius:16px;padding:10px 18px;box-shadow:0 16px 40px -20px rgba(14,53,84,.3);}
.mnav-card a{display:block;text-decoration:none;padding:11px 0;font-size:14px;font-weight:500;color:#0E3554;}
.mnav-lang{display:flex;gap:16px;padding:12px 0 6px;border-top:1px solid #EEF0EC;margin-top:4px;}
.mnav-lang span{cursor:pointer;font-size:13px;font-weight:600;color:#0E3554;}
/* hero — rounded card inside shell */
.hero{position:relative;overflow:hidden;border-radius:24px;background:#FAFAF8;height:650px;box-shadow:0 30px 60px -38px rgba(14,53,84,.4);}
.hero.short{height:460px;}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;}
.hero-mask{position:absolute;inset:0;background:linear-gradient(100deg,rgba(247,246,241,.97) 0%,rgba(247,246,241,.88) 30%,rgba(247,246,241,.5) 55%,rgba(247,246,241,.05) 80%);}
.hero-body{position:relative;z-index:2;height:100%;max-width:540px;display:flex;flex-direction:column;justify-content:center;padding:0 24px 0 64px;}
.hero h1{font-size:62px;line-height:1;letter-spacing:.5px;margin:6px 0 14px;}
.hero .lead{font-family:'Playfair Display',serif;font-style:italic;font-size:20px;color:#006B7A;max-width:520px;margin:0 0 26px;}
.hero .script{font-size:38px;}
.hbtns{display:flex;gap:14px;flex-wrap:wrap;}
/* feature bar */
.featbar{position:relative;z-index:5;max-width:1180px;margin:-42px auto 0;background:#fff;border:1px solid #E8E4DC;border-radius:20px;box-shadow:0 18px 44px -28px rgba(14,53,84,.22);display:grid;grid-template-columns:repeat(6,1fr);overflow:hidden;}
.featbar .fi{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:26px 14px;border-right:1px solid #EEF0EC;}
.featbar .fi:last-child{border-right:0;}
.featbar .fi b{font-size:13px;font-weight:700;letter-spacing:.6px;color:#0E3554;}
.featbar .fi small{font-size:12px;color:#6B7478;}
.ico{color:#006B7A;display:inline-flex;}
.ico svg{width:26px;height:26px;}
/* layout */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.grid6{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;}
.imground{width:100%;border-radius:22px;border:1px solid #E8E4DC;box-shadow:0 22px 46px -30px rgba(14,53,84,.32);object-fit:cover;}
.eyebrow{font-family:'Allura',cursive;font-size:34px;color:#7D8B5E;line-height:1;margin-bottom:2px;}
h2.big{font-size:42px;line-height:1.05;letter-spacing:.3px;margin:0 0 16px;}
p.body{font-size:15px;line-height:1.75;color:#3a4a52;}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;margin:18px 0 26px;}
.chk{display:flex;align-items:center;gap:10px;font-size:14px;color:#263238;font-weight:500;}
.chk i{width:22px;height:22px;border-radius:50%;background:#7D8B5E;display:flex;align-items:center;justify-content:center;flex:none;}
.chk i svg{width:13px;height:13px;stroke:#fff;}
.card{background:#fff;border:1px solid #E8E4DC;border-radius:18px;box-shadow:0 14px 34px -28px rgba(14,53,84,.3);}
.card.soft{background:#FAFAF8;}
.scard{padding:26px 22px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;}
.scard b{font-family:'Playfair Display',serif;font-size:17px;color:#0E3554;}
.scard small{font-size:12.5px;color:#6B7478;line-height:1.55;}
.iconbox{width:54px;height:54px;border-radius:15px;background:#F2F5F1;display:flex;align-items:center;justify-content:center;}
/* apartment cards */
.aptgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;}
.apt{display:flex;flex-direction:column;overflow:hidden;}
.apt .ph{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background:#FAFAF8;}
.apt .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.badge{position:absolute;top:14px;left:14px;background:rgba(255,255,255,.92);color:#006B7A;font-size:11px;font-weight:600;letter-spacing:.4px;padding:6px 12px;border-radius:20px;}
.apt .bd{padding:24px;display:flex;flex-direction:column;flex:1;}
.apt h3{font-size:22px;margin-bottom:10px;}
.chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px;}
.chip{display:inline-flex;align-items:center;gap:6px;background:#F2F5F1;color:#0E3554;font-size:11.5px;font-weight:500;padding:7px 12px;border-radius:20px;}
.chip svg{width:14px;height:14px;stroke:#006B7A;}
.apt-details{display:none;border-top:1px solid #EEF0EC;padding-top:16px;margin:6px 0 16px;}
.apt-details.open{display:block;}
.apt-details ul{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px;}
.apt-details li{display:flex;gap:10px;font-size:13px;color:#3a4a52;line-height:1.5;}
.apt-details li::before{content:"";width:7px;height:7px;border-radius:50%;background:#7D8B5E;flex:none;margin-top:6px;}
.miniinfo{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.miniinfo div{background:#FAFAF8;border:1px solid #E8E4DC;border-radius:12px;padding:12px 14px;font-size:12.5px;color:#3a4a52;}
.miniinfo b{display:block;font-size:11px;letter-spacing:.5px;color:#7D8B5E;margin-bottom:5px;}
.aptbtns{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto;}
.tabs{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;}
.tab{font-size:12.5px;font-weight:600;letter-spacing:.4px;padding:11px 22px;border-radius:30px;cursor:pointer;border:1.5px solid #E8E4DC;background:#fff;color:#0E3554;}
.tab.on{background:#006B7A;color:#fff;border-color:#006B7A;}
/* cta banner */
.cta{position:relative;border-radius:26px;overflow:hidden;border:1px solid #E8E4DC;box-shadow:0 24px 56px -32px rgba(14,53,84,.4);}
.cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.cta-mask{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,53,84,.92) 0%,rgba(14,53,84,.62) 55%,rgba(14,53,84,.3) 100%);}
.cta-in{position:relative;z-index:2;display:grid;grid-template-columns:1.4fr 1fr;gap:30px;align-items:center;padding:50px;}
.cta-in h2{color:#fff;font-size:34px;line-height:1.15;margin:0 0 12px;}
.cta-in p{color:rgba(255,255,255,.9);font-size:15px;margin:0;}
.cta-side{display:flex;flex-direction:column;align-items:flex-start;gap:16px;}
.phone{display:flex;align-items:center;gap:10px;color:#fff;font-size:17px;font-weight:600;text-decoration:none;}
.phone svg{width:18px;height:18px;stroke:#A9D6DF;}
.quote{background:#0E3554;border-radius:22px;padding:34px;color:#fff;display:flex;flex-direction:column;justify-content:center;}
.quote .q{font-family:'Playfair Display',serif;font-size:60px;line-height:.6;color:#A9D6DF;margin-bottom:10px;}
.quote p{font-family:'Playfair Display',serif;font-style:italic;font-size:18px;line-height:1.5;margin:0 0 16px;}
.quote cite{font-size:13px;letter-spacing:1px;color:#A9D6DF;font-style:normal;font-weight:600;}
.gal{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.gal a{position:relative;display:block;border-radius:18px;overflow:hidden;border:1px solid #E8E4DC;height:230px;}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.gal a:hover img{transform:scale(1.08);}
.gal .cap{position:absolute;left:0;right:0;bottom:0;padding:30px 16px 12px;background:linear-gradient(0deg,rgba(14,53,84,.8),transparent);color:#fff;font-family:'Playfair Display',serif;font-style:italic;font-size:15px;}
.gal a:nth-child(1),.gal a:nth-child(6),.gal a:nth-child(7){grid-column:span 2;}
/* footer */
.ft{margin-top:64px;background:#fff;border-top:1px solid #E8E4DC;}
.ft-in{max-width:1340px;margin:0 auto;padding:48px 28px;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px;}
.ft h4{font-size:12px;font-weight:700;letter-spacing:1.5px;color:#0E3554;margin:0 0 16px;font-family:'Inter',sans-serif;}
.ft a{color:#6B7478;text-decoration:none;font-size:13px;}
.ft .col-links{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;}
.ft .contact{display:flex;flex-direction:column;gap:11px;font-size:13px;color:#6B7478;}
.ft .contact a,.ft .contact span{display:flex;align-items:center;gap:9px;}
.ft .contact svg{width:15px;height:15px;stroke:#7D8B5E;flex:none;}
.social{display:flex;gap:10px;margin-bottom:18px;}
.social a{width:38px;height:38px;border-radius:50%;background:#0E3554;display:flex;align-items:center;justify-content:center;}
.social svg{width:17px;height:17px;}
.legal{display:flex;flex-direction:column;gap:8px;}
.legal a{font-size:12px;color:#9aa3a7;text-decoration:underline;}
.copy{max-width:1340px;margin:0 auto;padding:0 28px 30px;border-top:1px solid #E8E4DC;}
.copy div{padding-top:20px;font-size:12px;color:#9aa3a7;}
/* contact */
.cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.ccard{padding:28px;display:flex;flex-direction:column;}
.ccard .iconbox{margin-bottom:16px;}
.ccard h3{font-size:18px;margin-bottom:6px;}
.ccard .v{font-size:15px;color:#3a4a52;margin-bottom:16px;line-height:1.5;}
.ccard .btn{margin-top:auto;align-self:flex-start;}
.formgrid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start;}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px;}
.field label{font-size:12px;font-weight:600;color:#0E3554;}
.field input,.field select,.field textarea{font-family:'Inter',sans-serif;font-size:14px;color:#263238;background:#fff;border:1px solid #E8E4DC;border-radius:11px;padding:13px 14px;outline:none;width:100%;}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#006B7A;box-shadow:0 0 0 3px rgba(0,107,122,.12);}
.field .invalid{border-color:#c0584f;}
.contact-map{position:relative;overflow:hidden;border-radius:24px;min-height:420px;background:#eef5f4;border:1px solid #E8E4DC;box-shadow:0 18px 44px -30px rgba(14,53,84,.3);}
.contact-map iframe,.contact-map-iframe{display:block;width:100%;height:420px;border:0;opacity:1;visibility:visible;position:relative;z-index:1;}
.mapbtn{position:absolute;bottom:16px;right:16px;z-index:2;background:#fff;color:#006B7A;text-decoration:none;font-size:12px;font-weight:600;padding:10px 15px;border-radius:10px;box-shadow:0 8px 20px -10px rgba(14,53,84,.4);display:inline-flex;align-items:center;gap:7px;}
.faq{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
.fq{padding:24px 26px;}
.fq h3{font-size:16px;margin:0 0 6px;}
.fq p{font-size:14px;color:#6B7478;margin:0;line-height:1.65;}
.legalcard{padding:44px 46px;}
.legalcard h2{font-size:21px;margin:0 0 10px;}
.legalcard .blk{margin-bottom:26px;}
.legalcard p{font-size:14.5px;line-height:1.8;color:#3a4a52;margin:0;}
.legalcard a{color:#006B7A;}
.e404{text-align:center;padding:90px 28px 110px;}
.e404 .big404{font-family:'Playfair Display',serif;font-weight:800;font-size:96px;color:#A9D6DF;line-height:1;margin:6px 0 8px;}
#ck{position:fixed;left:0;right:0;bottom:0;z-index:9999;display:flex;justify-content:center;padding:18px;}
#ck .ck-card{background:#fff;border:1px solid #E8E4DC;border-radius:18px;box-shadow:0 24px 60px -24px rgba(14,53,84,.4);max-width:1000px;width:100%;padding:20px 24px;display:flex;align-items:center;gap:22px;flex-wrap:wrap;}
#ck .ck-card>div:first-child{display:flex;align-items:center;gap:14px;flex:1;min-width:240px;}
#ck img{width:42px;height:42px;}
#ck p{font-size:13px;line-height:1.6;color:#3a4a52;margin:0;}
#ck .ck-act{display:flex;gap:10px;flex-wrap:wrap;}
.ck-btn{font-size:13px;font-weight:600;border-radius:10px;padding:12px 18px;cursor:pointer;border:1.5px solid #0E3554;background:#fff;color:#0E3554;}
.ck-btn.p{background:#006B7A;color:#fff;border-color:#006B7A;}
.ck-btn.t{border:0;background:transparent;text-decoration:underline;padding:12px 8px;}
#ckm{position:fixed;inset:0;z-index:10000;background:rgba(14,53,84,.45);display:flex;align-items:center;justify-content:center;padding:20px;}
#ckm .m{background:#fff;border-radius:22px;max-width:540px;width:100%;padding:32px;max-height:90vh;overflow:auto;}
#ckm h3{font-size:22px;margin:0 0 6px;}
.ckrow{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:16px 0;border-bottom:1px solid #E8E4DC;}
.ckrow b{font-size:14px;color:#0E3554;}
.ckrow small{font-size:12.5px;color:#6B7478;}
.tog{position:relative;width:46px;height:26px;flex:none;cursor:pointer;}
.tog input{opacity:0;width:0;height:0;position:absolute;}
.tog .tr{position:absolute;inset:0;border-radius:26px;background:#cfd6d8;transition:.2s;}
.tog .kn{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:.2s;}
.tog input:checked+.tr{background:#006B7A;}
.tog input:checked+.tr+.kn{left:23px;}
.always{font-size:12px;font-weight:600;color:#7D8B5E;}
.formok{display:flex;gap:14px;background:#F0F6F1;border:1px solid #cfe3d4;border-radius:14px;padding:20px;}
.formok i{width:34px;height:34px;border-radius:50%;background:#7D8B5E;display:flex;align-items:center;justify-content:center;flex:none;}
.formok i svg{width:18px;height:18px;stroke:#fff;}
.formerr{font-size:13px;color:#c0584f;background:#fbeeec;border:1px solid #f0d3ce;border-radius:11px;padding:12px 14px;margin-bottom:14px;}
.hide{display:none!important;}
/* apartment detail modal */
.apt-modal{position:fixed;inset:0;z-index:10500;display:none;align-items:center;justify-content:center;padding:20px;}
.apt-modal.open{display:flex;}
.apt-modal-backdrop{position:absolute;inset:0;background:rgba(14,53,84,.55);}
.apt-modal-panel{position:relative;background:#fff;border-radius:22px;max-width:960px;width:100%;max-height:88vh;overflow:auto;box-shadow:0 40px 90px -20px rgba(14,53,84,.5);}
.apt-modal-close{position:absolute;top:16px;right:16px;z-index:2;width:40px;height:40px;border-radius:50%;background:#fff;border:1px solid #E8E4DC;color:#0E3554;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 18px -8px rgba(14,53,84,.35);}
.apt-modal-gallery{padding:20px 20px 0;}
.apt-modal-main{width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;background:#FAFAF8;}
.apt-modal-main img{width:100%;height:100%;object-fit:cover;display:block;}
.apt-modal-thumbs{display:flex;gap:10px;margin-top:12px;overflow-x:auto;padding-bottom:4px;}
.apt-modal-thumbs img{width:92px;height:66px;object-fit:cover;border-radius:10px;cursor:pointer;border:2px solid transparent;flex:none;opacity:.75;transition:opacity .15s,border-color .15s;}
.apt-modal-thumbs img:hover{opacity:1;}
.apt-modal-thumbs img.on{border-color:#006B7A;opacity:1;}
.apt-modal-body{padding:26px 30px 32px;}
.apt-modal-body h3{font-family:'Playfair Display',serif;font-weight:700;font-size:26px;color:#0E3554;margin:0 0 14px;}
.apt-modal-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}
@media(max-width:640px){
  .apt-modal{padding:0;}
  .apt-modal-panel{max-height:100vh;height:100%;border-radius:0;}
  .apt-modal-body{padding:22px 18px 28px;}
  .apt-modal-thumbs img{width:76px;height:56px;}
}
@media(max-width:1023px){
 .nav,.topbar .lang,.hdr-right .btn{display:none!important;}
 .burger{display:flex!important;}
 .grid2,.formgrid{grid-template-columns:1fr!important;}
 .grid3,.cgrid{grid-template-columns:1fr!important;}
 .aptgrid{grid-template-columns:1fr 1fr;}
 .grid6{grid-template-columns:repeat(3,1fr);}
 .featbar{grid-template-columns:repeat(3,1fr);}
 .featbar .fi:nth-child(3n){border-right:0;}
 .ft-in{grid-template-columns:1fr 1fr;}
 .gal{grid-template-columns:repeat(2,1fr);}
 .gal a{grid-column:auto!important;}
 .cta-in{grid-template-columns:1fr;}
 .hero{height:600px;}
 .hero h1{font-size:48px;}
 .hero-body{padding-left:32px;}
}
@media(max-width:640px){
 .shell,.sec{padding-left:16px;padding-right:16px;}
 .grid6,.featbar,.aptgrid,.ft-in,.faq,.frow{grid-template-columns:1fr!important;}
 .featbar .fi{border-right:0;}
 .hero{height:540px;border-radius:18px;}
 .hero h1{font-size:36px;}
 .hero-body{padding:0 22px;}
 .hbtns{flex-direction:column;align-items:stretch;}
 .legalcard{padding:28px 22px;}
 .cta-in{padding:30px;}
 .contact-map iframe,.contact-map-iframe{height:320px;}
 .topbar{padding:16px;}
}
/* header collapses to hamburger early enough to never wrap */
@media(max-width:1140px){
 .nav,.topbar .lang,.hdr-right .btn{display:none!important;}
 .burger{display:flex!important;}
}
/* ===== Homepage header / hero / feature-bar (centered premium layout) ===== */
.site-header{position:relative;z-index:20;width:100%;padding:18px 24px;}
.header-inner{max-width:1320px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:nowrap;}
.site-header .brand{display:flex;align-items:center;gap:14px;flex:0 0 auto;text-decoration:none;}
.site-header .brand img{width:auto;height:58px;display:block;}
.brand-tx b{font-family:'Playfair Display',serif;font-weight:700;font-size:19px;letter-spacing:.5px;color:#0E3554;display:block;line-height:1.1;}
.brand-tx small{font-size:9px;letter-spacing:1.6px;color:#7D8F62;font-weight:600;display:block;}
.main-nav{display:flex;align-items:center;justify-content:center;gap:24px;flex:1 1 auto;white-space:nowrap;}
.main-nav a{font-family:Inter,sans-serif;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#0E3557;text-decoration:none;position:relative;}
.main-nav a.active::after,.main-nav a:hover::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;background:#7D8F62;}
.header-actions{display:flex;align-items:center;gap:16px;flex:0 0 auto;white-space:nowrap;}
.language-switcher{display:flex;align-items:center;gap:6px;font-family:Inter,sans-serif;font-size:13px;font-weight:700;color:#0E3557;}
.language-switcher span[data-lang]{cursor:pointer;opacity:.5;}
.language-switcher span[data-lang].on{opacity:1;text-decoration:underline;}
.header-cta{display:inline-flex;align-items:center;justify-content:center;height:44px;padding:0 22px;border-radius:10px;background:#007C89;color:#fff;font-family:Inter,sans-serif;font-size:13px;font-weight:800;text-decoration:none;text-transform:uppercase;box-shadow:0 8px 20px rgba(0,124,137,.22);}
.mobile-menu-toggle{display:none;width:46px;height:46px;border-radius:10px;background:#006B7A;border:0;align-items:center;justify-content:center;cursor:pointer;}
.mobile-menu-toggle svg{stroke:#fff;}
.mobile-dropdown{display:contents;}
.hero-shell{max-width:1760px;margin:0 auto;padding:0 24px;}
.hero-card{position:relative;height:820px;border-radius:24px;overflow:hidden;background:#eaf4f6;box-shadow:0 18px 45px rgba(14,53,87,.10);}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;display:block;}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,246,241,.96) 0%,rgba(247,246,241,.78) 34%,rgba(247,246,241,.20) 68%,rgba(247,246,241,0) 100%),linear-gradient(0deg,rgba(247,246,241,.75) 0%,rgba(247,246,241,0) 45%);z-index:1;}
.hero-content{position:relative;z-index:2;max-width:540px;padding:128px 0 0 72px;}
.hero-kicker{font-family:Allura,cursive;font-size:36px;color:#7D8F62;margin-bottom:10px;line-height:1;}
.hero-title{font-family:'Playfair Display',serif;font-size:clamp(58px,5vw,86px);line-height:.95;letter-spacing:.01em;color:#0E3557;margin:0 0 20px;text-transform:uppercase;}
.hero-subtitle{font-family:Inter,sans-serif;font-size:15px;font-weight:800;letter-spacing:.48em;color:#007C89;margin-bottom:28px;text-transform:uppercase;}
.hero-text{font-family:Inter,sans-serif;font-size:16px;line-height:1.8;color:#0E3557;margin-bottom:28px;}
.hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:0;}
.feature-bar{position:relative;z-index:5;max-width:1180px;margin:-51px auto 72px;background:#fff;border:1px solid rgba(14,53,87,.10);border-radius:22px;box-shadow:0 18px 45px rgba(14,53,87,.10);display:grid;grid-template-columns:repeat(6,1fr);overflow:hidden;}
.feature-item{min-height:116px;padding:22px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;border-right:1px solid rgba(14,53,87,.10);}
.feature-item:last-child{border-right:none;}
.feature-item .ico,.feature-item svg{color:#007C89;}
.feature-item svg{width:26px;height:26px;}
.feature-item strong{font-family:Inter,sans-serif;font-size:13px;font-weight:800;color:#0E3557;text-transform:uppercase;}
.feature-item span{font-family:Inter,sans-serif;font-size:13px;color:#5f6f78;}
@media(max-width:980px){
 .header-inner{gap:16px;}
 .mobile-dropdown{display:none;}
 .mobile-menu-toggle{display:inline-flex;}
 .site-header.menu-open .mobile-dropdown{display:flex;position:absolute;left:24px;right:24px;top:86px;flex-direction:column;align-items:stretch;gap:20px;padding:24px;background:#fff;border-radius:18px;box-shadow:0 18px 45px rgba(14,53,87,.15);z-index:30;max-height:calc(100vh - 110px);overflow-y:auto;}
 .site-header.menu-open .main-nav{display:flex;flex-direction:column;align-items:stretch;gap:14px;white-space:normal;}
 .site-header.menu-open .main-nav a{padding:6px 0;border-bottom:1px solid rgba(14,53,87,.08);}
 .site-header.menu-open .main-nav a:last-child{border-bottom:0;}
 .site-header.menu-open .main-nav a.active::after,.site-header.menu-open .main-nav a:hover::after{display:none;}
 .site-header.menu-open .header-actions{display:flex;flex-direction:column;align-items:stretch;gap:16px;padding-top:8px;border-top:1px solid rgba(14,53,87,.08);}
 .site-header.menu-open .language-switcher{justify-content:center;font-size:14px;}
 .site-header.menu-open .header-cta{width:100%;}
 .hero-shell{padding:0 16px;}
 .hero-card{height:auto;min-height:720px;}
 .hero-content{padding:96px 28px 40px;max-width:100%;}
 .hero-title{font-size:clamp(44px,12vw,62px);}
 .hero-actions{margin-bottom:0;}
 .feature-bar{margin:-27px 16px 56px;grid-template-columns:repeat(2,1fr);}
 .feature-item{border-right:1px solid rgba(14,53,87,.10);border-bottom:1px solid rgba(14,53,87,.10);}
}
@media(max-width:560px){
 .site-header .brand img{height:48px;}
 .hero-content{padding:82px 22px 42px;}
 .hero-actions{flex-direction:column;align-items:stretch;}
 .hero-actions a{width:100%;}
}
