/*
Theme Name: I Gelsi di Lucca
Description: Giardino, esperienze e soggiorni. Tema personalizzato con contenuti WordPress.
Version: 0.3.4
Requires at least: 6.6
Requires PHP: 8.0
Author: I Gelsi di Lucca
Text Domain: i-gelsi-di-lucca
License: GPL-2.0-or-later
*/

:root{--ink:#233228;--paper:#faf8f1;--line:#d9dacf;--wine:#6b293a;--muted:#5d645d;--gold:#b59c62}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}button,a{cursor:pointer}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(48px,5.6vw,88px);line-height:1.06;letter-spacing:-.045em}h2{font-size:clamp(36px,4vw,58px);line-height:1.14;letter-spacing:-.035em}h3{font-size:29px;line-height:1.2}p{max-width:65ch}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:14px;font-weight:600}.muted{color:var(--muted)}.shell{background:#1a241e;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 4vw;font-size:14px}.shell nav{display:flex;gap:6px}.shell button{padding:6px 14px;border:1px solid #627166;background:transparent;color:white;border-radius:4px;font-size:14px}.shell button[aria-pressed=true]{background:var(--paper);color:var(--ink)}.shell small{font-size:13px;color:#c8d0c9}.wrap{max-width:1400px;margin:auto;padding:0 5vw}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:113px;border-bottom:1px solid var(--line)}.brand{font-size:31px;line-height:1.1;text-decoration:none;letter-spacing:-.04em}.brand small{display:block;font:12px/2 system-ui;letter-spacing:.18em;text-transform:uppercase}.site-header nav{display:flex;gap:27px;align-items:center;font-size:15px}.site-header nav a{text-decoration:none}.site-header nav a:hover{text-decoration:underline;text-underline-offset:6px}.button,button.primary{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:var(--paper);padding:13px 23px;border:1px solid var(--ink);border-radius:2px;text-decoration:none;font-size:16px;font-weight:500}.button.outline{background:transparent;color:var(--ink)}button:hover,.button:hover{filter:brightness(1.1)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b68845;outline-offset:4px}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;padding-top:56px;padding-bottom:64px;align-items:center}.hero .eyebrow{margin-bottom:27px}.hero p{font-size:19px;max-width:43ch}.hero figure{margin:0;position:relative}.hero img{width:100%;height:620px;object-fit:cover;border-radius:48% 48% 2px 2px}.hero figcaption{font-size:13px;padding-top:12px;color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.intro-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0;gap:4vw}.intro-grid b{display:block;font:25px/1.4 Georgia}.intro-grid span{font-size:15px;color:var(--muted)}section{scroll-margin-top:25px}.section{padding:90px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:38px}.section-head h2{margin-bottom:0}.section-head p{max-width:42ch;margin:0}.garden{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.garden img{width:100%;height:540px;object-fit:cover}.facts{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:25px 0;font-size:16px}.facts span{border-top:1px solid var(--line);padding-top:12px}.dark{background:var(--ink);color:var(--paper)}.dark p.muted,.dark .muted{color:#c6cfc5}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.exp{padding:29px 27px;border:1px solid #526353;display:flex;flex-direction:column;gap:14px}.exp p{color:#c6cfc5;font-size:16px}.exp small{font-size:14px;letter-spacing:.03em;color:#d0b679}.exp button{align-self:start;background:none;border:0;color:var(--paper);border-bottom:1px solid #c6cfc5;padding:2px 0;font-size:16px;margin-top:auto}.card-number{font:italic 21px Georgia;color:#d0b679}.house{border:1px solid var(--line);padding:30px;position:relative;min-height:280px}.house h3{font-size:37px;margin-top:16px}.house:nth-child(2){background:#f0e5e5}.house:nth-child(3){background:#efeee5}.house p{font-size:16px}.house button{margin-top:12px}.bookbox{background:#e9ede6;padding:30px;margin-top:30px;display:grid;grid-template-columns:1fr 1fr .7fr auto;gap:17px;align-items:end}label{display:block;font-size:15px;font-weight:500}input,select,textarea{display:block;width:100%;border:1px solid #b9c0b7;border-radius:2px;background:white;color:var(--ink);padding:11px;margin-top:7px;min-height:48px}textarea{min-height:100px}.wide-note{grid-column:1/-1;font-size:14px;color:var(--muted);margin:0}.agenda{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:35px 0}.agenda h3{margin-bottom:15px}.gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}.gallery img{width:100%;height:370px;object-fit:cover}.gallery figure{margin:0}.gallery figcaption{font-size:14px;color:var(--muted);padding-top:10px}.partner{background:#eee9de;padding:40px;display:flex;justify-content:space-between;align-items:center;gap:40px}.partner h3{font-size:35px;margin-bottom:14px}.partner p{max-width:65ch;font-size:16px;margin-bottom:0}footer{background:var(--ink);color:var(--paper);padding:46px 0;margin-top:70px}.footer-row{display:flex;justify-content:space-between;gap:35px}.footer-row p{font-size:15px}.footer-note{border-top:1px solid #526353;padding-top:20px;font-size:13px;color:#c6cfc5;margin-top:30px}.hidden,[hidden]{display:none!important}dialog{max-width:650px;width:calc(100% - 32px);border:1px solid var(--line);padding:32px;background:var(--paper);color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#122018b3}.dialog-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.close{background:none;border:1px solid var(--line);padding:6px 12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-note{font-size:14px;color:var(--muted);margin-top:16px}.error{color:#8b1730;font-weight:600}.owner{max-width:1350px;padding:45px 5vw;margin:auto}.owner h1{font-size:50px;letter-spacing:-.03em;margin-bottom:16px}.notice{border-left:4px solid var(--gold);background:#eee9de;padding:18px 22px;margin:25px 0;font-size:16px}.conn{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:25px 0}.conn div{border:1px solid var(--line);padding:18px}.conn b{display:block}.conn span{font-size:14px;color:var(--muted)}.calendar-wrap{overflow-x:auto;border:1px solid var(--line)}table{border-collapse:collapse;width:100%;font-size:14px}th,td{border:1px solid var(--line);padding:9px;text-align:left}#calendar th:first-child,#calendar td:first-child{min-width:155px;position:sticky;left:0;background:var(--paper);z-index:1}#calendar td{min-width:38px;text-align:center}#calendar td.hold{background:#e3cf99;color:#2c331f}#calendar th{font-weight:500}#calendar th small{display:block;font-size:12px}.controls{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:20px 0}.controls h3{margin:0}.controls button{padding:8px 16px;background:white;border:1px solid var(--line)}.owner-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:45px}.panel{border:1px solid var(--line);padding:25px}.panel h3{font-size:29px}.list-item{display:flex;gap:18px;justify-content:space-between;border-top:1px solid var(--line);padding:14px 0;font-size:15px}.list-item button{border:1px solid var(--line);background:white;padding:5px 10px;font-size:14px}.calc-out{font:35px Georgia;margin-top:25px;color:var(--wine)}.plan{max-width:980px;margin:auto;padding:50px 6vw}.plan h1{font-size:56px}.plan h2{font-size:35px;margin-top:48px}.plan h3{font-size:25px}.plan li{margin-bottom:9px}.plan td{vertical-align:top}.plan table{font-size:16px;margin:20px 0}.plan a{overflow-wrap:anywhere}.plan .toc{display:flex;flex-wrap:wrap;gap:10px 22px;padding:22px 0;border-block:1px solid var(--line);font-size:15px}
@media(max-width:950px){.site-header{min-height:95px}.site-header nav{gap:16px;flex-wrap:wrap;justify-content:flex-end}.site-header nav .button{display:none}.hero{gap:5vw}.hero img{height:550px}.cards{gap:14px}.exp,.house{padding:23px}.bookbox{grid-template-columns:1fr 1fr}.conn{grid-template-columns:1fr 1fr}.section-head{align-items:start;flex-direction:column;gap:20px}.owner-grid{grid-template-columns:1fr}}
@media(max-width:650px){.shell{flex-direction:column;align-items:start;padding:10px 5vw}.shell small{display:none}.shell nav{width:100%;justify-content:space-between}.shell button{padding:6px 10px}.site-header{align-items:start;padding:25px 0;gap:14px;flex-direction:column}.site-header nav{gap:20px;font-size:14px}.brand{font-size:28px}.hero{display:flex;flex-direction:column;padding-top:36px;padding-bottom:40px;gap:30px;align-items:stretch}h1{font-size:53px}.hero .eyebrow{margin-bottom:20px}.hero p{font-size:17px}.hero img{height:430px;max-width:500px}.intro-grid{grid-template-columns:1fr;gap:22px}.intro-grid b{font-size:23px}.section{padding:60px 0}.garden{grid-template-columns:1fr;gap:30px}.garden img{height:410px}.cards{grid-template-columns:1fr}.exp h3{margin:0}.house{min-height:0}.bookbox{padding:20px;grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr;gap:14px}.gallery img{height:280px}.gallery figure:last-child{display:none}.agenda{grid-template-columns:1fr;gap:20px}.partner{flex-direction:column;align-items:start;padding:28px}.footer-row{flex-direction:column}.two{grid-template-columns:1fr}.owner{padding-top:35px}.owner h1{font-size:40px}.controls{gap:8px}.controls h3{font-size:23px}.controls button{padding:7px 12px}.conn div{padding:14px}.panel{padding:20px}.plan h1{font-size:44px}.plan table{font-size:14px}.plan td,.plan th{padding:8px}.facts{grid-template-columns:1fr}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media print{.shell,.site-header nav,button,.actions{display:none}.plan{max-width:none;padding:0}body{font-size:12pt}.plan h2{break-after:avoid}table{break-inside:avoid}}

.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:100;background:white;padding:1rem}.site-content{padding-top:55px;padding-bottom:70px;max-width:900px}.site-content img{max-width:100%;height:auto}.site-content .wp-block-image{margin-inline:0}.site-content h1{font-size:clamp(40px,6vw,70px)}.site-header ul{display:flex;gap:22px;list-style:none;padding:0;margin:0;flex-wrap:wrap}.wp-caption{max-width:100%}.igl-checkbox{display:flex;gap:12px;align-items:start}.igl-checkbox input{width:20px;min-height:20px;flex-shrink:0}.igl-feedback{padding:18px;border:1px solid var(--line);margin-bottom:24px}.igl-form{max-width:780px}.igl-honey{position:absolute!important;left:-9999px!important}.menu-toggle{display:none}.empty-dates{font-size:16px}.house .button{margin-top:15px}.exp a{color:inherit}.house:nth-child(n){background:transparent}.house:nth-child(2){background:#f0e5e5}.house:nth-child(3){background:#efeee5}.image-placeholder{min-height:120px;background:#eee9de;display:grid;place-items:center}.igl-setup-note{font-size:15px}.site-content h2{font-size:clamp(30px,4vw,46px)}.site-content h3{font-size:29px}.single-meta{border-block:1px solid var(--line);padding:20px 0;margin:30px 0}.wp-block-button__link{background:var(--ink);color:var(--paper);border-radius:2px}.wp-block-gallery{margin:30px 0}.site-header .sub-menu{display:block}.site-header nav a{overflow-wrap:anywhere}@media(max-width:650px){h1{font-size:clamp(38px,11vw,53px)}.brand small{font-size:12px}.site-header ul{gap:14px}.hero img{height:auto;aspect-ratio:4/5}.site-header{min-width:0}.igl-form .two{grid-template-columns:1fr}.facts{grid-template-columns:1fr}.footer-row{min-width:0}.footer-row a{overflow-wrap:anywhere}}

.exp .button{border-color:#859381;color:var(--paper)}

/* 0.3.2 — fotografia delle dimore e segno di marca */
.house-brand.has-photo{aspect-ratio:4/3;background:#d9d4c8}.house-brand.has-photo img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.house:hover .house-brand.has-photo img{transform:scale(1.035)}.stay-page{padding-bottom:12px}.stay-kicker{margin-bottom:17px;color:var(--muted)}.stay-cover{margin:0 0 37px}.stay-cover img{display:block;width:100%;max-height:680px;object-fit:cover}.stay-page>.wp-block-image:first-of-type{margin-top:28px}.stay-gallery-section{margin-top:68px;padding-top:38px;border-top:1px solid var(--line)}.stay-gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:25px}.stay-gallery-heading h2{margin-bottom:0;font-size:clamp(32px,4vw,52px)}.stay-gallery-heading .eyebrow{margin-bottom:0}.stay-gallery{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.stay-gallery figure{margin:0;overflow:hidden;background:#eee9de}.stay-gallery figure:first-child{grid-row:span 2}.stay-gallery img{display:block;width:100%;height:100%;min-height:245px;object-fit:cover}.stay-gallery figure:first-child img{min-height:506px}.site-header .brand{gap:16px}.site-header .brand-mark{width:62px;height:62px}.site-header .brand-mark img{width:94px;height:94px}.site-header .brand-name{border-left:1px solid #d4c390;padding-left:15px}.footer-row .brand{gap:17px}.footer-row .brand-mark{width:66px;height:66px}.footer-row .brand-mark img{width:100px;height:100px}.footer-row .brand-name{border-left:1px solid #71816f;padding-left:16px}
@media(max-width:650px){.site-header .brand{gap:12px}.site-header .brand-mark{width:51px;height:51px}.site-header .brand-mark img{width:77px;height:77px}.site-header .brand-name{padding-left:12px}.footer-row .brand-mark{width:58px;height:58px}.footer-row .brand-mark img{width:88px;height:88px}.stay-gallery-section{margin-top:48px;padding-top:30px}.stay-gallery-heading{align-items:start;flex-direction:column;gap:10px}.stay-gallery{grid-template-columns:1fr 1fr;gap:10px}.stay-gallery figure:first-child{grid-column:1/-1;grid-row:auto}.stay-gallery figure:first-child img{min-height:340px}.stay-gallery img{min-height:180px}.stay-cover{margin-bottom:28px}}

/* Richieste di prenotazione */
.igl-booking{background:#e9ede6;padding:30px;margin-top:28px}.igl-booking .igl-form{max-width:none}.igl-booking-calendar{margin:22px 0;padding:18px;background:#fff;border:1px solid var(--line)}.igl-calendar-title{font:21px/1.2 Georgia;margin-bottom:15px}.igl-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;max-width:560px}.igl-calendar-grid b,.igl-calendar-grid span{min-height:35px;display:grid;place-items:center;font-size:14px}.igl-calendar-grid b{font-size:12px;color:var(--muted)}.igl-calendar-grid .is-free{background:#deeadf;color:#193224}.igl-calendar-grid .is-busy{background:#ece8df;color:#8b877e;text-decoration:line-through}.igl-price-note{font-weight:600;margin:14px 0;color:#344b38}.single-booking{margin-top:68px;padding-top:38px;border-top:1px solid var(--line)}.single-booking h2{font-size:clamp(31px,4vw,48px);max-width:720px;margin-bottom:0}.single-booking .igl-booking{margin-top:28px}@media(max-width:650px){.igl-booking{padding:20px}.igl-calendar-grid{gap:3px}.igl-calendar-grid b,.igl-calendar-grid span{min-height:32px;font-size:13px}}

/* Dimore della Seta — apartment cards */
.stay-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:26px;padding:0 0 28px;border-bottom:1px solid var(--line);margin-bottom:28px}.stay-intro p{margin:0;max-width:58ch}.stay-intro .eyebrow{margin:0;color:var(--muted);white-space:nowrap}.house{display:flex;flex-direction:column;min-height:100%;padding:0;overflow:hidden;border-color:#c8c6b7;background:#fff!important;transition:transform .25s ease,box-shadow .25s ease}.house:hover{transform:translateY(-5px);box-shadow:0 18px 45px #21322720}.house-brand{background:var(--ink);padding:0;aspect-ratio:1182/665;display:flex;align-items:center;justify-content:center;overflow:hidden}.house-brand img{display:block;width:100%;height:100%;object-fit:cover}.house--rosso .house-brand{background:#8f1708}.house--bianco .house-brand{background:#faf8f1}.house-copy{display:flex;flex:1;flex-direction:column;padding:27px 28px 29px}.house .eyebrow{color:var(--muted);font-size:12px}.house h3{font-size:35px;margin:8px 0 12px}.house h3 a{text-decoration:none}.house p{margin-bottom:18px}.house .house-details{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;margin-bottom:22px}.house .house-details span{font-size:13px;border:1px solid var(--line);padding:5px 8px;border-radius:999px;color:var(--muted)}.house .button{align-self:flex-start;margin-top:0}.house small{font-size:12px;color:var(--muted);margin-bottom:15px}.house--moro .house-copy{background:#1d1e1c;color:#faf8f1}.house--moro .eyebrow,.house--moro small,.house--moro .house-details span{color:#ded8ca}.house--moro .house-details span{border-color:#625f55}.house--moro .button{background:#c0a45f;border-color:#c0a45f;color:#1d1e1c}.house--rosso .house-copy{background:#8f1708;color:#fff8e9}.house--rosso .eyebrow,.house--rosso small,.house--rosso .house-details span{color:#f4d9b4}.house--rosso .house-details span{border-color:#cb8876}.house--rosso .button{background:#e0bc75;border-color:#e0bc75;color:#4f0e07}.house--bianco .house-copy{background:#fffdf8}.house--bianco .button{background:#b59c62;border-color:#b59c62;color:#18251e}.brand{display:inline-flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:46px;height:46px;flex:0 0 auto;overflow:hidden}.brand-mark img{display:block;width:66px;height:66px;object-fit:cover;mix-blend-mode:multiply}.brand-name{display:block}.footer-row .brand{align-items:flex-start}.footer-row .brand-mark{width:52px;height:52px}.footer-row .brand-mark img{width:75px;height:75px}
@media(max-width:650px){.stay-intro{align-items:start;flex-direction:column;gap:12px}.stay-intro .eyebrow{white-space:normal}.house-copy{padding:23px}.house h3{font-size:32px}}
