/*
Theme Name: NHOU Ireland (nhou.lv clone)
Description: Static clone of nhou.lv re-badged for NHOU Ireland. Pages in templates/*.html.
Version: 1.0
Text Domain: nhou-lv
*/
/* Dialog mechanics (the original used Radix; this is the plain-CSS equivalent) */
.nhou-dialog[hidden] { display: none; }
.nhou-dialog { position: fixed; inset: 0; z-index: 60; display: grid; place-items: center; padding: 1rem; }
.nhou-dialog__overlay { position: absolute; inset: 0; background: rgba(0,0,0,.8); }
.nhou-dialog__panel { position: relative; z-index: 1; width: 100%; max-height: 85vh; overflow-y: auto; }
.nhou-dialog__close { position: absolute; right: 1rem; top: 1rem; opacity: .7; cursor: pointer; background: none; border: 0; color: inherit; }
.nhou-dialog__close:hover { opacity: 1; }
body.nhou-scroll-lock { overflow: hidden; }
.nhou-hidden { display: none !important; }
.wpcf7-form .wpcf7-not-valid-tip { font-size: .75rem; color: hsl(var(--destructive, 0 84% 60%)); }
.wpcf7-form .wpcf7-response-output { margin: .75rem 0 0; padding: .5rem .75rem; border-radius: .5rem; font-size: .875rem; }

.nhou-input {  }
.wpcf7 .nhou-input { display:block; width:100%; height:2.5rem; border-radius:.375rem; border:1px solid hsl(var(--border)); background:hsl(var(--background)); padding:.5rem .75rem; font-size:.875rem; color:inherit; }
.wpcf7 textarea.nhou-input { height:auto; }
.wpcf7 .nhou-submit { display:inline-flex; width:100%; align-items:center; justify-content:center; border-radius:.5rem; background:hsl(var(--primary)); padding:.625rem 1rem; font-size:.875rem; font-weight:600; color:hsl(var(--primary-foreground)); border:0; cursor:pointer; }

.nhou-input {  }
.wpcf7 .nhou-input { display:block; width:100%; height:2.5rem; border-radius:.375rem; border:1px solid hsl(var(--border)); background:hsl(var(--background)); padding:.5rem .75rem; font-size:.875rem; color:inherit; }
.wpcf7 textarea.nhou-input { height:auto; }
.wpcf7 .nhou-submit { display:inline-flex; width:100%; align-items:center; justify-content:center; border-radius:.5rem; background:hsl(var(--primary)); padding:.625rem 1rem; font-size:.875rem; font-weight:600; color:hsl(var(--primary-foreground)); border:0; cursor:pointer; }

.nhou-input {  }
.wpcf7 .nhou-input { display:block; width:100%; height:2.5rem; border-radius:.375rem; border:1px solid hsl(var(--border)); background:hsl(var(--background)); padding:.5rem .75rem; font-size:.875rem; color:inherit; }
.wpcf7 textarea.nhou-input { height:auto; }
.wpcf7 .nhou-submit { display:inline-flex; width:100%; align-items:center; justify-content:center; border-radius:.5rem; background:hsl(var(--primary)); padding:.625rem 1rem; font-size:.875rem; font-weight:600; color:hsl(var(--primary-foreground)); border:0; cursor:pointer; }

.nhou-input {  }
.wpcf7 .nhou-input { display:block; width:100%; height:2.5rem; border-radius:.375rem; border:1px solid hsl(var(--border)); background:hsl(var(--background)); padding:.5rem .75rem; font-size:.875rem; color:inherit; }
.wpcf7 textarea.nhou-input { height:auto; }
.wpcf7 .nhou-submit { display:inline-flex; width:100%; align-items:center; justify-content:center; border-radius:.5rem; background:hsl(var(--primary)); padding:.625rem 1rem; font-size:.875rem; font-weight:600; color:hsl(var(--primary-foreground)); border:0; cursor:pointer; }

.nhou-input {  }
.wpcf7 .nhou-input { display:block; width:100%; height:2.5rem; border-radius:.375rem; border:1px solid hsl(var(--border)); background:hsl(var(--background)); padding:.5rem .75rem; font-size:.875rem; color:inherit; }
.wpcf7 textarea.nhou-input { height:auto; }
.wpcf7 .nhou-submit { display:inline-flex; width:100%; align-items:center; justify-content:center; border-radius:.5rem; background:hsl(var(--primary)); padding:.625rem 1rem; font-size:.875rem; font-weight:600; color:hsl(var(--primary-foreground)); border:0; cursor:pointer; }

.nhou-input {  }
.wpcf7 .nhou-input { display:block; width:100%; height:2.5rem; border-radius:.375rem; border:1px solid hsl(var(--border)); background:hsl(var(--background)); padding:.5rem .75rem; font-size:.875rem; color:inherit; }
.wpcf7 textarea.nhou-input { height:auto; }
.wpcf7 .nhou-submit { display:inline-flex; width:100%; align-items:center; justify-content:center; border-radius:.5rem; background:hsl(var(--primary)); padding:.625rem 1rem; font-size:.875rem; font-weight:600; color:hsl(var(--primary-foreground)); border:0; cursor:pointer; }

.nhou-input {  }
.wpcf7 .nhou-input { display:block; width:100%; height:2.5rem; border-radius:.375rem; border:1px solid hsl(var(--border)); background:hsl(var(--background)); padding:.5rem .75rem; font-size:.875rem; color:inherit; }
.wpcf7 textarea.nhou-input { height:auto; }
.wpcf7 .nhou-submit { display:inline-flex; width:100%; align-items:center; justify-content:center; border-radius:.5rem; background:hsl(var(--primary)); padding:.625rem 1rem; font-size:.875rem; font-weight:600; color:hsl(var(--primary-foreground)); border:0; cursor:pointer; }

.nhou-input {  }
.wpcf7 .nhou-input { display:block; width:100%; height:2.5rem; border-radius:.375rem; border:1px solid hsl(var(--border)); background:hsl(var(--background)); padding:.5rem .75rem; font-size:.875rem; color:inherit; }
.wpcf7 textarea.nhou-input { height:auto; }
.wpcf7 .nhou-submit { display:inline-flex; width:100%; align-items:center; justify-content:center; border-radius:.5rem; background:hsl(var(--primary)); padding:.625rem 1rem; font-size:.875rem; font-weight:600; color:hsl(var(--primary-foreground)); border:0; cursor:pointer; }

/* WooCommerce pages inside the site chrome (2026-11-04) */
.nhou-woo .wp-block-woocommerce-cart, .nhou-woo .wp-block-woocommerce-checkout, .nhou-woo .woocommerce { max-width: 1100px; }
.nhou-woo .wc-block-components-button, .nhou-woo .button, .nhou-woo button.button { background: var(--primary) !important; color: var(--primary-foreground) !important; border-radius: .5rem !important; font-weight: 600; }
.nhou-woo .wc-block-components-product-name, .nhou-woo .wc-block-components-order-summary-item__description { font-weight: 600; }
.nhou-woo .wc-block-components-notice-banner, .nhou-woo .woocommerce-message, .nhou-woo .woocommerce-info { border-radius: .75rem; }
.nhou-woo a:not([class]) { color: var(--primary); text-decoration: underline; }
