:root{--pine:#234c3b;--deep:#183a2c;--cream:#f7f5ed;--paper:#fffefa;--ink:#203e30;--muted:#5e6d62;--accent:#ad4829;--wash:#e8eee1;--line:#dce2d5;--gold:#f0c27e;--sans:'Avenir Next','Segoe UI','Trebuchet MS',Arial,sans-serif;--max:1240px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:28px}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}
body.locked{overflow:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:750;line-height:1.1;letter-spacing:-.045em;text-wrap:balance}h1{font-size:clamp(43px,4.8vw,70px)}h2{font-size:clamp(32px,3.5vw,48px)}h3{font-size:27px;letter-spacing:-.035em}p{max-width:65ch}p+p{margin-top:20px}em{color:var(--accent);font-style:normal;font-weight:inherit}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent);outline-offset:5px}::selection{background:#efd0ae;color:var(--deep)}[hidden]{display:none!important}.wrap{width:min(var(--max),calc(100% - 96px));margin-inline:auto}.section{padding-block:88px}.line-icon{width:26px;height:26px;display:inline-block;flex-shrink:0}.eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;line-height:1.5;font-weight:750;letter-spacing:.14em;text-transform:uppercase;margin-bottom:20px;color:var(--accent)}.eyebrow::before{content:'';width:21px;height:3px;border-radius:3px;background:currentColor;flex-shrink:0}.lead{font-size:17px;line-height:1.75;color:var(--muted)}.gold{color:var(--gold)}.muted{color:var(--muted)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:27px}.arrow{font:22px/1 Arial,sans-serif}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:52px;padding:14px 23px;border:1px solid var(--accent);border-radius:10px;background:var(--accent);color:#fff;font-size:13px;font-weight:700;line-height:1.5;transition:background .2s,box-shadow .2s,transform .2s}.btn:hover{background:var(--accent);border-color:var(--accent);filter:brightness(.93);box-shadow:0 7px 18px #713c2024;transform:translateY(-2px)}.btn.light{background:var(--paper);border-color:var(--paper);color:var(--pine)}.btn.light:hover{background:#fff}.btn.outline{color:var(--pine);background:transparent;border-color:var(--pine)}.btn.outline:hover{color:white;background:var(--pine)}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:13px;font-weight:700;border-bottom:1px solid #bdc9b9;padding-block:9px;min-height:44px;transition:color .2s}.text-link:hover{color:var(--accent);border-color:var(--accent)}.skip{position:fixed;left:20px;top:-100px;background:white;color:var(--ink);padding:12px;z-index:100}.skip:focus{top:12px}
/* An open, welcoming header with the original Villaggio Baffa identity. */
.site-header{position:relative;z-index:30;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:43px;height:58px;object-fit:contain}.brand-name{font-size:23px;line-height:1.14;letter-spacing:-.055em;font-weight:800}.brand-sub{display:block;font-size:8px;letter-spacing:.11em;text-transform:uppercase;font-weight:600;margin-top:7px;color:var(--muted)}.nav{display:flex;align-items:center;gap:22px;font-size:12px;font-weight:650}.nav>a,.nav summary{display:block;padding:12px 0;cursor:pointer}.nav>a:not(.nav-contact):hover,.nav a[aria-current=page]{color:var(--accent)}.nav-contact{display:flex!important;align-items:center;gap:18px;padding:12px 20px!important;background:var(--pine);color:white;border-radius:9px}.nav-contact:hover{background:var(--deep)}.nav details{position:relative}.nav summary{list-style:none}.nav summary::-webkit-details-marker{display:none}.nav summary::after{content:'⌄';margin-left:7px}.nav-dropdown{position:absolute;top:45px;left:-20px;width:245px;padding:12px;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 35px #183a2c1c}.nav-dropdown a{display:block;padding:10px 12px;border-radius:7px}.nav-dropdown a:hover{background:var(--wash);color:var(--accent)}.menu-toggle{display:none;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--pine);padding:10px 13px;min-height:44px;font-size:12px;font-weight:750}
/* A short home page: welcome, four experiences, contact. */
.home-hero{position:relative;padding:44px 0 38px;background:radial-gradient(ellipse at 5% 95%,#e6eadb 0,transparent 46%),var(--cream)}.home-hero-grid{display:grid;grid-template-columns:.96fr 1.04fr;gap:45px;align-items:center;min-height:460px}.home-hero .hero-content{padding:12px 0 28px}.home-hero h1{font-size:clamp(45px,4.65vw,67px);letter-spacing:-.055em;line-height:1.07}.home-hero h1 em{display:inline-block;color:var(--pine);position:relative}.home-hero .eyebrow::before{display:none}.home-hero .eyebrow .line-icon{width:23px;height:23px}.home-hero .lead{max-width:40ch;margin-top:22px;font-size:16px}.hero-place{display:flex;align-items:center;gap:8px;margin-top:25px;font-size:10px;font-weight:600;color:var(--muted)}.hero-place .line-icon{width:17px;height:17px}.hero-collage{position:relative;padding:0 0 35px 18px}.hero-main-photo{height:414px;overflow:hidden;border-radius:80px 18px 80px 18px;position:relative;background:var(--wash);box-shadow:0 15px 38px #1f412117}.hero-main-photo .hero-image{width:100%;height:100%;object-fit:cover;object-position:62% 50%}.hero-main-photo::after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#142d2480)}.hero-main-photo figcaption{position:absolute;bottom:25px;left:30px;z-index:1;font-size:12px;font-weight:650;color:white}.hero-season-photo{position:absolute;width:178px;right:-8px;bottom:0;background:white;padding:7px 7px 12px;border-radius:13px;transform:rotate(5deg);box-shadow:0 12px 24px #12342320}.hero-season-photo img{width:100%;height:136px;object-fit:cover;object-position:50% 64%;border-radius:8px}.hero-season-photo figcaption{font-size:9px;font-weight:700;text-align:center;margin-top:7px;color:var(--pine)}.nature-badge{position:absolute;left:-15px;top:25px;display:flex;align-items:center;gap:8px;padding:15px 18px;border-radius:12px;background:#e5ecd9;color:var(--pine);box-shadow:0 5px 15px #193e2314;transform:rotate(-5deg)}.nature-badge span{font-size:10px;line-height:1.3;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.nature-badge .line-icon{width:29px;height:29px}.home-experiences{padding:53px 0 46px;background:var(--paper);border-radius:46px 46px 0 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:31px}.section-heading h2{font-size:clamp(31px,3vw,42px)}.section-heading .eyebrow{margin-bottom:12px}.section-heading p{font-size:13px;color:var(--muted);max-width:330px}.experience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:21px}.experience-card{--card-color:var(--pine);--card-wash:#e9efdf;display:block;background:var(--cream);border:1px solid #e6e8de;border-radius:17px;overflow:hidden;transition:transform .25s,box-shadow .25s}.experience-card:hover{transform:translateY(-5px);box-shadow:0 12px 27px #17332613}.card-food{--card-color:#a04427;--card-wash:#f4e3d7}.card-sport{--card-color:#725320;--card-wash:#f0e8cf}.card-flight{--card-color:#23596c;--card-wash:#e0edf0}.experience-card .image-box{position:relative;height:175px;overflow:hidden;background:var(--wash)}.experience-card .image-box>img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.experience-card:hover .image-box>img{transform:scale(1.04)}.activity-icon{position:absolute;left:16px;bottom:13px;display:grid;place-items:center;width:39px;height:39px;border-radius:10px;background:var(--card-wash);color:var(--card-color)}.activity-icon .line-icon{width:22px;height:22px}.card-copy{padding:19px 20px 13px}.card-kicker{display:block;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--card-color);font-weight:800;margin-bottom:7px}.card-copy h3{font-size:23px;line-height:1.14;min-height:53px}.card-copy p{font-size:12px;line-height:1.6;min-height:39px;color:var(--muted);margin-top:9px}.card-link{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:15px;padding-top:10px;font-size:11px;font-weight:750;color:var(--card-color)}.card-arrow{display:grid;place-items:center;border-radius:50%;background:var(--card-wash);width:30px;height:30px;font:20px Arial,sans-serif}.home-more{display:flex;align-items:center;justify-content:center;gap:35px;margin-top:24px}.home-more .text-link{font-size:12px}
/* A shared visual language, with an accent for each experience. */
.page-ristorante{--accent:#a5462b;--wash:#f2e6db}.page-sport-e-kart{--accent:#8c5420;--wash:#f0ebda}.page-aviosuperficie-franca{--accent:#286176;--wash:#e6eff0}.page-la-sila{--accent:#386441;--wash:#e9eedf}.subhero{padding:36px 0 48px;background:radial-gradient(ellipse at 0 100%,var(--wash),transparent 70%)}.subhero-grid{display:grid;grid-template-columns:.94fr 1.06fr;gap:65px;align-items:center}.subhero .hero-content{padding:17px 0}.breadcrumb{display:flex;gap:10px;align-items:center;font-size:10px;color:var(--muted);margin-bottom:29px;flex-wrap:wrap}.breadcrumb a{text-decoration:underline;text-underline-offset:4px;min-height:30px;display:inline-flex;align-items:center}.subhero .eyebrow{font-size:9px;letter-spacing:.1em}.subhero h1{font-size:clamp(42px,4.6vw,65px)}.subhero .lead{font-size:15px;margin-top:25px;max-width:42ch}.subhero-photo{position:relative;border-radius:18px 80px 18px 18px;overflow:hidden;background:var(--wash);height:448px}.subhero-photo .hero-image{width:100%;height:100%;object-fit:cover}.subhero-photo figcaption{position:absolute;bottom:18px;left:18px;right:18px;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fffefaee;border-radius:8px;color:var(--ink);font-size:11px;font-weight:700;backdrop-filter:blur(5px)}.subhero-photo figcaption span{font-size:21px;line-height:1}.page-aviosuperficie-franca .subhero-photo{aspect-ratio:1;height:auto;border-radius:18px 70px 18px 18px}.page-aviosuperficie-franca .subhero-photo img{aspect-ratio:1;object-fit:contain}.editorial-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:80px;align-items:center}.editorial-grid.reverse .editorial-photo{order:2}.editorial-grid p{font-size:15px;color:var(--muted);margin-top:22px}.editorial-grid .text-link{margin-top:22px}.editorial-photo{position:relative;padding:0 14px 14px 0}.editorial-photo::before{content:'';position:absolute;inset:26px 0 0 27px;background:var(--wash);border-radius:16px;z-index:-1}.editorial-photo img{width:100%;height:465px;object-fit:cover;border-radius:60px 15px 15px 15px}.editorial-grid.reverse .editorial-photo img{border-radius:15px 60px 15px 15px}.editorial-photo figcaption{font-size:9px;margin-top:13px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.page-aviosuperficie-franca .editorial-photo img{height:auto;aspect-ratio:1;object-fit:contain}.band{background:var(--wash);border-radius:65px 0 65px 0;padding-block:65px}.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;margin-top:34px}.info-item{border-radius:17px;background:#fffefac9;padding:28px}.info-item .number{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:var(--wash);font-size:11px;font-weight:800;color:var(--accent)}.info-item h3{font-size:24px;margin:20px 0 13px}.info-item p{font-size:13px;color:var(--muted)}.wide-photo{position:relative;width:min(var(--max),calc(100% - 96px));height:445px;margin:0 auto;border-radius:22px;overflow:hidden;background:var(--wash)}.wide-photo img{width:100%;height:100%;object-fit:cover}.wide-photo::after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#102e26a3)}.wide-photo figcaption{position:absolute;bottom:29px;left:32px;right:32px;z-index:1;font-size:clamp(23px,2.7vw,39px);line-height:1.14;letter-spacing:-.035em;font-weight:750;color:white;max-width:620px;text-wrap:balance}.mini-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px;align-items:center}.mini-gallery img{width:100%;height:290px;object-fit:cover;border-radius:16px}.mini-gallery>.image-button:nth-child(2) img{height:340px}.image-button{position:relative;padding:0;border:0;background:transparent;text-align:left;width:100%;border-radius:16px}.image-button::after{content:'↗';position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:33px;height:33px;background:#fffefae8;color:var(--pine);border-radius:50%;font:21px Arial,sans-serif}.image-button:hover img{filter:brightness(.96)}.gallery-caption{font-size:11px;color:var(--muted);margin-top:17px}.page-links{display:grid;grid-template-columns:1fr 1fr;gap:23px}.page-link{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px;border:1px solid var(--line);background:var(--paper);border-radius:17px}.page-link h3{font-size:26px}.page-link p{font-size:13px;color:var(--muted);margin-top:10px}.page-link>.arrow{display:grid;place-items:center;min-width:42px;height:42px;background:var(--wash);border-radius:50%;color:var(--accent)}.page-link:hover{border-color:var(--accent)}.faq-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.faq-list details{padding:20px 22px;background:var(--paper);border:1px solid var(--line);border-radius:13px;margin-bottom:11px}.faq-list summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;font-size:14px;font-weight:700;line-height:1.6}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';font-size:21px;color:var(--accent);font-weight:400}.faq-list details[open] summary::after{content:'−'}.faq-list details p{font-size:13px;color:var(--muted);margin-top:16px}
/* A clear invitation, then useful contacts. */
.contact-banner{position:relative;background:var(--pine);color:var(--paper);padding:40px 0;overflow:hidden}.contact-banner::before{content:'';position:absolute;right:-70px;top:-140px;width:600px;height:500px;background:repeating-radial-gradient(ellipse at center,transparent 0 35px,#ffffff0c 36px 37px,transparent 38px 54px);transform:rotate(-20deg);pointer-events:none}.contact-banner>.wrap{position:relative;display:flex;align-items:center;justify-content:space-between;gap:35px}.cta-heading{display:flex;align-items:center;gap:24px}.cta-icon{display:grid;place-items:center;width:62px;height:77px;border:1px solid #ffffff35;border-radius:40px 40px 12px 12px;flex-shrink:0;color:#d2ddbf}.cta-icon .line-icon{width:34px;height:34px}.contact-banner h2{font-size:clamp(27px,2.7vw,38px);color:var(--paper)}.contact-banner p{font-size:13px;line-height:1.6;margin-top:10px;color:#d3decf;max-width:55ch}.contact-banner .btn{background:#f1c98d;border-color:#f1c98d;color:#243b2b;flex-shrink:0}.contact-banner .btn:hover{background:#ffe1b6;border-color:#ffe1b6}.site-footer{background:var(--paper);color:var(--ink);padding:48px 0 24px}.footer-top{display:grid;grid-template-columns:1.1fr 1fr 1.15fr;gap:45px}.footer-heading{display:block;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.footer-top h3{font-size:28px}.footer-top p{font-size:12px;color:var(--muted);margin-top:14px}.footer-list{display:grid;gap:5px;font-size:12px}.footer-list a{min-height:28px;overflow-wrap:anywhere}.footer-list a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}.footer-wordmark{display:none}.footer-bottom{display:flex;align-items:start;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:28px;padding-top:20px;font-size:9px;color:var(--muted)}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}.mobile-contact{display:none}
/* Gallery and enquiries keep the same outdoor palette and generous controls. */
.page-title{position:relative;padding:65px 0 44px}.page-title h1{font-size:clamp(43px,5vw,68px)}.page-title p{font-size:16px;margin-top:23px;color:var(--muted)}.gallery-toolbar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:29px}.filter-btn{font-size:12px;font-weight:700;padding:11px 20px;min-height:44px;background:var(--paper);color:var(--pine);border:1px solid var(--line);border-radius:25px}.filter-btn[aria-pressed=true]{background:var(--pine);color:white;border-color:var(--pine)}.filter-btn:hover{border-color:var(--pine)}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.photo-grid figure{min-width:0;background:var(--paper);border:1px solid var(--line);padding:8px 8px 15px;border-radius:19px}.photo-grid img{width:100%;height:310px;object-fit:cover;border-radius:13px}.photo-grid figcaption{font-size:11px;line-height:1.6;color:var(--muted);padding:12px 7px 0}.gallery-count{font-size:12px;color:var(--muted);margin-top:23px}.lightbox{background:var(--deep);color:white;border:0;padding:0;border-radius:18px;width:min(1120px,96vw);max-width:96vw;max-height:94svh;overflow:auto}.lightbox::backdrop{background:#061b19e8;backdrop-filter:blur(5px)}.lightbox-inner{padding:18px}.lightbox img{max-height:73svh;width:100%;object-fit:contain;border-radius:9px}.lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:15px;font-size:12px}.lightbox-controls button,.lightbox-close{min-width:44px;min-height:44px;border:1px solid #ffffff66;border-radius:50%;background:transparent;color:white;font-size:20px;flex-shrink:0}.lightbox-close{position:absolute;right:24px;top:24px;background:#183a2ce8;z-index:2}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;padding-bottom:80px}.contact-method{padding:25px 0;border-top:1px solid var(--line)}.contact-method small{display:block;font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:9px}.contact-method>a{font-size:20px;font-weight:650;overflow-wrap:anywhere;line-height:1.5}.contact-method p{font-size:14px;color:var(--muted)}.contact-method .text-link{font-size:12px;margin-top:10px}.inquiry-form{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:35px}.inquiry-form h2{font-size:31px}.form-note{font-size:12px;color:var(--muted);margin:15px 0 24px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.fields label{display:block;font-size:12px;font-weight:650}.fields .full{grid-column:1/-1}input,select,textarea{width:100%;min-width:0;min-height:49px;border:1px solid #cbd3c6;border-radius:8px;background:#fffefa;color:var(--ink);padding:12px;margin-top:8px;font-size:15px}textarea{resize:vertical;min-height:135px}.checkline{display:flex!important;align-items:start;gap:11px;font-size:11px!important;font-weight:400!important}.checkline input{width:18px;height:18px;min-height:18px;flex-shrink:0;margin:3px 0 0;accent-color:var(--pine)}.checkline a{text-decoration:underline}.form-status{padding:20px;background:var(--wash);border-radius:12px;margin-top:22px;font-size:14px}.form-status p{font-size:13px}.form-status button{border:0;background:none;text-decoration:underline;color:var(--pine);font-size:12px;min-height:44px}.form-status textarea{font-size:12px;margin-top:13px}.location-panel{display:grid;grid-template-columns:1fr 1fr;background:var(--wash)}.location-panel>img{width:100%;height:480px;object-fit:cover}.location-panel>div{padding:55px;display:flex;flex-direction:column;justify-content:center}.location-panel .eyebrow{color:var(--accent)}.location-panel h2{font-size:40px}.location-panel p{font-size:14px;color:var(--muted);margin:20px 0}.location-panel .btn{align-self:flex-start}.legal{max-width:800px;padding-bottom:80px}.legal h2{font-size:29px;margin:35px 0 18px}.legal p{font-size:14px;color:var(--muted)}.legal a{text-decoration:underline}
/* Framing is chosen for each portrait photograph; source content stays intact. */
img[src*="eno-terrazza-2026"]{object-position:50% 72%}img[src*="eno-tavoli-2026"]{object-position:50% 78%}img[src*="maxkart-flotta-2025"],img[src*="maxkart-pista-2025"]{object-position:50% 80%}img[src*="villaggio-neve-2026"]{object-position:50% 78%}.card-flight .image-box>img{object-position:50% 57%}
@media(max-width:1150px){.wrap{width:calc(100% - 64px)}.home-hero-grid{gap:30px}.home-hero h1{font-size:54px}.hero-main-photo{height:397px}.hero-season-photo{width:151px;right:0}.hero-season-photo img{height:120px}.nature-badge{left:-9px;padding:12px}.experience-grid{gap:15px}.card-copy{padding:16px 16px 12px}.card-copy h3{font-size:21px}.experience-card .image-box{height:160px}.subhero-grid{gap:40px}.subhero h1{font-size:53px}.editorial-grid{gap:50px}.wide-photo{width:calc(100% - 64px)}.contact-layout{gap:35px}.footer-top{gap:30px}}
@media(max-width:1060px){.header-inner{height:83px}.menu-toggle{display:block}.nav{position:absolute;top:83px;left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);padding:17px 32px 25px;max-height:calc(100svh - 100px);overflow:auto;box-shadow:0 18px 26px #1c41251a;border-bottom:1px solid var(--line);font-size:14px}.nav.is-open{display:flex}.nav>a,.nav summary{padding:12px 0;min-height:44px}.nav-contact{justify-content:space-between;margin-top:8px}.nav-dropdown{position:static;width:auto;background:var(--wash);padding:8px 10px;box-shadow:none;margin-bottom:10px;border:0}.nav-dropdown a{min-height:44px}.home-hero h1{font-size:49px}.home-hero-grid{gap:28px;min-height:430px}.hero-main-photo{height:375px}.hero-season-photo{width:140px}.hero-season-photo img{height:110px}.home-hero .lead{font-size:15px}.hero-place{font-size:9px}.subhero h1{font-size:48px}.subhero-photo{height:410px}.editorial-photo img{height:425px}.photo-grid{gap:18px}.photo-grid img{height:265px}.contact-method>a{font-size:18px}.inquiry-form{padding:26px}.location-panel>div{padding:40px}.contact-banner .wrap{gap:26px}.cta-icon{display:none}}
@media(max-width:850px){.home-hero-grid{gap:28px;grid-template-columns:1fr 1fr}.home-hero h1{font-size:41px}.home-hero .eyebrow{font-size:9px;letter-spacing:.07em}.hero-main-photo{height:360px;border-radius:50px 15px 50px 15px}.hero-season-photo{width:130px}.nature-badge{top:20px;font-size:8px;padding:10px}.nature-badge .line-icon{width:23px}.nature-badge span{font-size:8px}.hero-place{max-width:200px}.experience-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.experience-card .image-box{height:185px}.card-copy h3{min-height:0;font-size:24px}.card-copy p{min-height:0}.section-heading{align-items:start}.section-heading p{max-width:270px;font-size:12px}.subhero-grid{gap:28px}.subhero h1{font-size:41px}.subhero .lead{font-size:14px}.subhero .eyebrow{font-size:8px}.subhero-photo{height:380px;border-top-right-radius:50px}.editorial-grid{gap:35px}.editorial-photo img{height:390px}.info-grid{gap:15px}.info-item{padding:22px}.info-item h3{font-size:22px}.info-item p{font-size:12px}.faq-wrap{gap:35px}.contact-banner .wrap{align-items:start}.contact-banner .btn{font-size:12px;gap:18px}.contact-banner p{max-width:35ch}.footer-top{grid-template-columns:1fr 1fr;gap:28px}.footer-top>div:first-child{grid-column:1/-1}.footer-top h3{font-size:26px}.footer-top p{margin-top:8px}.contact-layout{grid-template-columns:1fr;gap:25px}.fields{grid-template-columns:1fr 1fr}.location-panel h2{font-size:32px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.photo-grid img{height:300px}.mini-gallery img{height:240px}.mini-gallery>.image-button:nth-child(2) img{height:285px}}
@media(max-width:680px){body{font-size:15px}.wrap{width:calc(100% - 36px)}.section{padding-block:57px}.header-inner{height:77px;gap:12px}.brand{gap:9px}.brand img{width:35px;height:47px}.brand-name{font-size:20px}.brand-sub{font-size:6.5px;letter-spacing:.08em;margin-top:5px}.menu-toggle{font-size:11px;padding:8px 12px}.nav{top:77px;padding:14px 20px 22px;max-height:calc(100svh - 95px)}h2{font-size:34px}h3{font-size:25px}.eyebrow{font-size:9px;letter-spacing:.1em;margin-bottom:16px}.home-hero{padding:26px 0 24px}.home-hero-grid{display:flex;flex-direction:column;gap:20px;min-height:0;align-items:stretch}.home-hero .hero-content{padding:0 3px}.home-hero .eyebrow{font-size:8px;letter-spacing:.08em;gap:7px;margin-bottom:13px}.home-hero .eyebrow .line-icon{width:19px;height:19px}.home-hero h1{font-size:clamp(34px,9.2vw,45px);line-height:1.06;letter-spacing:-.055em}.home-hero .lead{font-size:13px;line-height:1.65;max-width:42ch;margin-top:14px}.home-hero .actions{margin-top:18px}.btn{padding:12px 19px;min-height:48px;font-size:12px;gap:25px}.hero-place{font-size:9px;margin-top:16px;max-width:none}.hero-place .line-icon{width:15px;height:15px}.hero-collage{padding:0 0 12px 0;margin:0 4px}.hero-main-photo{height:226px;border-radius:40px 13px 40px 13px;box-shadow:none}.hero-main-photo .hero-image{object-position:60% 62%}.hero-main-photo figcaption{font-size:10px;bottom:18px;left:20px}.hero-season-photo{width:101px;right:0;bottom:-1px;padding:4px 4px 7px;transform:rotate(4deg);border-radius:9px}.hero-season-photo img{height:84px;border-radius:6px}.hero-season-photo figcaption{display:none}.nature-badge{left:-6px;top:13px;padding:8px 10px;gap:5px;border-radius:8px}.nature-badge span{font-size:7px}.nature-badge .line-icon{width:21px;height:21px}.home-experiences{padding:35px 0 30px;border-radius:30px 30px 0 0}.section-heading{display:block;margin-bottom:24px}.section-heading h2{font-size:32px}.section-heading .eyebrow{margin-bottom:10px}.section-heading p{font-size:12px;max-width:43ch;margin-top:13px}.experience-grid{gap:16px 12px}.experience-card{border-radius:13px}.experience-card .image-box{height:133px}.activity-icon{width:30px;height:30px;left:10px;bottom:9px;border-radius:8px}.activity-icon .line-icon{width:18px;height:18px}.card-copy{padding:13px 12px 10px}.card-kicker{font-size:7px;letter-spacing:.05em;margin-bottom:6px}.card-copy h3{font-size:21px;min-height:47px;letter-spacing:-.04em}.card-copy p{display:none}.card-link{font-size:10px;margin-top:10px;padding-top:7px}.card-arrow{height:25px;width:25px;font-size:17px}.home-more{gap:22px;justify-content:space-between;margin-top:18px}.home-more .text-link{font-size:10px;gap:10px}.home-more .arrow{font-size:18px}.subhero{padding:23px 0 28px}.subhero-grid{display:flex;flex-direction:column;gap:24px;align-items:stretch}.subhero .hero-content{padding:0 3px}.breadcrumb{font-size:9px;margin-bottom:16px}.subhero .eyebrow{font-size:8px;margin-bottom:13px}.subhero h1{font-size:clamp(38px,10.2vw,48px)}.subhero .lead{font-size:13px;margin-top:16px;max-width:43ch}.subhero-photo{height:270px;border-radius:14px 48px 14px 14px}.subhero-photo figcaption{bottom:12px;left:12px;right:12px;font-size:10px;padding:9px 12px}.page-aviosuperficie-franca .subhero-photo{height:auto;aspect-ratio:1;border-radius:14px 48px 14px 14px}.editorial-grid{grid-template-columns:1fr;gap:30px}.editorial-grid.reverse .editorial-photo{order:0}.editorial-photo{padding:0 9px 9px 0}.editorial-photo::before{inset:24px 0 0 20px}.editorial-photo img{height:335px;border-radius:45px 13px 13px 13px}.editorial-grid.reverse .editorial-photo img{border-radius:13px 45px 13px 13px}.editorial-photo figcaption{font-size:8px;margin-top:10px}.editorial-grid p{font-size:14px;margin-top:18px}.editorial-grid .text-link{margin-top:16px}.band{border-radius:35px 0 35px 0;padding-block:43px}.info-grid{grid-template-columns:1fr;gap:13px;margin-top:25px}.info-item{padding:22px;display:grid;grid-template-columns:34px 1fr;column-gap:16px;border-radius:13px}.info-item .number{width:34px;height:34px;grid-column:1;grid-row:1/3;margin-top:1px;font-size:10px}.info-item h3{font-size:23px;margin:2px 0 9px;grid-column:2}.info-item p{font-size:12px;grid-column:2}.wide-photo{width:calc(100% - 36px);height:325px;border-radius:15px}.wide-photo figcaption{font-size:27px;left:21px;right:21px;bottom:23px}.mini-gallery{grid-template-columns:1fr 1fr;gap:12px}.mini-gallery>.image-button:first-child{grid-column:1/-1}.mini-gallery img,.mini-gallery>.image-button:nth-child(2) img{height:212px;border-radius:12px}.mini-gallery>.image-button:first-child img{height:240px}.image-button::after{width:28px;height:28px;font-size:18px}.gallery-caption{font-size:10px}.page-links{grid-template-columns:1fr;gap:13px}.page-link{padding:24px;border-radius:13px}.page-link h3{font-size:24px}.page-link p{font-size:12px}.faq-wrap{grid-template-columns:1fr;gap:24px}.faq-list details{padding:17px 18px}.faq-list summary{font-size:13px}.faq-list details p{font-size:12px}.contact-banner{padding:30px 0}.contact-banner .wrap{display:block}.contact-banner h2{font-size:31px}.contact-banner p{font-size:12px;max-width:42ch;margin-top:10px}.contact-banner .btn{margin-top:20px;font-size:12px}.site-footer{padding:33px 0 calc(88px + env(safe-area-inset-bottom))}.footer-top{gap:24px 20px}.footer-heading{font-size:8px;margin-bottom:11px}.footer-top h3{font-size:26px}.footer-top p{font-size:11px;margin-top:8px}.footer-list{font-size:11px;gap:5px}.footer-list a{min-height:30px;line-height:1.6}.footer-bottom{display:block;font-size:8px;margin-top:24px;padding-top:17px;line-height:1.9}.footer-bottom span{display:block}.mobile-contact{display:grid;position:fixed;bottom:0;left:0;right:0;z-index:40;grid-template-columns:1fr 1.5fr;padding-bottom:env(safe-area-inset-bottom);background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -4px 20px #183a2c0b}.mobile-contact a{display:flex;align-items:center;justify-content:center;gap:14px;height:54px;font-size:11px;font-weight:700}.mobile-contact a:last-child{background:var(--pine);color:white}.page-title{padding:40px 0 29px}.page-title h1{font-size:44px}.page-title p{font-size:14px;margin-top:18px}.gallery-toolbar{gap:7px;margin-bottom:22px}.filter-btn{font-size:10px;padding:10px 15px}.photo-grid{gap:17px 12px}.photo-grid figure{padding:5px 5px 10px;border-radius:13px}.photo-grid img{height:193px;border-radius:9px}.photo-grid figcaption{font-size:9px;padding:8px 5px 0}.lightbox-inner{padding:10px}.lightbox img{max-height:65svh}.lightbox-controls{font-size:10px;gap:9px}.lightbox-close{right:16px;top:16px}.lightbox-controls button,.lightbox-close{min-width:40px;min-height:40px}.contact-layout{padding-bottom:50px}.contact-method>a{font-size:19px}.inquiry-form{padding:25px 20px;border-radius:15px}.inquiry-form h2{font-size:28px}.fields{grid-template-columns:1fr;gap:18px}.fields .full{grid-column:auto}.form-note{font-size:11px}.fields input,.fields textarea,.fields select{font-size:16px}.location-panel{grid-template-columns:1fr}.location-panel>img{height:auto;aspect-ratio:1;object-fit:contain}.location-panel>div{padding:35px 24px}.location-panel h2{font-size:33px}.location-panel p{font-size:13px}.legal{padding-bottom:55px}.legal h2{font-size:26px}.legal p{font-size:13px}}
@media(max-width:370px){.brand-name{font-size:18px}.brand-sub{font-size:6px}.brand img{width:31px;height:43px}.menu-toggle{padding:8px 10px}.home-hero h1{font-size:34px}.card-copy h3{font-size:19px}.card-copy{padding-inline:10px}.card-copy p{font-size:9.5px}.home-more .text-link{gap:7px;font-size:9px}.hero-season-photo{width:90px}.hero-season-photo img{height:74px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
