:root{--green:#75ad3b;--green-dark:#5c8f2d;--ink:#242624;--muted:#777b76;--paper:#f7f8f5;--line:#e2e5df;--dark:#171a17;--font:'DM Sans',sans-serif;--display:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.topline{height:34px;background:var(--dark);color:#c4c8c0;display:flex;align-items:center;justify-content:space-between;padding:0 5.8%;font-size:9px;letter-spacing:.17em}.site-header{height:96px;padding:0 5.8%;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.97);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(0,0,0,.05)}.brand{display:flex;align-items:center;width:220px}.brand img{display:block;width:116%;height:auto;max-height:74px;object-fit:contain;margin-left:-8%}.main-nav{display:flex;align-items:center;gap:35px;font-size:12px;font-weight:600}.main-nav>a:not(.nav-cta){transition:color .2s}.main-nav>a:hover{color:var(--green-dark)}.nav-cta{padding:14px 18px;border:1px solid #dce1d6}.nav-cta span,.button span,.text-link span{margin-left:12px;color:var(--green)}.menu-toggle{display:none}.hero{min-height:650px;height:min(76vw,760px);position:relative;display:flex;align-items:center;overflow:hidden;background:#233229;color:#fff}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:center 55%;animation:slowzoom 18s ease-in-out infinite alternate}.hero-shade{background:linear-gradient(90deg,rgba(10,19,13,.76) 0%,rgba(10,19,13,.43) 47%,rgba(10,19,13,.06) 100%),linear-gradient(0deg,rgba(8,13,9,.42),transparent 30%)}.hero-content{position:relative;z-index:1;margin-left:11.5%;max-width:670px;padding:70px 0 95px}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:700;color:var(--green-dark);margin:0 0 25px}.eyebrow.light{color:#d4e8bf}.eyebrow span{display:inline-block;width:25px;height:2px;background:var(--green);vertical-align:middle;margin-right:10px}.hero h1,.intro h2,.section-heading h2,.experience h2,.contact h2{font-family:var(--display);font-size:clamp(40px,5.4vw,76px);line-height:1.08;letter-spacing:-.055em;font-weight:500;margin:0}.hero h1 em,.intro h2 em,.experience h2 em,.contact h2 em,blockquote em{font-family:Georgia,serif;font-weight:400}.hero h1 em{color:#c6e3a8}.hero-copy{font-size:15px;line-height:1.8;max-width:470px;color:#e2e6df;margin:27px 0 34px}.button{min-height:52px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:20px;font-size:11px;letter-spacing:.04em;font-weight:700;border:0;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-green{background:var(--green);color:#10150d}.button-green:hover{background:#8bc64c}.button-green span{color:#182212}.hero-bottom{position:absolute;z-index:1;bottom:24px;left:5.8%;right:5.8%;display:flex;justify-content:space-between;color:#e2e5df;font-size:9px;letter-spacing:.16em}.section-wrap{padding-left:11.5%;padding-right:11.5%}.intro{display:grid;grid-template-columns:.65fr 1.8fr 1fr;gap:36px;padding-top:130px;padding-bottom:130px;align-items:start}.intro-label{display:flex;flex-direction:column;gap:16px;font-size:9px;letter-spacing:.16em;color:#737970;padding-top:5px}.section-number{font-family:var(--display);font-size:24px;color:var(--green)}.intro-main .eyebrow{margin-bottom:22px}.intro h2{font-size:clamp(34px,3.7vw,51px);line-height:1.19}.intro h2 em{color:var(--green-dark)}.intro-text{padding-top:42px}.intro-text p,.section-heading>p,.contact-intro>p:not(.eyebrow){font-size:13px;line-height:1.9;color:#70756e}.text-link{display:inline-block;margin-top:17px;font-size:11px;font-weight:700;border-bottom:1px solid #cdd4c5;padding-bottom:10px}.destinations{padding-top:85px;padding-bottom:115px;background:#fff}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:42px}.section-heading .eyebrow{margin-bottom:18px}.section-heading h2{font-size:clamp(35px,4.2vw,55px)}.section-heading>p{max-width:350px;margin:0 0 5px}.destination-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;grid-template-rows:290px 290px;gap:16px}.destination-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:22px;color:white;overflow:hidden;background:#354439}.destination-card:before{content:"";position:absolute;inset:0;background-image:linear-gradient(0deg,rgba(6,12,7,.76),rgba(6,12,7,.04) 75%),var(--card-image);background-position:center;background-size:cover;transition:transform .6s}.destination-card:hover:before{transform:scale(1.055)}.destination-card>*{position:relative;z-index:1}.destination-card.card-large{grid-row:span 2}.card-index{font-size:9px;letter-spacing:.15em;color:#e3e9df}.destination-card h3{font-family:var(--display);font-size:clamp(25px,2.7vw,37px);line-height:1.1;font-weight:500;letter-spacing:-.04em;margin:0 0 16px}.card-link{font-size:10px;letter-spacing:.03em;color:#d9e9cc}.grid-note{font-size:10px;color:#8b9088;margin:19px 0 0}.experience{display:grid;grid-template-columns:1fr 1fr;min-height:660px;background:var(--dark);color:#fff}.experience-image{min-height:550px}.experience-image img{width:100%;height:100%;object-fit:cover;display:block}.experience-copy{padding:95px clamp(45px,8vw,130px) 85px 9%;align-self:center}.experience-copy .eyebrow{margin-bottom:22px}.experience h2{font-size:clamp(42px,4.7vw,64px)}.experience h2 em{color:#c6e3a8}.experience-copy>p:not(.eyebrow){color:#b9beb7;font-size:13px;line-height:1.9;max-width:470px;margin:25px 0 28px}.service-list{list-style:none;padding:0;margin:0 0 35px;max-width:460px}.service-list li{border-top:1px solid #3a403a;padding:15px 0;font-size:12px;color:#e7eae5}.service-list li:last-child{border-bottom:1px solid #3a403a}.service-list span{color:var(--green);font-size:10px;margin-right:20px}.button-outline{border:1px solid #626b5f;color:#fff}.button-outline span{color:#b4d893}.quote-band{text-align:center;padding:100px 20px 95px;background:#edf1e8}.quote-band>p{font-family:Georgia,serif;font-size:65px;line-height:.5;color:var(--green);margin:0 0 22px}.quote-band blockquote{font-family:var(--display);font-size:clamp(27px,3.5vw,44px);line-height:1.25;letter-spacing:-.04em;margin:0 0 28px}.quote-band blockquote em{color:var(--green-dark)}.quote-band>span{font-size:9px;letter-spacing:.19em;color:#777d73}.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;padding-top:120px;padding-bottom:125px}.contact h2{font-size:clamp(38px,4.5vw,60px)}.contact h2 em{color:var(--green-dark)}.contact-intro>p:not(.eyebrow){max-width:400px;margin-top:25px}.contact-note{display:flex;align-items:center;gap:17px;margin-top:45px;font-size:11px;line-height:1.7;color:#656b63}.note-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid #cfd8c7;border-radius:50%;color:var(--green-dark);font-size:19px}.contact-form{padding-top:5px}.contact-form label{display:block;font-size:10px;font-weight:700;letter-spacing:.04em;margin-bottom:22px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;margin-top:10px;border:0;border-bottom:1px solid #d6dbd2;background:transparent;border-radius:0;padding:12px 0;font:400 12px var(--font);color:var(--ink);outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--green-dark)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#9da29a}.contact-form textarea{resize:vertical}.privacy-check{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important;line-height:1.6;color:#666d64}.privacy-check input{margin-top:3px;accent-color:var(--green-dark)}.privacy-check small{display:block;color:#92978f;font-size:9px;margin-top:4px}.form-submit{min-width:190px}.form-status{font-size:11px;color:var(--green-dark);line-height:1.6}.site-footer{background:var(--dark);color:#e5e8e2;padding:45px 5.8% 22px}.footer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:38px;border-bottom:1px solid #383d37}.footer-brand{width:185px;background:#fff;padding:6px 9px;display:block}.footer-brand img{display:block;width:100%;height:auto}.footer-top>p{font-family:var(--display);font-size:18px;line-height:1.5;color:#d2d8ce}.back-top{font-size:11px;color:#c5d6b8}.footer-bottom{display:flex;justify-content:space-between;gap:15px;padding-top:22px;font-size:9px;letter-spacing:.05em;color:#9da49a}.contact-placeholder{color:#c7e4a9;letter-spacing:.14em}@keyframes slowzoom{from{transform:scale(1)}to{transform:scale(1.06)}}
@media(max-width:900px){.topline{padding:0 4%;}.site-header{height:80px;padding:0 5%}.brand{width:180px}.main-nav{gap:18px;font-size:11px}.nav-cta{padding:12px}.section-wrap{padding-left:7%;padding-right:7%}.intro{grid-template-columns:.5fr 1.5fr;gap:24px;padding-top:90px;padding-bottom:90px}.intro-text{grid-column:2;padding-top:0}.destination-grid{grid-template-rows:250px 250px}.experience-copy{padding:70px 8%}.contact{gap:6%}.footer-bottom{flex-wrap:wrap}}
@media(max-width:650px){.topline{height:29px;font-size:8px;letter-spacing:.1em}.topline span:last-child{display:none}.site-header{height:72px}.brand{width:165px}.menu-toggle{display:flex;flex-direction:column;gap:6px;border:0;background:transparent;padding:12px}.menu-toggle span{display:block;width:25px;height:2px;background:var(--ink)}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:20px 6% 28px;align-items:stretch;flex-direction:column;gap:0;box-shadow:0 14px 22px #00000012}.main-nav.open{display:flex}.main-nav>a{padding:15px 0;border-bottom:1px solid var(--line)}.main-nav .nav-cta{border:0;padding:17px 0 0}.hero{min-height:650px;height:calc(88svh - 100px);max-height:780px}.hero-image{object-position:58% center}.hero-shade{background:linear-gradient(90deg,rgba(9,17,11,.7),rgba(9,17,11,.2)),linear-gradient(0deg,rgba(8,13,9,.55),transparent 55%)}.hero-content{margin:0;padding:60px 7% 90px}.hero h1{font-size:clamp(43px,11vw,64px)}.hero-copy{font-size:13px;max-width:390px}.hero-bottom{left:7%;right:7%;font-size:7px;letter-spacing:.09em}.hero-bottom span:last-child{display:none}.section-wrap{padding-left:7%;padding-right:7%}.intro{display:block;padding-top:75px;padding-bottom:75px}.intro-label{flex-direction:row;align-items:center;margin-bottom:35px}.section-number{font-size:19px}.intro h2{font-size:38px}.intro-text{padding-top:20px}.destinations{padding-top:70px;padding-bottom:75px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:39px}.section-heading>p{margin-top:15px}.destination-grid{grid-template-columns:1fr 1fr;grid-template-rows:300px 230px 230px;gap:10px}.destination-card{padding:16px}.destination-card.card-large{grid-column:span 2;grid-row:auto}.destination-card h3{font-size:29px}.card-index{font-size:8px}.card-link{font-size:9px}.experience{grid-template-columns:1fr}.experience-image{min-height:300px;height:62vw}.experience-copy{padding:65px 7% 75px}.experience h2{font-size:49px}.quote-band{padding:75px 18px}.quote-band blockquote{font-size:30px}.contact{grid-template-columns:1fr;gap:35px;padding-top:75px;padding-bottom:80px}.contact h2{font-size:46px}.contact-note{margin-top:25px}.form-row{grid-template-columns:1fr;gap:0}.contact-form label{margin-bottom:20px}.site-footer{padding:35px 7% 20px}.footer-top{align-items:flex-start;gap:20px;flex-wrap:wrap}.footer-brand{width:160px}.footer-top>p{font-size:15px;order:3;width:100%;margin:0}.back-top{margin-left:auto}.footer-bottom{flex-direction:column;gap:11px}.contact-placeholder{margin-top:3px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* FOCUS28 — destination atlas and futuristic editorial details */
:root{--green:#79b63d;--green-dark:#5b8d2d;--neon:#b7ec77}
.hero{min-height:690px;background:#111912}.hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 78% 48%,rgba(121,182,61,.15),transparent 35%),linear-gradient(115deg,transparent 60%,rgba(0,0,0,.18))}.hero-image{filter:saturate(.82)}.hero-content{max-width:780px}.hero h1{font-size:clamp(48px,6.2vw,88px)}.hero h1 em{color:var(--neon)}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.hero-text-link{font-size:11px;color:#f1f4ee;border-bottom:1px solid #7d8a77;padding:15px 0}.hero-text-link span{color:var(--neon);margin-left:12px}.hero-stats{display:flex;gap:25px;margin-top:48px;color:#d0d7cb;font-size:10px;letter-spacing:.08em}.hero-stats span{display:flex;align-items:center;gap:8px}.hero-stats b{font-size:9px;color:var(--neon);border:1px solid #7b9b5e;border-radius:50%;width:25px;height:25px;display:grid;place-items:center;font-weight:500}.intro{position:relative}.intro:after{content:"F28";position:absolute;right:5%;bottom:16px;font-family:var(--display);font-size:clamp(90px,17vw,230px);font-weight:800;letter-spacing:-.1em;color:rgba(117,173,59,.055);pointer-events:none}.intro-main,.intro-text,.intro-label{position:relative;z-index:1}.section-heading h2 em{font-family:Georgia,serif;color:var(--green-dark);font-weight:400}.destinations{background:#f5f7f2;position:relative;overflow:hidden}.destination-tools{display:flex;flex-direction:column;gap:17px;margin:0 0 25px}.destination-search{display:flex;align-items:center;gap:12px;max-width:430px;border:1px solid #dce2d6;background:#fff;padding:0 15px;height:48px}.destination-search>span{font-size:25px;color:var(--green-dark)}.destination-search input{width:100%;border:0;outline:0;background:transparent;font:400 12px var(--font);color:var(--ink)}.destination-filters{display:flex;gap:8px;flex-wrap:wrap}.filter-chip{padding:10px 15px;border:1px solid #d8dfd1;background:transparent;color:#626b5d;border-radius:30px;font:600 10px var(--font);cursor:pointer;transition:background .2s,color .2s,border-color .2s}.filter-chip:hover,.filter-chip.active{background:#20271d;border-color:#20271d;color:#f4f7ef}.destination-grid-expanded{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(4,260px);gap:14px}.destination-grid-expanded .destination-card{min-height:230px;border:1px solid rgba(255,255,255,.15);isolation:isolate}.destination-grid-expanded .destination-card:before{background-image:linear-gradient(0deg,rgba(4,10,6,.84),rgba(4,10,6,.03) 75%),var(--card-image);filter:saturate(.88);z-index:-1}.destination-grid-expanded .destination-card:after{content:"";position:absolute;inset:10px;border:1px solid rgba(255,255,255,.17);opacity:0;transition:opacity .35s;pointer-events:none}.destination-grid-expanded .destination-card:hover:after{opacity:1}.destination-grid-expanded .destination-card.card-large{grid-row:span 2;grid-column:auto}.destination-grid-expanded .destination-card h3{font-size:clamp(23px,2.3vw,34px)}.destination-grid-expanded .destination-card p{font-size:11px;line-height:1.6;color:#e2e8dc;margin:0 0 15px}.destination-grid-expanded .card-index{color:#d4e9c1}.destination-card[hidden]{display:none}.no-results{padding:30px 0;color:#697163;font-size:13px}.destination-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:26px;border-top:1px solid #dfe4da;padding-top:20px}.destination-footer>span{font-size:9px;letter-spacing:.15em;color:#737c6d}.destination-footer .text-link{margin:0}.collections{padding-top:110px;padding-bottom:120px;background:#fff}.collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.collection-card{position:relative;display:flex;flex-direction:column;min-height:285px;padding:26px 22px;border:1px solid #e0e5dc;background:linear-gradient(145deg,#fff,#f6f8f3);transition:transform .3s,border-color .3s,background .3s;overflow:hidden}.collection-card:after{content:"";position:absolute;right:-30px;top:-35px;width:100px;height:100px;border:1px solid #dce8d1;border-radius:50%;transition:transform .4s}.collection-card:hover{transform:translateY(-5px);border-color:#a8c68d;background:#f8fbf4}.collection-card:hover:after{transform:scale(1.45)}.collection-icon{position:relative;display:block;width:27px;height:27px;box-sizing:border-box;border:1px solid var(--green-dark);border-radius:50%;margin-bottom:23px}.collection-icon:before{content:"";position:absolute;width:5px;height:5px;left:10px;top:10px;border-radius:50%;background:var(--green-dark)}.collection-kicker{font-size:8px;letter-spacing:.16em;color:#7a8571;margin-bottom:12px}.collection-card h3{font-family:var(--display);font-size:23px;letter-spacing:-.04em;font-weight:600;margin:0 0 12px}.collection-card p{font-size:11px;line-height:1.8;color:#737a70;margin:0 0 25px}.collection-arrow{font-size:10px;font-weight:700;margin-top:auto;color:#416a24}.experience{position:relative}.experience-image{overflow:hidden}.experience-image img{transition:transform 1s}.experience:hover .experience-image img{transform:scale(1.025)}.experience-copy{position:relative}.experience-copy:before{content:"";position:absolute;top:12%;right:10%;width:140px;height:140px;border:1px solid rgba(121,182,61,.16);border-radius:50%;pointer-events:none}.button-outline:hover{background:#293326}.quote-band{position:relative;overflow:hidden}.quote-band:before,.quote-band:after{content:"";position:absolute;border:1px solid rgba(91,141,45,.12);border-radius:50%;width:270px;height:270px;top:-160px;left:-80px}.quote-band:after{left:auto;top:auto;right:-100px;bottom:-200px;width:350px;height:350px}.contact{position:relative}.contact-form{background:#fff;padding:32px;border:1px solid #e7ebe3}.site-footer a:hover{color:var(--neon)}.footer-bottom a{font-size:9px;color:#c4cbbf;white-space:nowrap}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:1000px){.destination-grid-expanded{grid-template-rows:repeat(4,230px)}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.destination-grid-expanded .destination-card h3{font-size:27px}}
@media(max-width:650px){.hero{min-height:700px}.hero-content{padding-top:50px}.hero h1{font-size:clamp(45px,11vw,66px)}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-stats{gap:12px;margin-top:33px;flex-wrap:wrap}.hero-stats span{font-size:9px}.destination-grid-expanded{grid-template-columns:1fr 1fr;grid-template-rows:repeat(6,220px);gap:10px}.destination-grid-expanded .destination-card.card-large{grid-row:auto;grid-column:span 2;min-height:260px}.destination-grid-expanded .destination-card{padding:15px}.destination-grid-expanded .destination-card h3{font-size:25px}.destination-grid-expanded .destination-card p{font-size:10px}.destination-footer{align-items:flex-start;flex-direction:column}.collection-grid{grid-template-columns:1fr 1fr;gap:10px}.collection-card{min-height:270px;padding:20px 16px}.collection-card h3{font-size:20px}.collection-card p{font-size:10px}.contact-form{padding:22px 18px}.footer-bottom{align-items:flex-start}.footer-bottom a{font-size:10px}}
@media(max-width:390px){.destination-grid-expanded{grid-template-columns:1fr;grid-template-rows:none}.destination-grid-expanded .destination-card,.destination-grid-expanded .destination-card.card-large{grid-column:auto;min-height:230px}.collection-grid{grid-template-columns:1fr}.collection-card{min-height:230px}.hero-stats{gap:8px}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

/* FOCUS28 FUTURE-LUXURY POLISH */
:root{--focus-neon:#b7f36b;--focus-ink:#101410;--focus-glass:rgba(18,25,20,.72)}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{background:#101410}
.site-header{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:rgba(15,20,16,.88);border-bottom:1px solid rgba(255,255,255,.09)}
.main-nav a{transition:color .25s ease,opacity .25s ease}
.main-nav a:hover{color:var(--focus-neon)}
.nav-cta,.button-green{box-shadow:0 8px 30px rgba(183,243,107,.12);transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.nav-cta:hover,.button-green:hover{transform:translateY(-2px);box-shadow:0 12px 36px rgba(183,243,107,.2)}
.hero{isolation:isolate;overflow:hidden}
.hero-image{transform:scale(1.035);animation:heroDrift 24s ease-in-out infinite alternate;filter:saturate(.86)}
.hero-shade{background:linear-gradient(90deg,rgba(7,13,9,.82) 0%,rgba(7,13,9,.48) 48%,rgba(7,13,9,.1) 100%),linear-gradient(0deg,rgba(7,13,9,.45),transparent 45%)}
.hero h1{letter-spacing:-.055em;text-wrap:balance}
.hero h1 em,.intro h2 em,.section-heading h2 em,.experience-copy h2 em,.contact-intro h2 em{text-shadow:0 0 32px rgba(183,243,107,.12)}
.eyebrow{letter-spacing:.19em}
.destination-card,.collection-card{border:1px solid rgba(255,255,255,.1);isolation:isolate;transition:transform .4s cubic-bezier(.2,.75,.25,1),border-color .3s ease,box-shadow .3s ease}
.destination-card:after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid rgba(183,243,107,0);transition:border-color .3s ease;z-index:2}
.destination-card:hover,.collection-card:hover{transform:translateY(-6px);border-color:rgba(183,243,107,.48);box-shadow:0 22px 50px rgba(0,0,0,.22)}
.destination-card:hover:after{border-color:rgba(183,243,107,.38)}
.destination-card:before{background:linear-gradient(180deg,rgba(7,13,9,.03) 10%,rgba(7,13,9,.22) 45%,rgba(7,13,9,.88) 100%)}
.card-link,.collection-arrow,.text-link{transition:color .2s ease,gap .2s ease}
.destination-card:hover .card-link,.collection-card:hover .collection-arrow{color:var(--focus-neon)}
.filter-chip{transition:all .2s ease}
.filter-chip.active,.filter-chip:hover{border-color:var(--focus-neon)}
.destination-search:focus-within{border-color:var(--focus-neon);box-shadow:0 0 0 3px rgba(183,243,107,.08)}
.experience{border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{outline:1px solid var(--focus-neon);border-color:var(--focus-neon)}
.site-footer{border-top:1px solid rgba(255,255,255,.1)}
@keyframes heroDrift{from{transform:scale(1.035) translate3d(0,0,0)}to{transform:scale(1.11) translate3d(-1.2%,.5%,0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-image{animation:none}*,*:before,*:after{transition:none!important;animation:none!important}}


/* FOCUS28 — SIGNATURE LUXURY ART DIRECTION */
:root{--green:#bca477;--green-dark:#92784d;--neon:#d8c39a;--focus-neon:#d8c39a;--font:'Montserrat',sans-serif;--display:'Cormorant Garamond',serif;--paper:#f4f0e8;--ink:#1c201d;--dark:#101714;--line:#d9d0c1}
body{font-family:var(--font);letter-spacing:.005em}
.topline{background:#101714;color:#d7c7a8;letter-spacing:.22em;font-size:8px}
.site-header{background:rgba(16,23,20,.94);border-bottom:1px solid rgba(216,195,154,.24)}
.main-nav{font-size:10px;letter-spacing:.11em;text-transform:uppercase;font-weight:500;color:#f2eee6}
.main-nav a:hover{color:#d8c39a}
.nav-cta{border:1px solid rgba(216,195,154,.55);color:#e7dcc7!important;padding:15px 19px}
.hero{background:#111713}

.hero-shade{background:linear-gradient(90deg,rgba(9,16,13,.84),rgba(9,16,13,.42) 50%,rgba(9,16,13,.04)),linear-gradient(0deg,rgba(9,16,13,.58),transparent 50%)}
.hero-content{max-width:790px}
.eyebrow{font-family:var(--font);font-size:9px;letter-spacing:.25em;text-transform:uppercase;color:#92784d}
.eyebrow.light{color:#e0d1b2}
.hero h1,.intro h2,.section-heading h2,.experience h2,.contact h2{font-family:var(--display);font-weight:500;letter-spacing:-.035em}
.hero h1{font-size:clamp(60px,8.2vw,116px);line-height:.88;letter-spacing:-.045em}
.hero h1 em,.intro h2 em,.experience h2 em,.contact h2 em,blockquote em{font-family:var(--display);font-style:italic;font-weight:400;color:#d8c39a}
.hero-copy{font-size:13px;line-height:2;letter-spacing:.015em;color:#e3e0d7;max-width:440px}
.button{font-family:var(--font);font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.button-green{background:#c8b184;color:#171b16;box-shadow:none}
.button-green:hover{background:#dfcca5;box-shadow:0 10px 30px rgba(216,195,154,.12)}
.hero-text-link{font-size:9px;letter-spacing:.09em;text-transform:uppercase}
.hero-stats{letter-spacing:.16em;text-transform:uppercase;font-size:8px}
.hero-stats b{color:#d8c39a;border-color:#8d7954}
.hero-bottom{font-size:8px;letter-spacing:.22em;color:#e0d5c0}
.intro{background:#f4f0e8}
.intro:after{content:'F / 28';font-family:var(--display);font-weight:400;font-style:italic;color:rgba(146,120,77,.08);letter-spacing:-.06em}
.intro h2{font-size:clamp(40px,4.6vw,66px);line-height:1.03}
.intro h2 em,.section-heading h2 em{color:#92784d}
.intro-text p,.section-heading>p,.contact-intro>p:not(.eyebrow){font-size:12px;line-height:2;color:#68665e}
.section-number{font-family:var(--display);font-size:30px;font-style:italic;color:#92784d}
.destinations{background:#e9e2d5}
.section-heading h2{font-size:clamp(48px,6vw,78px);line-height:.94}
.destination-search{background:#f8f5ef;border-color:#d0c4ae}
.destination-search>span{color:#92784d}
.filter-chip{border-radius:0;border-color:#c9bda8;color:#5c574e;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.filter-chip.active,.filter-chip:hover{background:#17211b;border-color:#17211b;color:#e4d2ad}
.destination-grid-expanded{gap:12px}
.destination-grid-expanded .destination-card{border:0;min-height:250px}
.destination-grid-expanded .destination-card:before{background-image:linear-gradient(180deg,rgba(7,12,9,.02),rgba(7,12,9,.18) 35%,rgba(7,12,9,.82)),var(--card-image)}
.destination-grid-expanded .destination-card:after{inset:12px;border:1px solid rgba(216,195,154,.0)}
.destination-grid-expanded .destination-card:hover:after{border-color:rgba(216,195,154,.72)}
.destination-grid-expanded .card-index{font-size:8px;letter-spacing:.2em;color:#e0d0ad}
.destination-grid-expanded .destination-card h3{font-family:var(--display);font-weight:500;font-size:clamp(30px,3.3vw,48px);letter-spacing:-.025em}
.destination-grid-expanded .destination-card p{font-size:10px;letter-spacing:.02em;color:#e7e0d3}
.card-link{font-size:8px;letter-spacing:.15em;text-transform:uppercase;color:#dfc99e}
.destination-card:hover .card-link,.collection-card:hover .collection-arrow{color:#f1dbb0}
.destination-footer{border-color:#cfc4b2}
.collections{background:#f4f0e8}
.collection-grid{gap:1px;background:#d6cbb8;border:1px solid #d6cbb8}
.collection-card{border:0;background:#f7f3eb;min-height:310px;padding:30px 25px}
.collection-card:after{border-color:#c9b48c;opacity:.65}
.collection-icon{color:#92784d;font-size:24px}
.collection-kicker{font-size:8px;letter-spacing:.2em;color:#92784d;text-transform:uppercase}
.collection-card h3{font-family:var(--display);font-size:30px;font-weight:500;letter-spacing:-.015em}
.collection-card p{font-size:11px;line-height:1.9;color:#6d6a60}
.collection-arrow{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#806743}
.experience{background:#111915}
.experience-copy{padding-top:110px;padding-bottom:110px}
.experience h2{font-size:clamp(52px,6vw,82px);line-height:.95}
.experience-copy>p:not(.eyebrow){font-size:12px;line-height:2;color:#c7c5b9}
.service-list li{font-size:11px;border-color:#3a4039}
.service-list span{color:#d8c39a}
.button-outline{border-color:#9d8b69;color:#f1e9da}
.quote-band{background:#e6ddce}
.quote-band>p{color:#92784d}
.quote-band blockquote{font-family:var(--display);font-size:clamp(38px,5.3vw,68px);font-weight:400;letter-spacing:-.025em}
.quote-band blockquote em{color:#92784d}
.quote-band>span{font-size:8px;letter-spacing:.22em}
.contact{background:#f4f0e8}
.contact h2{font-size:clamp(52px,6vw,78px);line-height:.95}
.contact-note{color:#69665e;font-size:10px}
.note-icon{border-color:#c9b48c;color:#92784d}
.contact-form{background:#eee7da;border-color:#d9cdb9}
.contact-form label{font-size:9px;letter-spacing:.1em;text-transform:uppercase}
.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{font-family:var(--font);font-size:12px;border-color:#cfc3ae}
.privacy-check{font-size:9px!important}
.form-submit{background:#17211b;color:#e9d8b5}
.site-footer{background:#101714;border-color:rgba(216,195,154,.25)}
.footer-top{border-color:rgba(216,195,154,.22)}
.footer-top>p{font-family:var(--display);font-size:25px;font-weight:400;color:#d9c8a7}
.back-top,.footer-bottom a{color:#d8c39a}
.reveal{transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
@media(max-width:650px){.main-nav{background:#101714}.main-nav>a{border-color:rgba(216,195,154,.18)}.menu-toggle span{background:#e6dcc8}.hero h1{font-size:clamp(54px,13vw,78px)}.destination-grid-expanded .destination-card h3{font-size:31px}.collection-card h3{font-size:25px}.collection-card{padding:22px 16px}.hero-bottom{font-size:7px;letter-spacing:.1em}}

/* Contatti ufficiali e dati societari FOCUS28 */
.contact-direct{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin-top:26px;font-size:12px}.contact-direct a{color:#92784d;border-bottom:1px solid #d8cbb5;padding-bottom:3px}.footer-contact{display:grid;grid-template-columns:1fr 1fr 2fr;gap:24px;padding:24px 0;border-bottom:1px solid #383d37;color:#d8d0c0;font-size:10px;line-height:1.9}.footer-contact div{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.footer-contact strong{font-size:11px;color:#f2e8d5}.footer-contact a{color:#d8c39a}.legal-data{letter-spacing:.02em}@media(max-width:650px){.footer-contact{grid-template-columns:1fr;gap:16px}.contact-direct{margin-top:20px}}

/* FIX IMMAGINI DESTINAZIONI — versione luxury */
.destination-grid-expanded{grid-auto-rows:minmax(250px, 28vw);grid-template-rows:none;align-items:stretch}
.destination-grid-expanded .destination-card{position:relative;display:flex;min-height:260px;height:100%;overflow:hidden;background:#26342b;isolation:isolate}
.destination-grid-expanded .destination-card:before{content:"";position:absolute;inset:0;z-index:0;background-color:#26342b;background-image:linear-gradient(180deg,rgba(8,12,9,.03) 5%,rgba(8,12,9,.12) 38%,rgba(8,12,9,.82) 100%),var(--card-image);background-position:center center;background-repeat:no-repeat;background-size:cover;transition:transform .7s ease}
.destination-grid-expanded .destination-card>*{position:relative;z-index:1}
.destination-grid-expanded .destination-card:hover:before{transform:scale(1.045)}
.destination-grid-expanded .destination-card.card-large{grid-row:span 2;min-height:530px}
.destination-grid-expanded .destination-card h3,.destination-grid-expanded .destination-card p,.destination-grid-expanded .destination-card .card-link{overflow-wrap:anywhere;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.destination-grid-expanded .destination-card:after{z-index:2;pointer-events:none}
@media(max-width:1000px){.destination-grid-expanded{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(230px,34vw)}.destination-grid-expanded .destination-card.card-large{grid-row:span 1;min-height:260px}}
@media(max-width:650px){.destination-grid-expanded{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px;gap:10px}.destination-grid-expanded .destination-card,.destination-grid-expanded .destination-card.card-large{min-height:220px;grid-row:auto;grid-column:auto;padding:16px 13px}.destination-grid-expanded .destination-card h3{font-size:clamp(23px,6vw,31px)}.destination-grid-expanded .destination-card p{font-size:10px}.destination-grid-expanded .card-index{font-size:7px;letter-spacing:.12em}.destination-grid-expanded .card-link{font-size:7px;letter-spacing:.1em}}
@media(max-width:390px){.destination-grid-expanded{grid-template-columns:1fr;grid-auto-rows:235px}.destination-grid-expanded .destination-card,.destination-grid-expanded .destination-card.card-large{min-height:235px}}

/* FOCUS28 luxury refinement: transparent logo on dark surfaces */
.footer-brand{background:transparent!important;padding:0!important;width:220px!important}
.footer-brand img{width:100%;height:auto;object-fit:contain}
.topline{color:#d8c39a}
.hero h1 em{color:#d8c39a!important}

/* FOCUS28 · Mobile / Tablet responsive upgrade */
html,body{max-width:100%;overflow-x:clip}img{max-width:100%} .section-wrap{min-width:0}
@media(max-width:1100px){.section-wrap{padding-left:6%;padding-right:6%}.site-header{padding-inline:5%}.main-nav{gap:15px}.hero-content{margin-left:7%;margin-right:7%}.intro{gap:22px}.contact{gap:5%}.footer-contact{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.site-header{height:78px}.brand{width:170px}.hero{height:auto;min-height:640px}.hero-content{padding:100px 0 115px;max-width:600px}.hero h1{font-size:clamp(60px,9vw,95px)}.intro{grid-template-columns:1fr 2fr;padding-top:85px;padding-bottom:85px}.intro-text{grid-column:2;padding-top:0}.section-heading{gap:25px}.experience{grid-template-columns:1fr 1fr;min-height:unset}.experience-image{min-height:470px}.experience-copy{padding:55px 7%}.contact{padding-top:80px;padding-bottom:80px}.destination-grid-expanded{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:340px}.destination-grid-expanded .destination-card.card-large{grid-row:auto;min-height:340px}}
@media(max-width:650px){.topline{padding:0 5%;font-size:7px}.topline span:last-child{display:none}.site-header{height:70px;padding-inline:5%}.brand{width:155px}.hero{min-height:640px;height:auto}.hero-image{object-position:65% center}.hero-shade{background:linear-gradient(90deg,rgba(10,17,13,.82),rgba(10,17,13,.32)),linear-gradient(0deg,rgba(10,17,13,.45),transparent 55%)}.hero-content{margin:0;padding:95px 7% 125px;max-width:100%}.hero h1{font-size:clamp(53px,12.2vw,78px);line-height:.94;overflow-wrap:normal}.hero-copy{font-size:13px;line-height:1.75;max-width:35ch}.hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:16px}.hero-actions .button{width:100%;max-width:360px}.hero-bottom{left:7%;right:7%;font-size:7px}.hero-bottom span:last-child{display:none}.section-wrap{padding-left:6%;padding-right:6%}.intro{display:block;padding-top:70px;padding-bottom:70px}.intro-label{margin-bottom:25px}.intro-text{padding-top:18px}.intro:after{display:none}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:clamp(44px,11vw,65px)}.section-heading>p{margin-top:20px}.destinations{padding-top:65px;padding-bottom:75px}.destination-grid-expanded{grid-template-columns:1fr;grid-auto-rows:370px;gap:14px}.destination-grid-expanded .destination-card,.destination-grid-expanded .destination-card.card-large{min-height:370px;height:370px;padding:24px;grid-column:auto;grid-row:auto}.destination-grid-expanded .destination-card h3{font-size:clamp(34px,9vw,46px)}.destination-grid-expanded .card-index{font-size:9px}.destination-grid-expanded .card-link{font-size:9px}.collection-grid{grid-template-columns:1fr}.collection-card{min-height:260px}.experience{display:flex;flex-direction:column}.experience-image{min-height:320px;height:320px}.experience-copy{padding:60px 7%}.experience h2{font-size:clamp(49px,12vw,70px)}.quote-band{padding:65px 7%}.contact{display:block;padding-top:70px;padding-bottom:75px}.contact h2{font-size:clamp(48px,12vw,70px)}.contact-form{margin-top:35px;padding:25px 20px}.form-row{grid-template-columns:1fr;gap:0}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{font-size:16px}.footer-top{gap:25px;align-items:flex-start;flex-wrap:wrap}.footer-contact{grid-template-columns:1fr}.footer-brand{max-width:180px}.footer-bottom{flex-wrap:wrap;gap:12px}.destination-search{width:100%;max-width:100%}.filter-row{display:flex;flex-wrap:wrap;gap:8px}}
@media(max-width:375px){.hero h1{font-size:49px}.hero-content{padding-top:75px}.destination-grid-expanded{grid-auto-rows:320px}.destination-grid-expanded .destination-card,.destination-grid-expanded .destination-card.card-large{min-height:320px;height:320px}.hero-bottom{display:none}}
@media(prefers-reduced-motion:reduce){.hero-image{animation:none!important}.destination-card:before{transition:none!important}}

/* FOCUS28 — destinazioni in card a riquadri, con filtri geografici */
.destination-grid-expanded{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:260px;gap:14px}
.geo-area{margin:0 0 38px}
.geo-area:last-child{margin-bottom:0}
.geo-area-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;border-bottom:1px solid #dfe4da;padding:0 0 13px;margin-bottom:14px}
.geo-area-heading>span{font-size:10px;letter-spacing:.18em;font-weight:700;color:var(--green-dark)}
.geo-area-heading p{margin:0;color:#737a70;font-size:11px;line-height:1.6}
.geo-area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(240px,260px);gap:14px}
.geo-area-grid .destination-card,.geo-area-grid .destination-card.card-large{grid-row:auto;grid-column:auto;min-height:240px}
.geo-area[hidden]{display:none!important}
@media(max-width:1000px){.geo-area-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(230px,245px)}}
@media(max-width:650px){.geo-area{margin-bottom:30px}.geo-area-heading{display:block}.geo-area-heading p{margin-top:7px}.geo-area-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(210px,220px);gap:10px}.geo-area-grid .destination-card{padding:15px}.geo-area-grid .destination-card h3{font-size:24px}.geo-area-grid .destination-card p{font-size:10px}.geo-area-grid .destination-card.card-large{grid-column:auto;grid-row:auto;min-height:210px}}
@media(max-width:390px){.geo-area-grid{grid-template-columns:1fr;grid-auto-rows:auto}.geo-area-grid .destination-card,.geo-area-grid .destination-card.card-large{min-height:230px}}

/* Filtri geografici: griglia piatta senza sezioni separate e senza righe vuote */
.destination-grid-expanded{grid-template-rows:none!important;grid-auto-rows:260px}
.destination-grid-expanded .destination-card.card-large{grid-row:auto!important;grid-column:auto!important;min-height:250px}
@media(max-width:650px){.destination-grid-expanded{grid-template-rows:none!important;grid-auto-rows:220px}.destination-grid-expanded .destination-card.card-large{grid-column:auto!important;min-height:220px}}
@media(max-width:390px){.destination-grid-expanded{grid-template-columns:1fr;grid-auto-rows:230px}.destination-grid-expanded .destination-card,.destination-grid-expanded .destination-card.card-large{grid-column:auto;min-height:230px}}

/* Final layout: destination cards remain individual tiles at every viewport */
.destination-grid-expanded{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:260px!important;grid-template-rows:none!important;gap:14px!important;align-items:stretch}
.destination-grid-expanded>.destination-card,
.destination-grid-expanded>.destination-card.card-large{grid-row:auto!important;grid-column:auto!important;min-height:250px!important;height:100%}
@media(max-width:1000px){
  .destination-grid-expanded{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:245px!important}
}
@media(max-width:650px){
  .destination-grid-expanded{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:220px!important;gap:10px!important}
  .destination-grid-expanded>.destination-card,
  .destination-grid-expanded>.destination-card.card-large{grid-row:auto!important;grid-column:auto!important;min-height:220px!important;padding:15px 13px}
}
@media(max-width:390px){
  .destination-grid-expanded{grid-template-columns:1fr!important;grid-auto-rows:230px!important}
  .destination-grid-expanded>.destination-card,
  .destination-grid-expanded>.destination-card.card-large{min-height:230px!important}
}

/* Hero dinamico con dissolvenza tra destinazioni */
.hero-image{transition:opacity 1.25s ease;will-change:opacity}.hero-image-current{z-index:0}.hero-image-next{z-index:0;opacity:0;animation:none!important;transform:scale(1.035)}.hero-image-next.is-active{opacity:1}.hero-image-current.is-under{opacity:0}
.nav-cta{font:600 12px var(--font);cursor:pointer;background:transparent;color:inherit;display:inline-flex;align-items:center;gap:8px}
/* Pannello Parla con noi */
.contact-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:stretch;justify-content:flex-end}.contact-modal.is-open{display:flex}.contact-modal-backdrop{position:absolute;inset:0;border:0;background:rgba(8,13,10,.6);backdrop-filter:blur(4px);cursor:pointer}.contact-modal-panel{position:relative;z-index:1;width:min(720px,100%);height:100%;overflow-y:auto;background:#fff;color:#303230;padding:30px clamp(24px,5vw,56px) 48px;box-shadow:-20px 0 70px rgba(0,0,0,.18);animation:modalSlide .3s ease-out}.contact-modal-close{display:flex;align-items:center;gap:12px;margin-left:auto;border:0;background:none;color:#183b63;font:600 14px var(--font);cursor:pointer}.contact-modal-close b{font-size:36px;line-height:.7;font-weight:300}.contact-modal-panel h2{font-family:Georgia,serif;font-weight:400;text-align:center;font-size:clamp(36px,5vw,48px);margin:46px 0 38px}.contact-modal-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:30px;border-bottom:4px solid #193a61}.contact-modal-intro strong{font-size:20px}.contact-modal-intro p,.contact-modal-card>p{font-size:15px;line-height:1.55;color:#5b5e5b;margin:8px 0 0}.modal-pill{flex-shrink:0;background:#eaf0fa;padding:17px 20px;border-radius:12px;font-size:13px;font-weight:700;color:#183b63}.modal-pill span{margin-left:8px}.contact-modal-card{padding:32px 0 34px;border-bottom:4px solid #193a61}.modal-icon{font-size:38px;color:#183b63;margin-bottom:24px}.contact-modal-card h3{font-size:clamp(20px,2.5vw,26px);font-weight:700;color:#183b63;margin:0}.modal-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.modal-action{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 19px;border:2px solid #193a61;border-radius:12px;color:#183b63;font-size:15px;font-weight:700;transition:background .2s,color .2s}.modal-action:hover{background:#193a61;color:#fff}.modal-action.modal-whatsapp{border-color:#2b7653;color:#216746}.modal-action.modal-whatsapp:hover{background:#216746;color:#fff}.modal-phone{margin-top:18px!important;font-size:13px!important}.modal-phone a{color:#183b63;font-weight:700}.travel-support{border-bottom:0}.contact-modal-panel h3{letter-spacing:-.02em}.modal-lock{overflow:hidden}@keyframes modalSlide{from{transform:translateX(25px);opacity:.7}to{transform:translateX(0);opacity:1}}
@media(max-width:650px){.site-header .main-nav{gap:14px}.site-header .nav-cta{padding:11px 12px;font-size:10px}.contact-modal-panel{padding:22px 22px 36px}.contact-modal-panel h2{margin:35px 0 30px}.contact-modal-intro{align-items:flex-start;flex-direction:column}.modal-pill{padding:14px 16px}.contact-modal-card{padding:26px 0}.modal-actions{gap:9px}.modal-action{min-height:48px;padding:0 13px;font-size:13px}.contact-modal-card h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.hero-image,.contact-modal-panel{transition:none!important;animation:none!important}}

/* FOCUS28 hero destination slideshow */
.hero-image{opacity:0;transition:opacity 1.25s ease;animation:slowzoom 18s ease-in-out infinite alternate}
.hero-image.is-active{opacity:1}
@media(prefers-reduced-motion:reduce){.hero-image{animation:none;transition:none}}

/* Icone vettoriali pulite nel pannello contatti, senza emoji o glifi di sistema. */
.modal-icon{width:46px;height:46px;margin-bottom:22px;color:#183b63}
.modal-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.modal-action svg{width:19px;height:19px;flex:0 0 19px;margin-right:9px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:650px){.contact-modal-panel{width:100%;max-width:100%;padding-left:22px;padding-right:22px}.modal-action{flex:1 1 135px;min-width:0;white-space:nowrap}.contact-modal-card{min-width:0}.contact-modal-card h3{overflow-wrap:anywhere}}

/* FOCUS28 — sezione metodo senza fotografie: grafica astratta editoriale */
.experience{grid-template-columns:1fr 1fr;align-items:stretch;min-height:690px;background:#111915;overflow:hidden}
.experience-visual{position:relative;isolation:isolate;min-height:620px;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:8%;background:radial-gradient(ellipse at 28% 32%,rgba(88,132,54,.18),transparent 42%),radial-gradient(ellipse at 78% 78%,rgba(216,195,154,.09),transparent 38%),linear-gradient(145deg,#17211b 0%,#101713 62%,#151d17 100%)}
.experience-visual:before{content:"";position:absolute;inset:24px;border:1px solid rgba(216,195,154,.18);z-index:-1}
.experience-visual:after{content:"FOCUS28";position:absolute;left:7%;bottom:8%;font:700 clamp(70px,10vw,150px)/.8 Manrope,sans-serif;letter-spacing:-.09em;color:rgba(235,230,216,.035);white-space:nowrap;z-index:-1}
.visual-orbit{position:absolute;border:1px solid rgba(216,195,154,.2);border-radius:50%;aspect-ratio:1;pointer-events:none}
.visual-orbit-one{width:min(68%,490px);top:8%;left:12%}
.visual-orbit-two{width:min(42%,300px);right:5%;bottom:12%;border-color:rgba(112,170,65,.25)}
.route-art{position:absolute;width:100%;height:100%;inset:0;fill:none;stroke:rgba(216,195,154,.42);stroke-width:1.15;stroke-dasharray:4 9;pointer-events:none}
.route-art circle{fill:#d8c39a;stroke:none}
.visual-caption{position:absolute;top:13%;left:13%;display:flex;align-items:center;gap:13px;color:#d8c39a;font-size:10px;letter-spacing:.24em;font-weight:700}
.visual-caption i{display:block;width:38px;height:1px;background:#9ab66f}
.visual-caption small{font-size:8px;letter-spacing:.18em;color:#a8aa9e;font-weight:500}
.visual-statement{position:relative;margin-top:35px;color:#f0ede5;font:500 clamp(32px,4.1vw,58px)/1.08 'Cormorant Garamond',serif;letter-spacing:-.025em;text-align:center}
.visual-statement em{color:#d8c39a;font-weight:400}
.visual-coordinate{position:absolute;left:13%;bottom:13%;font-size:8px;letter-spacing:.18em;color:#a7aa9d}
.visual-coordinate span{color:#d8c39a;padding:0 8px}
.experience-copy{padding-left:9%;padding-right:9%}
@media(max-width:900px){.experience{grid-template-columns:1fr 1fr}.experience-visual{min-height:500px}.visual-caption{flex-wrap:wrap;max-width:75%}}
@media(max-width:650px){.experience{display:flex;flex-direction:column}.experience-visual{min-height:340px;height:340px;padding:8%}.experience-visual:before{inset:15px}.visual-caption{top:12%;left:9%;gap:8px;font-size:8px}.visual-caption small{width:100%;font-size:7px}.visual-statement{font-size:clamp(31px,8vw,43px);margin-top:25px}.visual-coordinate{left:9%;bottom:11%;font-size:7px}.experience-copy{padding:60px 7%}}

/* Sezione metodo: composizione essenziale, senza decorazioni ridondanti */
.experience-visual-minimal{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;min-height:620px;padding:10%;background:#171a17;}
.experience-visual-minimal:before,.experience-visual-minimal:after{display:none;}
.experience-brand-mark{display:block;width:min(72%,390px);height:auto;object-fit:contain;}
.experience-brand-rule{display:block;width:42px;height:1px;background:#b9a77f;}
.experience-brand-caption{margin:0;color:#b8b9af;font-size:9px;letter-spacing:.2em;text-align:center;line-height:1.8;}
@media(max-width:900px){.experience-visual-minimal{min-height:500px;}}
@media(max-width:650px){.experience-visual-minimal{min-height:300px;height:300px;gap:18px;padding:9%;}.experience-brand-mark{width:min(68%,300px);}.experience-brand-caption{font-size:8px;letter-spacing:.15em;}}

/* Dissolvenza continua: la foto corrente non scompare mai prima che la successiva sia pronta. */
.hero-image-current{opacity:1!important;z-index:0!important;transition:none!important}
.hero-image-next{opacity:0!important;z-index:1!important;transition:opacity 1.35s ease!important}
.hero-image-next.is-active{opacity:1!important}
.hero-image-current.is-under{opacity:1!important}


/* Hero slideshow: immagine a tutto schermo, senza bande laterali. */
.hero{background:#111915!important;background-image:none!important;overflow:hidden}
.hero-image{display:block;object-fit:cover!important;object-position:center center!important;width:100%!important;height:100%!important;max-width:none!important;animation:none!important;transform:none!important;filter:none!important;background:transparent!important}
.hero-image-current{opacity:1!important;z-index:0!important;transition:opacity 1.3s ease!important}
.hero-image-next{opacity:0!important;z-index:1!important;transition:opacity 1.3s ease!important}
.hero-image-next.is-active{opacity:1!important}
.hero-shade{display:none!important}
@media(max-width:650px){.hero-image{object-position:center center!important}}
@media(prefers-reduced-motion:reduce){.hero-image-next{transition:none!important}}

/* Apertura slideshow: la prima immagine è Kyoto, già presente anche come sfondo di sicurezza. */
.hero{background-color:transparent!important;background-image:url('assets/giappone.webp')!important;background-position:center center!important;background-size:cover!important;}
.hero-image-current{opacity:1!important;}

/* FOCUS28 — testo a contrasto invertito in base ai pixel della fotografia.
   Nessun velo o filtro viene applicato alle immagini: il testo cambia
   da chiaro a scuro in modo automatico con mix-blend-mode:difference. */
.hero-shade{display:none!important;background:transparent!important;}
.hero-content .eyebrow,
.hero-content h1,
.hero-content .hero-copy,
.hero-content .hero-text-link,
.hero-content .hero-stats,
.hero-bottom{
  color:#fff!important;
  mix-blend-mode:difference;
  text-shadow:none!important;
}
.hero-content h1 em{color:#d8c08e!important;}
.hero-content .eyebrow span{box-shadow:none!important;}
.hero-content .hero-actions .button{mix-blend-mode:normal!important;}
.hero-content .hero-actions .button span{mix-blend-mode:normal!important;}

/* FOCUS28 — sfondo uniforme nella sezione Il metodo.
   La colonna del marchio usa lo stesso verde scuro della colonna testo. */
.experience{background:#111915!important;}
.experience-visual-minimal{background:#111915!important;}
.experience-copy{background:#111915!important;}
