@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--green:#c8b184;--neon:#d8c39a;--ink:#1c201d;--muted:#77736a;--paper:#f4f0e8;--line:#d9d0c1;--dark:#101714;--font:'Montserrat',sans-serif;--display:'Cormorant Garamond',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font)}a{color:inherit;text-decoration:none}.top{background:var(--dark);color:#c9d0c5;padding:12px 6%;font-size:10px;letter-spacing:.16em;display:flex;justify-content:space-between;gap:20px}.header{background:#fff;display:flex;align-items:center;justify-content:space-between;padding:18px 6%;border-bottom:1px solid var(--line)}.logo img{width:190px;max-height:65px;object-fit:contain;display:block}.nav{display:flex;gap:25px;align-items:center;font-size:12px;font-weight:700}.nav a:hover{color:#5b8d2d}.nav .cta{padding:13px 17px;background:var(--green);color:#111}.hero{min-height:520px;position:relative;display:flex;align-items:end;color:white;background:#1d271d url('') center/cover}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,14,8,.76),rgba(6,14,8,.15)),linear-gradient(0deg,rgba(6,14,8,.5),transparent 60%)}.hero-inner{position:relative;padding:80px 10% 65px;max-width:900px}.eyebrow{font-size:10px;letter-spacing:.2em;color:var(--neon);font-weight:700}.hero h1{font:500 clamp(42px,6vw,76px)/1.05 var(--display);letter-spacing:-.055em;margin:20px 0}.hero h1 em{font-family:Georgia,serif;font-weight:400;color:var(--neon)}.hero p{font-size:14px;line-height:1.9;max-width:620px;color:#e2e8df}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;background:var(--green);color:#10150d;font-size:11px;font-weight:700}.btn.secondary{background:transparent;border:1px solid #ffffff85;color:#fff}.wrap{max-width:1200px;margin:auto;padding:75px 6%}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:30px}.section-head h2{font:500 clamp(30px,4vw,48px)/1.12 var(--display);letter-spacing:-.05em;margin:10px 0}.section-head h2 em{font-family:Georgia,serif;color:#5b8d2d;font-weight:400}.section-head p{max-width:420px;font-size:13px;line-height:1.8;color:#70756e}.proposal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.proposal{background:#fff;border:1px solid var(--line);padding:25px;min-height:225px;display:flex;flex-direction:column;position:relative;overflow:hidden}.proposal:after{content:'';position:absolute;right:-35px;top:-45px;width:115px;height:115px;border:1px solid #dce8d1;border-radius:50%}.proposal .num{font-size:9px;letter-spacing:.15em;color:#6e8f53}.proposal h3{font:600 22px var(--display);margin:25px 0 10px}.proposal p{font-size:12px;line-height:1.8;color:#71786d;margin:0 0 22px}.proposal a{margin-top:auto;color:#426c25;font-size:11px;font-weight:700}.notice{margin-top:22px;background:#edf3e7;border-left:3px solid var(--green);padding:16px 18px;font-size:12px;line-height:1.7;color:#4c5945}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.step{border-top:1px solid #d8dfd2;padding-top:18px}.step b{font-size:11px;color:#5b8d2d;letter-spacing:.12em}.step h3{font:600 18px var(--display);margin:10px 0}.step p{font-size:12px;line-height:1.8;color:#737a70}.footer{background:var(--dark);color:#e9eee5;padding:28px 6%;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:10px;letter-spacing:.04em}.footer img{width:155px;filter:brightness(0) invert(1);opacity:.85}.footer a{color:var(--neon)}@media(max-width:700px){.top{font-size:8px}.header{padding:15px 5%}.logo img{width:145px}.nav{gap:12px;font-size:10px}.nav a:not(.cta){display:none}.hero{min-height:480px}.hero-inner{padding:60px 7% 45px}.wrap{padding:55px 6%}.section-head{display:block}.proposal-grid{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.footer{align-items:flex-start;flex-direction:column}.footer img{width:130px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* SIGNATURE LUXURY — destination and experience pages */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Montserrat:wght@400;500;600;700&display=swap');
body{background:#f4f0e8;letter-spacing:.01em}.top{background:#101714;color:#d8c39a;font-size:8px;letter-spacing:.22em;text-transform:uppercase}.header{background:#101714;border-color:rgba(216,195,154,.2)}.logo{background:#fff;padding:4px 8px}.nav{font-family:'Montserrat',sans-serif;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#eee5d4}.nav a:hover{color:#d8c39a}.nav .cta{background:#c8b184;color:#141914;border:0}.hero:before{background:linear-gradient(90deg,rgba(8,15,11,.82),rgba(8,15,11,.18)),linear-gradient(0deg,rgba(8,15,11,.56),transparent 65%)}.hero h1{font-family:'Cormorant Garamond',serif;font-size:clamp(54px,7vw,92px);font-weight:500;letter-spacing:-.035em;line-height:.92}.hero h1 em{font-family:'Cormorant Garamond',serif;color:#d8c39a;font-style:italic}.eyebrow{color:#d8c39a;letter-spacing:.23em;text-transform:uppercase;font-size:9px}.hero p{font-size:12px;line-height:2;color:#e5e0d5}.btn{background:#c8b184;color:#161a15;font-size:9px;letter-spacing:.1em;text-transform:uppercase}.btn.secondary{border-color:#c8b184;color:#f1e6d2}.section-head h2{font-family:'Cormorant Garamond',serif;font-size:clamp(38px,5vw,62px);font-weight:500;letter-spacing:-.02em}.section-head h2 em{color:#92784d}.section-head p{color:#69665e;font-size:12px;line-height:2}.proposal-grid{gap:1px;background:#d8cbb5;border:1px solid #d8cbb5}.proposal{background:#f8f4ec;border:0;padding:30px;min-height:250px}.proposal:after{border-color:#d2c09b}.proposal .num{color:#92784d;letter-spacing:.2em}.proposal h3{font-family:'Cormorant Garamond',serif;font-size:29px;font-weight:500}.proposal p,.step p{font-size:11px;line-height:1.95;color:#69665e}.proposal a{color:#806743;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.notice{background:#e9dfce;border-color:#b69a68;color:#514a3d}.step{border-color:#d3c6b1}.step b{color:#92784d;letter-spacing:.16em}.step h3{font-family:'Cormorant Garamond',serif;font-size:25px;font-weight:500}.footer{background:#101714;color:#e7ddca}.footer a{color:#d8c39a}@media(max-width:700px){.nav{background:#101714}.hero h1{font-size:clamp(48px,12vw,70px)}}

/* Responsive detail pages: mobile and tablet */
html,body{max-width:100%;overflow-x:clip}img{max-width:100%}
@media(max-width:900px){.header{padding:16px 5%;gap:14px}.logo{max-width:170px}.nav{gap:10px}.hero-inner{padding-left:6%;padding-right:6%}.wrap{padding-left:6%;padding-right:6%}.proposal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.top{font-size:8px;padding:8px 5%}.top span:last-child{display:none}.header{flex-wrap:wrap;padding:12px 5%}.logo{max-width:150px}.nav{margin-left:auto;gap:6px}.nav a:not(.cta){display:none}.nav .cta{font-size:9px;padding:12px 10px;white-space:nowrap}.hero{min-height:530px}.hero-inner{padding:85px 6% 75px}.hero h1{font-size:clamp(48px,12vw,72px);line-height:1}.hero p{font-size:14px;line-height:1.75}.actions{flex-wrap:wrap;gap:12px}.actions .btn{max-width:100%;text-align:center}.wrap{padding:60px 6%}.section-head{display:block}.section-head h2{font-size:clamp(38px,10vw,58px)}.section-head p{margin-top:20px}.proposal-grid,.steps{grid-template-columns:1fr}.proposal{min-width:0}.footer{display:flex;flex-wrap:wrap;gap:18px;padding:30px 6%}.footer img{max-width:170px}.legal-footer{overflow-wrap:anywhere}}

/* FOCUS28 — logo trasparente su tutte le pagine interne */
.logo{background:transparent!important;padding:0!important;box-shadow:none!important}
.logo img{display:block;background:transparent!important;object-fit:contain}
.footer img{background:transparent!important}

.logo img{content:url("assets/focus28-logo-light.png")}

/* Logo trasparente e layout delle pagine interne */
.header .logo{background:transparent!important;padding:0!important}
.header .logo img{background:transparent!important;filter:none!important;max-width:190px}
.destination-detail-hero{background-position:center;background-size:cover}
.destination-detail-hero:before{background:linear-gradient(90deg,rgba(8,15,11,.82),rgba(8,15,11,.22)),linear-gradient(0deg,rgba(8,15,11,.55),transparent 65%)}
@media(max-width:700px){.header .logo img{width:155px;max-height:58px}}


/* FOCUS28 destination preference filters — responsive */
.destination-filters-panel{max-width:1200px;margin:0 auto;padding:44px clamp(18px,6vw,72px) 12px;background:#f4f0e8;color:#20231f}
.destination-filters-head{display:flex;align-items:center;gap:12px;margin-bottom:20px;font:700 12px/1.3 'Montserrat',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#806743}
.destination-filters-head .filter-symbol{font-size:23px;line-height:1}
.destination-filter-form{display:grid;grid-template-columns:minmax(0,1fr);gap:0;border-top:1px solid #d8cbb5;border-bottom:1px solid #d8cbb5;background:rgba(255,255,255,.48)}
.destination-filter-group{padding:23px clamp(16px,3vw,32px);border-bottom:1px solid #ded5c7;min-width:0}
.destination-filter-group:last-child{border-bottom:0}
.destination-filter-group summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:18px;font:500 clamp(22px,2.2vw,30px)/1.2 'Cormorant Garamond',serif}
.destination-filter-group summary::-webkit-details-marker{display:none}
.destination-filter-group summary:after{content:'⌄';font:400 22px/1 sans-serif;color:#92784d;transition:transform .2s}
.destination-filter-group[open] summary:after{transform:rotate(180deg)}
.destination-filter-options{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;padding-bottom:3px}
.destination-filter-option{display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:9px 15px;border:1px solid #d8cbb5;border-radius:999px;background:#fffaf2;color:#333a30;font:500 13px/1.35 'Montserrat',sans-serif;cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.destination-filter-option:has(input:checked){background:#20271d;border-color:#20271d;color:#f7f2e8}
.destination-filter-option input{appearance:none;width:16px;height:16px;flex:0 0 16px;border:1.5px solid #9b8969;border-radius:4px;margin:0;display:grid;place-items:center}
.destination-filter-option input:checked{background:#c8b184;border-color:#c8b184}
.destination-filter-option input:checked:after{content:'✓';font-size:12px;color:#1b2119;font-weight:700}
.destination-filter-subtitle{width:100%;margin:7px 0 0;color:#776f61;font:700 11px/1.4 'Montserrat',sans-serif;letter-spacing:.08em;text-transform:uppercase}
.destination-filter-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:20px clamp(16px,3vw,32px)}
.destination-filter-note{margin:0;color:#746f65;font-size:11px;line-height:1.7;max-width:470px}
.destination-filter-submit{min-height:48px;padding:0 20px;border:0;background:#c8b184;color:#171b15;font:700 10px/1.3 'Montserrat',sans-serif;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}
.destination-filter-submit:hover{background:#d7c49d}
.destination-filter-reset{border:0;background:transparent;color:#806743;text-decoration:underline;text-underline-offset:4px;font:500 11px 'Montserrat',sans-serif;cursor:pointer;padding:10px 0}
.destination-filter-status{width:100%;margin:0;color:#5b6e48;font-size:12px;line-height:1.6}
@media(min-width:850px){.destination-filter-form{grid-template-columns:1fr 1fr}.destination-filter-group:nth-child(odd){border-right:1px solid #ded5c7}.destination-filter-group:nth-last-child(2){border-bottom:0}.destination-filter-group:last-child{border-bottom:0}}
@media(max-width:600px){.destination-filters-panel{padding:28px 16px 8px}.destination-filters-head{margin-bottom:14px}.destination-filter-group{padding:18px 15px}.destination-filter-options{gap:8px;margin-top:15px}.destination-filter-option{min-height:44px;padding:9px 12px;font-size:12px}.destination-filter-actions{padding:17px 15px;align-items:stretch;flex-direction:column}.destination-filter-submit{width:100%;min-height:50px}.destination-filter-reset{align-self:flex-start}}

