/*
Theme Name: Arbor Venue
Description: A calm block theme for wedding venues. All page content is built from editable blocks and patterns.
Version: 0.2.0
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: arbor-venue
*/
.wp-site-blocks>*+*{margin-block-start:0}
.wp-block-post-content>*{margin-block-start:0;margin-block-end:0}
header.wp-block-template-part{position:sticky;top:0;z-index:30;background:rgba(242,244,241,.95);backdrop-filter:blur(8px);border-bottom:1px solid var(--wp--preset--color--sage-light)}
.admin-bar header.wp-block-template-part{top:32px}
.has-pine-background-color :where(h1,h2,h3,.wp-block-site-title){color:#fff}
.has-pine-background-color a:not(.wp-element-button){color:inherit}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--wp--preset--color--pine);border:2px solid var(--wp--preset--color--pine)}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--wp--preset--color--pine);color:#fff}
.wp-block-cover.is-style-arch{border-radius:999px 999px 14px 14px;box-shadow:0 0 0 10px #fff,0 0 0 11px var(--wp--preset--color--sage-light);width:min(100%,420px);margin-inline:auto;aspect-ratio:3/4;min-height:0!important}
.wp-block-cover.av-tile{border-radius:14px}
.is-style-panel{background:#fff;border:1px solid var(--wp--preset--color--sage-light);border-radius:14px;padding:2rem;height:100%}
.is-style-panel.av-featured{border:2px solid var(--wp--preset--color--brass)}
.is-style-panel .wp-block-cover{margin-bottom:1.2rem}
.av-price{font-family:var(--wp--preset--font-family--display);font-size:2.3rem;line-height:1;margin:0;color:var(--wp--preset--color--pine)}
ul.av-facts{list-style:none;padding:0;margin:0}
ul.av-facts li{padding:.65rem 0;border-bottom:1px solid var(--wp--preset--color--sage-light)}
.wp-block-columns{gap:clamp(1.5rem,4vw,3rem)}
/* custom blocks */
.av-booking,.av-contact{--pine:var(--wp--preset--color--pine);--sage:var(--wp--preset--color--sage);--sl:var(--wp--preset--color--sage-light);--mist:var(--wp--preset--color--base)}
.av-book-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3rem);align-items:start}
.av-form{background:#fff;border:1px solid var(--sl);border-radius:14px;padding:1.8rem}
.av-form label{display:block;font-weight:500;margin-bottom:.3rem;color:var(--pine)}
.av-form input,.av-form select,.av-form textarea{width:100%;padding:.75rem .9rem;border:1px solid var(--sage);border-radius:10px;background:#fff;font:inherit;color:inherit}
.av-field{margin-bottom:1.1rem}.av-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.av-form button[type=submit]{background:var(--pine);color:#fff;border:0;border-radius:99px;padding:.85em 1.8em;font:inherit;font-weight:500;cursor:pointer}
.av-form button[type=submit]:hover{background:var(--wp--preset--color--brass)}
.av-notice{display:none;margin-top:1rem;padding:1rem 1.2rem;border-radius:10px;background:var(--sl);color:var(--pine)}.av-notice.show{display:block}
.av-cal{background:#fff;border:1px solid var(--sl);border-radius:14px;padding:1.2rem}
.av-cal:empty::before{content:"The availability calendar appears here on the live page.";color:var(--sage)}
.av-cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}
.av-cal-head strong{font:400 1.3rem var(--wp--preset--font-family--display);color:var(--pine)}
.av-cal-head button{background:none;border:1px solid var(--sage);border-radius:8px;width:2.3rem;height:2.3rem;cursor:pointer;color:var(--pine)}
.av-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}
.av-cal-grid .dow{font-size:.8rem;color:#6d7f73}
.av-cal-grid button{aspect-ratio:1;border:0;border-radius:8px;background:var(--mist);font:inherit;cursor:pointer;color:var(--pine)}
.av-cal-grid button:hover:not(:disabled){background:var(--sl)}
.av-cal-grid button:disabled{background:transparent;color:#9aa8a0;text-decoration:line-through;cursor:not-allowed}
.av-cal-grid button.sel{background:var(--pine);color:#fff}
.av-legend{font-size:.9rem;margin-top:.8rem}
:focus-visible{outline:3px solid var(--wp--preset--color--brass);outline-offset:3px}
@media(max-width:782px){.av-book-grid,.av-row{grid-template-columns:1fr}.admin-bar header.wp-block-template-part{top:46px}}
