/*
Theme Name: Green Park San Pancrazio
Theme URI: https://greenparksanpancrazio.it/
Description: Child theme of Hello Elementor for Green Park San Pancrazio.
Template: hello-elementor
Version: 1.0.0
Text Domain: green-park-child
*/

/* ---- Green Park San Pancrazio: helper styles (start) ---- */
/* Logo: the JPG has a white ground, blend it into the warm white */
.gp-logo img{mix-blend-mode:multiply}
/* Headings wrap evenly */
h1,h2,h3,.elementor-heading-title{text-wrap:balance}
.elementor-widget-image{line-height:0}
.elementor-widget-image a{display:block}
/* Text editor spacing */
.elementor .elementor-widget-text-editor p{margin:0 0 14px}
.elementor .elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-text-editor a{text-decoration:underline;text-underline-offset:3px}
.elementor .gp-rich h2{font-family:Gloock,serif;font-weight:400;font-size:28px;line-height:1.18;color:var(--e-global-color-secondary);margin:32px 0 12px}
.elementor .gp-rich h2:first-child{margin-top:0}
.elementor .gp-rich ul{margin:0 0 14px;padding-left:20px}
/* Specification rows (room and event details): hidden while the field is empty */
.elementor .gp-spec,.elementor .gp-spec>.elementor-widget-container{display:flex;justify-content:space-between;align-items:baseline;gap:24px;text-align:right;font-weight:500}
.elementor .gp-spec{padding:12px 0;border-bottom:1px solid var(--e-global-color-line)}
.elementor .gp-spec>.elementor-widget-container{padding:0;border:0;width:100%}
.gp-spec .gp-k{color:var(--e-global-color-muted);font-weight:400;text-align:left;flex:none}
.gp-spec:not(:has(.gp-k)){display:none}
/* Text links */
.gp-link .elementor-button{vertical-align:top}
.gp-link .elementor-button-icon{font-size:.85em;transition:transform .2s}
.gp-link .elementor-button:hover .elementor-button-icon{transform:translateX(4px)}
/* Tag chips */
.gp-chips .elementor-icon-list-item{border:1px solid var(--e-global-color-line);background:#fff;border-radius:40px;padding:8px 13px!important;margin:0 8px 8px 0!important}
.gp-chips .elementor-icon-list-items{margin:0!important}
.gp-chips-dark .elementor-icon-list-item{background:transparent;border-color:var(--e-global-color-linedark)}
.elementor-widget-icon-list.gp-chips .elementor-icon-list-item:after{display:none}
/* Experience cards and index */
.gp-expcard .elementor-heading-title{transition:color .2s}
.gp-expcard:hover h3.elementor-heading-title{color:var(--e-global-color-primary)}
.gp-xpidx{transition:background .2s}
.gp-xpidx:hover{background:var(--e-global-color-beige)}
/* Quick availability bar */
.gp-quick .elementor-field-group .elementor-field-label{margin-bottom:6px}
.gp-quick .elementor-field-textual{min-height:52px}
.gp-avail .gp-quick .elementor-field-group{margin-bottom:0}
.gp-quick .elementor-button{min-height:52px}
@media (min-width:1025px){.gp-avail .gp-quick .e-form__buttons{align-self:flex-end}}
/* Form fields */
.elementor-form .elementor-field-textual{min-height:52px}
.elementor-form textarea.elementor-field-textual{min-height:130px}
.elementor-form .elementor-field-textual:focus{border-color:var(--e-global-color-primary)!important;box-shadow:0 0 0 3px rgba(43,85,72,.15)}
.elementor-field-type-acceptance .elementor-field-option{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start}
.elementor-field-type-acceptance .elementor-field-option input[type=checkbox]{width:22px;height:22px;margin:1px 0 0;accent-color:var(--e-global-color-primary)}
.elementor-widget-form .elementor-field-type-acceptance .elementor-field-option label{font-size:14.5px;font-weight:400;line-height:1.55;color:var(--e-global-color-text)}
.elementor-form .elementor-message{font-size:15px;line-height:1.55;margin-top:14px;padding:14px 16px;border-radius:4px}
.elementor-form .elementor-message.elementor-message-success{background:#E3EEE8;color:#1D4636;border:1px solid #B7D1C3}
.elementor-form .elementor-message.elementor-message-danger:not(.elementor-help-inline){background:#F8E6E2;color:#7E2A21;border:1px solid #E5BDB5}
.elementor-form .elementor-help-inline{font-size:13.5px;color:#A3352B;margin-top:6px;display:block}
/* FAQ toggle */
.gp-faq .elementor-toggle-item{border-bottom:1px solid var(--e-global-color-line)}
.gp-faq .elementor-tab-title{display:flex;justify-content:space-between;align-items:center;gap:24px;border:0!important}
.gp-faq .elementor-toggle-icon{order:2;float:none!important;width:34px!important;height:34px;flex:none;border:1px solid var(--e-global-color-line);border-radius:50%;display:flex!important;align-items:center;justify-content:center;font-size:12px}
.gp-faq .elementor-toggle-icon span{display:flex;align-items:center;justify-content:center}
.gp-faq .elementor-tab-content{border:0!important;max-width:72ch}
/* Reviews */
.gp-revname .elementor-heading-title{font-weight:600}
/* Past events */
.gp-past .e-loop-item{opacity:.75}
/* Map */
.gp-map iframe{border-radius:4px}
/* Mobile menu */
.gp-mnav .elementor-nav-menu--dropdown .elementor-nav-menu{padding:8px 28px 24px;border-bottom:1px solid var(--e-global-color-line)}
@media (max-width:767px){.gp-mnav .elementor-nav-menu--dropdown .elementor-nav-menu{padding:8px 20px 24px}}
.elementor .gp-mnav.elementor-widget-nav-menu .elementor-nav-menu--dropdown li.gp-menu-cta{border:0;margin-top:18px}
.elementor .gp-mnav.elementor-widget-nav-menu .elementor-nav-menu--dropdown li.gp-menu-cta>a.elementor-item{justify-content:center;min-height:52px;border-radius:4px;background-color:var(--e-global-color-primary);color:#fff;font-family:Figtree,sans-serif;font-size:14px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}
.elementor-menu-toggle{width:48px;height:48px}
/* Mobile action bar */
.gp-mbar{position:fixed!important;left:0;right:0;bottom:0;z-index:200;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important}
.gp-mbar-btn .elementor-button{min-height:50px;padding-left:8px!important;padding-right:8px!important;font-size:12px!important;letter-spacing:.04em!important}
@media (max-width:767px){body{padding-bottom:70px}}
/* Taxonomy filter */
.elementor .elementor-widget-taxonomy-filter .e-filter{flex-wrap:wrap}
/* Hero photo fills the full height of the green panel on desktop */
@media (min-width:1025px){.gp-hero-img .elementor-widget-image,.gp-hero-img .elementor-widget-image .elementor-widget-container,.gp-hero-img .elementor-widget-image img{height:100%!important}}
@media (min-width:481px){.elementor-button .elementor-button-text{white-space:nowrap}}
/* ---- Green Park San Pancrazio: helper styles (end) ---- */
