/* Collection and catalog grids: five compact cards on desktop. */
body:is(.tax-product_cat,.post-type-archive-product) main > .alignwide {max-width:1180px!important;margin-inline:auto!important;}
body:is(.tax-product_cat,.post-type-archive-product) main h1 {font-size:34px!important;line-height:1.25!important;}
body:is(.tax-product_cat,.post-type-archive-product) .woocommerce-result-count {font-size:14px!important;}
body:is(.tax-product_cat,.post-type-archive-product) .wp-block-woocommerce-product-image {position:relative;}
.fdl-photo-zoom {display:block;margin:8px auto 0;background:transparent;border:0;color:#173f58;font-size:12px;line-height:1.4;text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:32px;}
.fdl-photo-dialog {box-sizing:border-box;width:min(880px,calc(100vw - 32px));max-width:880px;max-height:92vh;padding:24px;border:0;border-radius:10px;background:#fffaf2;color:#173f58;}
.fdl-photo-dialog::backdrop {background:rgb(0 0 0 / .7);}
.fdl-photo-dialog h2 {font-size:20px;line-height:1.35;margin:12px 0 16px;}
.fdl-photo-dialog img {display:block;max-width:100%;max-height:65vh;width:auto;height:auto;margin:auto;object-fit:contain;}
.fdl-photo-close {display:block;margin-left:auto;border:1px solid #cfc8bf;border-radius:5px;padding:10px 14px;min-height:44px;background:#fff;font-size:14px;cursor:pointer;}
.fdl-photo-product {display:block;width:max-content;margin:18px auto 0;color:#173f58;text-underline-offset:4px;font-size:15px;}
@media(max-width:600px){.fdl-photo-dialog{padding:16px;}.fdl-photo-dialog h2{font-size:17px;}body:is(.tax-product_cat,.post-type-archive-product) main h1{font-size:28px!important;}}
body.home .fdl-home .fdl-collections-compact .fdl-grid {grid-template-columns:repeat(5,minmax(0,1fr));gap:24px 18px;}
body.home .fdl-home .fdl-collections-compact .fdl-card img {aspect-ratio:1;}
body.home .fdl-home .fdl-collections-compact h3 {font-size:22px;line-height:1.15;letter-spacing:-.025em;}
body.home .fdl-home .fdl-collections-compact .fdl-card-info {padding:14px 0 7px;gap:8px;min-height:65px;}
body.home .fdl-home .fdl-collections-compact .fdl-arrow {font-size:19px;}
body.home .fdl-home .fdl-collections-compact .fdl-card p {font-size:12px;}
body:is(.tax-product_cat,.post-type-archive-product) main ul.products,
body:is(.tax-product_cat,.post-type-archive-product) main .wc-block-product-template {display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:28px 18px!important;}
body:is(.tax-product_cat,.post-type-archive-product) main ul.products::before,
body:is(.tax-product_cat,.post-type-archive-product) main ul.products::after {display:none!important;}
body:is(.tax-product_cat,.post-type-archive-product) main ul.products li.product {width:auto!important;float:none!important;margin:0!important;}
body:is(.tax-product_cat,.post-type-archive-product) main :is(ul.products,.wc-block-product-template) > li {min-width:0;display:flex;flex-direction:column;}
body:is(.tax-product_cat,.post-type-archive-product) main :is(ul.products,.wc-block-product-template) img {width:100%;height:auto;aspect-ratio:1;object-fit:cover;}
body:is(.tax-product_cat,.post-type-archive-product) main :is(.woocommerce-loop-product__title,.wc-block-product-template h2,.wc-block-product-template h3) {font-size:16px!important;line-height:1.4!important;}
body:is(.tax-product_cat,.post-type-archive-product) main :is(.price,.wp-block-woocommerce-product-price) {font-size:15px!important;}
body:is(.tax-product_cat,.post-type-archive-product) main :is(.button,.wp-block-button__link) {font-size:13px!important;padding:11px 14px!important;}
/* Share the image, name, price and action tracks across each product row. */
body:is(.tax-product_cat,.post-type-archive-product) main .wc-block-product-template > li.product {display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:12px;align-content:start;}
body:is(.tax-product_cat,.post-type-archive-product) main .wc-block-product-template > li.product > :is(.wp-block-post-title,.wp-block-woocommerce-product-price,.wp-block-woocommerce-product-button) {margin:0!important;align-self:start;}
@media(max-width:1000px){
 body.home .fdl-home .fdl-collections-compact .fdl-grid,
 body:is(.tax-product_cat,.post-type-archive-product) main ul.products,
 body:is(.tax-product_cat,.post-type-archive-product) main .wc-block-product-template {grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:600px){
 body.home .fdl-home .fdl-collections-compact .fdl-grid,
 body:is(.tax-product_cat,.post-type-archive-product) main ul.products,
 body:is(.tax-product_cat,.post-type-archive-product) main .wc-block-product-template {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 14px!important;}
 body.home .fdl-home .fdl-collections-compact h3 {font-size:20px;}
}
/* Shared header: slightly smaller logo and less vertical whitespace. */
.wp-site-blocks > header.wp-block-template-part,
.wp-site-blocks > header.wp-block-template-part .wp-block-group,
.wp-site-blocks > header.wp-block-template-part .wp-block-navigation {background-color:#fffaf2!important;}
.wp-site-blocks > header.wp-block-template-part > .wp-block-group > .wp-block-group > .wp-block-group.alignwide {padding-top:14px!important;padding-bottom:14px!important;}
.wp-site-blocks > header .wp-block-site-logo img.custom-logo {width:170px!important;height:auto!important;}
@media(max-width:600px){
 .wp-site-blocks > header.wp-block-template-part > .wp-block-group > .wp-block-group > .wp-block-group.alignwide {padding-top:12px!important;padding-bottom:12px!important;}
 .wp-site-blocks > header .wp-block-site-logo img.custom-logo {width:145px!important;}
}
/* Compact home hero; preserve approved images, copy and brand colors. */
body.home .fdl-home {margin-top:0!important;}
body.home .fdl-home .fdl-wrap {width:min(1040px,calc(100% - 64px));}
body.home .fdl-home .fdl-hero {grid-template-columns:1fr 1fr;gap:48px;padding:36px 0 44px;}
body.home .fdl-home .fdl-hero h1 {font-size:clamp(44px,4.5vw,64px)!important;line-height:1.06;}
body.home .fdl-home .fdl-hero .fdl-eyebrow {font-size:11px;margin-bottom:18px;}
body.home .fdl-home .fdl-hero .fdl-intro {font-size:16px;line-height:1.65;margin:22px 0 24px;max-width:350px;}
body.home .fdl-home .fdl-hero-photo {width:100%;max-width:480px;justify-self:end;padding:0 0 16px 16px;}
body.home .fdl-home .fdl-hero-photo img {width:100%;aspect-ratio:1.25;max-height:370px;object-fit:cover;border-top-left-radius:100px;}
body.home .fdl-home .fdl-hero-photo:before {border-top-left-radius:100px;}
@media(max-width:780px){
 body.home .fdl-home .fdl-wrap {width:calc(100% - 36px);}
 body.home .fdl-home .fdl-hero {grid-template-columns:1fr;gap:28px;padding:30px 0 36px;}
 body.home .fdl-home .fdl-hero h1 {font-size:46px!important;}
 body.home .fdl-home .fdl-hero-photo {max-width:480px;justify-self:center;}
 body.home .fdl-home .fdl-hero-photo img {max-height:320px;}
}
/* Scoped to product pages; checkout and the brand header keep their own styles. */
body.single-product main {font-size:16px;line-height:1.65;padding-top:24px!important;padding-bottom:48px!important;}
body.single-product main > .alignwide {max-width:1180px!important;}
body.single-product main > .wp-block-columns {gap:48px!important;align-items:flex-start;}
body.single-product main h1.wp-block-post-title {font-size:clamp(26px,2.4vw,34px)!important;line-height:1.18!important;font-weight:600;letter-spacing:-.025em;margin:0 0 16px!important;}
body.single-product main h2 {font-size:24px!important;line-height:1.3!important;font-weight:600;margin:28px 0 16px;}
body.single-product main p {font-size:16px!important;line-height:1.65!important;margin-bottom:16px;}
body.single-product .woocommerce-breadcrumb {font-size:13px!important;line-height:1.5; margin-bottom:24px!important;color:#666;}
body.single-product .wp-block-woocommerce-product-price {font-size:23px!important;font-weight:600;margin:0 0 18px!important;}
body.single-product .woocommerce-product-details__short-description {font-size:16px!important;}
body.single-product table.variations {width:100%;margin:22px 0 16px!important;border:0;border-collapse:collapse;}
body.single-product table.variations tr {display:grid;grid-template-columns:90px minmax(0,1fr);align-items:center;gap:12px;margin-bottom:12px;}
body.single-product table.variations th,body.single-product table.variations td {padding:0!important;border:0!important;text-align:left;vertical-align:middle;}
body.single-product table.variations label {font-size:15px!important;font-weight:600!important;}
body.single-product table.variations select {width:100%;max-width:320px;min-height:46px;padding:10px 14px;font-size:15px!important;border:1px solid #cfc8bf;border-radius:6px;background:#fff;}
body.single-product .reset_variations {font-size:13px!important;display:inline-block;margin:6px 0 0!important;}
body.single-product main input,body.single-product main button,body.single-product main .button {font-size:15px!important;}
body.single-product main .single_add_to_cart_button {min-height:48px!important;padding:12px 24px!important;border-radius:7px!important;font-weight:600;}
body.single-product main .quantity input {min-height:48px!important;width:72px!important;padding:8px!important;}
body.single-product .product_meta {font-size:12px!important;color:#6c665f;line-height:1.6;}
body.single-product .woocommerce-product-gallery {margin-bottom:0!important;}
body.single-product .woocommerce-product-gallery .flex-control-thumbs {display:flex;gap:8px;margin-top:12px!important;}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li {width:calc(25% - 6px)!important;float:none!important;}
body.single-product .woocommerce-product-gallery .flex-control-thumbs img {border-radius:5px;}
body.single-product .woocommerce-tabs {margin-top:36px!important;}
body.single-product .woocommerce-tabs ul.tabs {display:flex;flex-wrap:wrap;gap:24px;padding:0!important;}
body.single-product .woocommerce-tabs ul.tabs li {padding:0 0 10px!important;margin:0!important;}
body.single-product .woocommerce-tabs ul.tabs li a {font-size:15px!important;line-height:1.5!important;font-weight:600;}
body.single-product .woocommerce-Tabs-panel {font-size:16px;max-width:900px;padding-top:12px!important;}
body.single-product .woocommerce-Tabs-panel--description > h2:first-child {display:none;}
body.single-product .woocommerce-Tabs-panel--description table {width:100%;max-width:680px;border-collapse:collapse;font-size:15px!important;margin:16px 0 20px;table-layout:fixed;}
body.single-product .woocommerce-Tabs-panel--description caption {text-align:left;font-size:13px;color:#736a61;padding:0 0 10px;}
body.single-product .woocommerce-Tabs-panel--description th,body.single-product .woocommerce-Tabs-panel--description td {padding:12px 10px;border:1px solid #e7ded4;text-align:center;line-height:1.4;}
body.single-product .woocommerce-Tabs-panel--description th:first-child {width:34%;text-align:left;}
body.single-product .woocommerce-Tabs-panel--description thead {background:#f7f2ec;}
body.single-product .woocommerce-Tabs-panel--description tbody tr:nth-child(even) {background:#fcfaf7;}
body.single-product main .wp-block-woocommerce-product-collection {margin-top:44px;}
body.single-product main .wc-block-product-template {gap:24px!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;}
body.single-product main .wc-block-product-template > li {display:flex;flex-direction:column;}
body.single-product main .wc-block-product-template h3 {font-size:17px!important;line-height:1.4!important;min-height:48px;margin:14px 0 8px!important;}
body.single-product main .wc-block-product-template .wp-block-woocommerce-product-price {font-size:16px!important;margin-bottom:14px!important;}
body.single-product main .wc-block-product-template .wp-block-woocommerce-product-button {margin-top:auto;}
body.single-product main .wc-block-product-template .wp-block-button__link {font-size:14px!important;padding:11px 22px!important;min-height:44px;}
@media(max-width:781px){
 body.single-product main {padding-top:18px!important;}
 body.single-product main > .wp-block-columns {gap:28px!important;}
 body.single-product main h1.wp-block-post-title {font-size:28px!important;}
 body.single-product main h2 {font-size:21px!important;}
 body.single-product table.variations tr {grid-template-columns:76px minmax(0,1fr);}
 body.single-product table.variations select {max-width:none;}
 body.single-product .woocommerce-tabs ul.tabs {gap:16px;}
 body.single-product .woocommerce-tabs ul.tabs li a {font-size:13px!important;}
 body.single-product .woocommerce-Tabs-panel--description th,body.single-product .woocommerce-Tabs-panel--description td {padding:10px 5px;font-size:13px;}
 body.single-product main .wc-block-product-template {gap:16px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;}
 body.single-product main .wc-block-product-template h3 {font-size:15px!important;min-height:63px;}
}
