/*
Theme Name: ITALII
Description: ITALII prototype landing with expanding media panels and five native WordPress settings areas.
Version: 1.1.0
Requires at least: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: italii
*/
:root{--background:#fffaf5;--text:#20201e;--accent:#febc9a;--surface:#f0e9df;--dark:#20201e;--heading-font:Arial,Helvetica,sans-serif;--body-font:Arial,Helvetica,sans-serif;--body-size:18px;--heading-scale:1;--heading-weight:600;--body-leading:1.5}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--background);color:var(--text);font-family:var(--body-font);font-size:var(--body-size);line-height:var(--body-leading)}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:.2em}button,input,textarea,select{font:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,.brand,.footer-brand{font-family:var(--heading-font);font-weight:var(--heading-weight);line-height:1.06;letter-spacing:-.045em}h1,h2,h3,p{margin-top:0}h2{font-size:calc(clamp(2rem,4vw,4.5rem)*var(--heading-scale))}h3{font-size:calc(1.6rem*var(--heading-scale))}:focus-visible{outline:3px solid currentColor;outline-offset:6px}.screen-reader-text,.skip-link{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.skip-link:focus{clip-path:none;position:fixed;top:1rem;left:1rem;z-index:100;width:auto;height:auto;padding:1rem;background:white;color:black}.site-header{height:96px;display:flex;justify-content:space-between;align-items:center;padding:0 4vw;background:var(--background);border-bottom:1px solid color-mix(in srgb,var(--text) 18%,transparent);position:relative;z-index:20}.brand{font-size:2.7rem;letter-spacing:-.07em}.custom-logo{max-width:180px;max-height:65px;width:auto}.header-actions{display:flex;gap:2rem;align-items:center}.site-header summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:.65rem;min-height:44px}.site-header summary::-webkit-details-marker{display:none}.status-dot{width:8px;height:8px;border-radius:50%;background:#b02d2d}.status-dot.open{background:#288248;animation:pulse 2s infinite}.hamburger{width:24px;height:12px;border-top:2px solid;border-bottom:2px solid}.today-panel,.navigation-panel{position:absolute;right:4vw;top:calc(100% - 1px);width:min(430px,92vw);padding:2rem;background:var(--background);border:1px solid color-mix(in srgb,var(--text) 18%,transparent);box-shadow:0 15px 35px #00000012}.today-panel h2{font-size:1.15rem;letter-spacing:0}.today-panel dl{margin:0}.today-panel dl div{display:flex;justify-content:space-between;gap:1rem;margin:.45rem 0}.today-panel dd{margin:0}.today-separator{border-top:1px solid #8885;padding-top:1.2rem;margin-top:1.2rem}.menu{list-style:none;padding:0;margin:0}.navigation-panel .menu{display:grid;gap:1rem;font-size:1.5rem}.hero{min-height:calc(100svh - 96px);position:relative;background:var(--accent);display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:7vw 4vw 100px}.hero::before{content:'';position:absolute;width:70vw;height:70vw;right:-30vw;top:10%;border:1px solid #20201e25;border-radius:50%;pointer-events:none}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero.has-image::before{inset:0;width:100%;height:100%;border:0;border-radius:0;background:linear-gradient(180deg,#0004,#0007);z-index:1}.hero.has-image{color:#fff}.hero-content{position:relative;z-index:2;max-width:1100px}.hero h1{font-size:calc(clamp(5rem,17vw,16rem)*var(--heading-scale));margin-bottom:1rem;overflow-wrap:anywhere}.hero p{font-size:clamp(1.2rem,2vw,1.8rem);max-width:650px}.hero-bottom{position:absolute;bottom:2rem;left:4vw;right:4vw;display:flex;justify-content:space-between;z-index:2;border-top:1px solid currentColor;padding-top:1.2rem}.section-wrap{padding:6rem 4vw;max-width:1600px;margin:auto}.destinations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem}.card-image{background:var(--surface);aspect-ratio:4/5;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.destination a:hover img,.event-card a:hover img{transform:scale(1.035)}.card-heading{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-top:1.4rem}.card-heading h2{font-size:calc(clamp(1.7rem,3vw,3.3rem)*var(--heading-scale));margin:0}.card-heading span{font-size:2rem}.destination p{margin:1rem 0 0}.season{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.season-image{aspect-ratio:4/3;background:var(--surface)}.season-image img{width:100%;height:100%;object-fit:cover}.text-link{display:inline-block;border-bottom:1px solid;padding:.5rem 0;min-height:44px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem}.rail-controls{display:flex;gap:.5rem}.rail-controls[hidden]{display:none}.rail-controls button{background:transparent;border:1px solid currentColor;border-radius:50%;width:48px;height:48px;cursor:pointer;color:inherit}.event-rail{display:flex;gap:1.5rem;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:1.5rem}.event-card{flex:0 0 31%;min-width:260px;scroll-snap-align:start}.event-card h3{margin:1.2rem 0 .5rem}.event-card .card-image{aspect-ratio:4/3}.groups{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;background:var(--accent);max-width:none;margin:3rem 0;padding:5rem 4vw}.groups-image{background:var(--surface);aspect-ratio:4/3}.groups-image img{width:100%;height:100%;object-fit:cover}.groups p{max-width:520px}.gallery-strip{display:flex;gap:1rem;overflow:auto;padding:3rem 0 4rem}.gallery-strip img{height:330px;width:auto;max-width:none;flex-shrink:0}.site-footer{background:var(--dark);color:#fff;padding:4rem 4vw 2rem}.footer-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:3rem}.footer-brand{font-size:clamp(3rem,8vw,8rem)}.site-footer h2{font-size:1.2rem;letter-spacing:0}.site-footer .menu{display:grid;gap:.6rem}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff40;margin-top:3rem;padding-top:1.5rem}.content-page{min-height:60vh;max-width:1100px}.content-page h1{font-size:calc(clamp(2.5rem,6vw,6rem)*var(--heading-scale))}.content-page article{margin-bottom:3rem}.content-page article>img{margin-bottom:2rem}.content-page .wp-block-image img{height:auto}.content-page a{text-decoration:underline}.content-page .alignwide{max-width:100%}.content-page .alignfull{max-width:100%}.content-page iframe{max-width:100%} @keyframes pulse{50%{box-shadow:0 0 0 5px #28824825}}
@media(max-width:760px){.site-header{height:76px}.brand{font-size:2rem}.header-actions{gap:1.2rem}.hero{min-height:calc(100svh - 76px);padding-top:4rem}.hero h1{font-size:calc(clamp(4rem,20vw,8rem)*var(--heading-scale))}.hero-bottom{font-size:.9rem}.section-wrap{padding:3rem 5vw}.destinations{grid-template-columns:1fr;gap:2.5rem}.destination .card-image{aspect-ratio:4/3}.card-heading h2{font-size:calc(2.3rem*var(--heading-scale))}.season,.groups{grid-template-columns:1fr;gap:2rem}.groups{padding:3rem 5vw}.event-card{flex-basis:83%;min-width:0}.gallery-strip img{height:220px}.footer-top{grid-template-columns:1fr;gap:2rem}.site-footer{padding:3rem 5vw 2rem}.today-panel,.navigation-panel{right:4vw}.content-page{overflow-wrap:anywhere}.admin-bar .site-header{margin-top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

.global-footer{background:var(--footer-background,var(--background))!important;color:var(--text);border-top:1px solid #727965}
.global-footer .group-brands{display:flex;align-items:center;gap:7vw;padding-block:38px;border-bottom:1px solid #707961}
.global-footer .group-logo{width:160px;height:80px;object-fit:contain}
.global-footer .group-venues{display:flex;align-items:center;justify-content:space-around;gap:35px;flex:1;border-left:1px solid #707961;padding-left:6vw}
.global-footer .group-venues a,.global-footer .group-venues>span{min-height:95px;display:flex;align-items:center;justify-content:center}
.global-footer .group-venues img{max-width:145px;max-height:90px;object-fit:contain}
.global-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:clamp(28px,5vw,85px);padding-block:60px}
.global-contact{display:flex;flex-direction:column;align-items:flex-start;gap:6px;scroll-margin-top:25px}
.global-contact .wordmark{font-size:64px;margin-bottom:22px;color:var(--text)}
.global-contact p{font-size:16px;margin-bottom:14px}
.global-contact>a:not(.wordmark){font-size:14px;min-height:32px;display:flex;align-items:center}
.global-contact .footer-map{margin-top:12px;border-bottom:1px solid #7f876f}
.global-footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.global-footer-links h2{font-family:var(--body-font);font-size:14px;font-weight:500;letter-spacing:0;line-height:1.5;color:#bbc3ac;margin:0 0 15px}
.global-footer-links a{font-size:16px;line-height:1.5;min-height:34px;display:flex;align-items:center}
.global-footer a:hover{color:#dfb798}
.global-footer-bottom{border-top:1px solid #707961;display:flex;justify-content:space-between;align-items:center;gap:25px;padding-block:22px;font-size:14px}
.global-footer-bottom a{min-height:36px;display:flex;align-items:center}
@media(max-width:900px){.global-footer-grid{grid-template-columns:1fr 1fr;gap:40px}.global-footer .group-brands{gap:30px}.global-footer .group-venues{gap:22px;padding-left:30px}.global-footer .group-logo{width:130px}}
@media(max-width:560px){body .menu-panel{top:72px;max-height:calc(100svh - 72px)}body .restaurant-hero{height:70svh}.global-footer .group-brands{display:block;padding-block:30px}.global-footer .group-logo{height:60px;width:125px;margin-bottom:25px}.global-footer .group-venues{border-left:0;border-top:1px solid #707961;padding:25px 0 0;gap:22px}.global-footer .group-venues img{max-width:88px;height:70px}.global-footer .group-venues a,.global-footer .group-venues>span{min-height:70px}.global-footer-grid{grid-template-columns:1fr 1fr;gap:35px 25px;padding-block:40px}.global-contact{grid-column:1/-1}.global-contact .wordmark{font-size:52px}.global-footer-links a{font-size:14px;min-height:38px}.global-footer-links h2{margin-bottom:10px}}
@media(min-width:561px) and (max-width:720px){body .menu-panel{top:72px;max-height:calc(100svh - 72px)}}

.global-footer{background:var(--background)!important;color:var(--text);border-color:#171a143b}.global-contact .wordmark{color:var(--text)}.global-footer .group-brands{background:var(--dark);color:#f1eee5;max-width:none}.global-footer .wrap{padding-inline:clamp(22px,4.6vw,76px);margin-inline:auto}.global-footer .wordmark{font-family:var(--heading-font);font-weight:600;letter-spacing:-.08em;line-height:.84}.global-footer .menu{display:grid;gap:6px}.global-footer-links h2{color:var(--text);opacity:.65}.global-footer-bottom{border-color:#171a143b}.global-footer .group-venues img{width:auto}.global-footer .group-logo{object-fit:contain}
