/* Catalogue, imagery and mobile layout */
html, body, .wp-site-blocks { width: 100%; max-width: 100%; overflow-x: clip; }
*, *::before, *::after { box-sizing: border-box; }
img, video, iframe { max-width: 100%; }
.innerpage-banner { background: linear-gradient(115deg, #10243b 0%, #244962 100%) !important; }
.innerpage-banner .wp-block-cover__image-background { display: none !important; }
.innerpage-banner .wp-block-cover__background { background-color: transparent !important; }
.innerpage-banner .wp-block-cover__inner-container { position: relative; z-index: 1; }
.wp-block-woocommerce-product-image img, .wc-block-grid__product-image img,
.woocommerce ul.products li.product img { width: 100% !important; max-width: 240px; height: 260px !important; max-height: 260px; object-fit: contain !important; background: #fff; display: block; margin-inline: auto; }
.wp-block-woocommerce-product-template > li { min-width: 0; }
.wp-block-woocommerce-product-template .wp-block-post-title { overflow-wrap: anywhere; }
.hg-shop-search { max-width: 1180px; margin: 28px auto 0; padding: 0 24px; }
.hg-shop-search h2 { font-size: 20px; margin: 0 0 12px; }
.hg-shop-search form { display: flex; gap: 10px; }
.hg-shop-search input[type="search"] { min-width: 0; flex: 1; border: 1px solid #cbd5df; border-radius: 8px; padding: 13px 15px; font: inherit; }
.hg-shop-search button { background: #173b5b; color: white; border: 0; border-radius: 8px; padding: 13px 25px; font: inherit; font-weight: 700; cursor: pointer; }
.single-product .woocommerce-product-gallery img { width: 100%; height: auto; object-fit: contain; }
.woocommerce .single_add_to_cart_button, .woocommerce .quantity,
.wc-block-components-product-button, .wp-block-woocommerce-product-button,
.wc-block-components-product-price, .wp-block-woocommerce-product-price,
.woocommerce ul.products li.product .price, .woocommerce div.product p.price { display: none !important; }
.hg-contact { max-width: 1180px; margin: 0 auto; padding: 32px 24px 70px; color: #172b40; }
.hg-contact h1 { font-size: clamp(30px, 4vw, 48px); margin: 0 0 22px; }
.hg-map { width: 100%; aspect-ratio: 2.4 / 1; border: 0; border-radius: 16px; display: block; background: #e9eff2; }
.hg-contact-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; margin-top: 26px; }
.hg-contact-card { min-width: 0; background: #f5f8fa; border: 1px solid #dce5ea; border-radius: 14px; padding: 24px; overflow-wrap: anywhere; }
.hg-contact-card svg { width: 28px; height: 28px; fill: none; stroke: #b18447; stroke-width: 2; display: block; margin-bottom: 16px; }
.hg-contact-card h2 { font-size: 18px; margin: 0 0 10px; }
.hg-contact-card p { line-height: 1.6; margin: 0; }
.hg-contact a, .hg-footer a { color: inherit; text-decoration: none; }
.hg-contact a:hover, .hg-footer a:hover { text-decoration: underline; }
.hg-map-link { display: inline-block; margin: 14px 0 0; font-weight: 700; color: #183d60 !important; }
.hg-legal { margin-top: 42px; padding-top: 30px; border-top: 1px solid #dce5ea; }
.hg-legal h2 { font-size: 24px; margin: 0 0 22px; }
.hg-legal-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px 28px; margin: 0; }
.hg-legal-grid > div { min-width: 0; }
.hg-legal-grid dt { font-size: 13px; font-weight: 700; color: #5b6b78; margin-bottom: 5px; }
.hg-legal-grid dd { margin: 0; line-height: 1.5; overflow-wrap: anywhere; }
.hg-footer { background: #10243b; color: #f3f6fa; padding: 54px 24px 22px; }
.hg-footer-grid { max-width: 1180px; margin: auto; display: grid; grid-template-columns: 1.4fr 1fr 1.3fr; gap: 42px; }
.hg-footer h2 { font-size: 20px; margin: 0 0 17px; color: #fff; }
.hg-footer p { line-height: 1.65; margin: 0 0 10px; }
.hg-footer nav a { display: block; margin: 0 0 11px; }
.hg-footer-legal { max-width: 1180px; margin: 34px auto 0; padding-top: 22px; border-top: 1px solid #42566b; display: flex; flex-wrap: wrap; justify-content: center; gap: 9px 20px; color: #dbe6ee; font-size: 13px; line-height: 1.5; text-align: center; }
.hg-footer-bottom { max-width: 1180px; margin: 36px auto 0; padding-top: 20px; border-top: 1px solid #42566b; text-align: center; font-size: 14px; }
.hakan-header .hakan-header-inner { min-width: 0; }
.hakan-header .hakan-header-inner > .wp-block-group { min-width: 0; }
.wp-block-cover.alignfull, .wp-block-group.alignfull { max-width: 100vw; }
@media (max-width: 900px) {
  .hg-contact-grid { grid-template-columns: 1fr; }
  .hg-footer-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .wp-block-woocommerce-product-template { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .wp-block-cover[style*="min-height:78vh"] { min-height: 400px !important; }
}
@media (max-width: 600px) {
  .hg-shop-search { padding: 0 16px; }
  .hg-shop-search form { flex-wrap: wrap; }
  .hg-shop-search button { width: 100%; }
  .hg-contact { padding: 20px 16px 48px; }
  .hg-legal-grid { grid-template-columns: 1fr; }
  .hg-footer-legal { flex-direction: column; gap: 6px; }
  .hg-map { aspect-ratio: 1.15 / 1; }
  .hg-footer-grid { grid-template-columns: 1fr; gap: 22px; }
  .wp-block-woocommerce-product-template { gap: 12px !important; }
  .wp-block-woocommerce-product-image img, .wc-block-grid__product-image img,
  .woocommerce ul.products li.product img { height: 190px !important; max-height: 190px; }
  .wp-block-cover[style*="min-height:78vh"] { min-height: 330px !important; padding-inline: 16px !important; }
  .wp-block-cover h1[style*="font-size:64px"] { font-size: clamp(30px, 8vw, 43px) !important; }
  .wp-block-buttons { flex-wrap: wrap !important; }
  .hakan-header .hakan-header-inner { width: calc(100% - 24px) !important; }
}
