/*
Theme Name: Peace of Mind Massage
Theme URI: https://peaceofmindmassage.ca
Description: Child theme of Kadence carrying the Panatella Warmth design direction for Peace of Mind Massage Therapy Centre. This stylesheet is the single home for the site's design CSS. The Customizer's Additional CSS box is deliberately empty. Fonts and the global palette live in the Kadence customizer.
Author: 10mb
Template: kadence
Version: 1.1.1
Text Domain: kadence-pomm
*/

/* ---------------------------------------------------------------
   Panatella Warmth.

   Consolidated on 2026-09-27 from the Customizer's Additional CSS,
   which was the live source until then. One prefix throughout: pomm-
   Edit this file, not the Customizer.
   --------------------------------------------------------------- */

:root{
  --pomm-brand:#EB823F;
  --pomm-tint:#F8E8D9;
  --pomm-accent:var(--global-palette1);
  --pomm-ink:var(--global-palette3);
  --pomm-espresso:var(--global-palette4);
  --pomm-muted:var(--global-palette5);
  --pomm-line:var(--global-palette6);
  --pomm-oat:var(--global-palette7);
  --pomm-bone:var(--global-palette8);
  --pomm-r-photo:36px;
  --pomm-r-card:20px;
}
body{background-color:var(--pomm-bone)}

/* Display type: tight, editorial */
h1{letter-spacing:-0.015em}
h2{letter-spacing:-0.010em}
h1 em,h2 em,h3 em{font-style:italic;line-height:1.14;padding-bottom:.04em}

/* Comfortable measure on prose */
.pomm-measure p,.pomm-measure li{max-width:62ch}

/* Photography masks */
.pomm-photo img,.entry-content .pomm-photo img{border-radius:36px!important}
.pomm-arch img,.entry-content .pomm-arch img{border-radius:50% 50% 36px 36px / 34% 34% 36px 36px!important}
.pomm-person img,.entry-content .pomm-person img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top center;border-radius:50% 50% 20px 20px / 30% 30% 20px 20px!important}

/* Hairline separation, never shadow */
.pomm-card{background:#fff;border:1px solid var(--pomm-line);border-radius:var(--pomm-r-card);box-shadow:none!important}
.pomm-tint{background:var(--pomm-tint);border-radius:var(--pomm-r-card)}
.wp-block-button__link,.kb-button,.button{box-shadow:none!important}

/* Small uppercase label */
.pomm-label{font-family:Figtree,system-ui,sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:600;color:var(--pomm-muted)}

/* Espresso band */
.pomm-deep{background:var(--pomm-espresso)}
.pomm-deep,.pomm-deep p,.pomm-deep li{color:#F5EDE4}
.pomm-deep h1,.pomm-deep h2,.pomm-deep h3,.pomm-deep h4{color:#F5EDE4}
.pomm-deep .pomm-label{color:var(--pomm-brand)}
.pomm-deep a:not(.wp-block-button__link):not(.kb-button){color:var(--pomm-brand)}

/* Pull quote */
.pomm-quote p{font-family:Newsreader,Georgia,serif;font-style:italic;font-size:24px;line-height:1.45;color:var(--pomm-ink);max-width:36ch}

/* Header */
.site-header .header-navigation .header-menu-container>ul>li>a{font-size:16px;font-weight:500}
.site-header .header-html a{font-weight:600;color:var(--pomm-ink);text-decoration:none;white-space:nowrap}
.site-header .header-html a:hover{color:var(--pomm-accent)}

/* Footer */
.site-footer .site-middle-footer-wrap a:hover{color:var(--pomm-brand)}
.site-footer .footer-html{color:#B9A99C;font-size:14px}

/* Forms */
input[type=text],input[type=email],input[type=tel],input[type=search],textarea,select{border-radius:var(--pomm-r-card)!important;border:1px solid var(--pomm-line)!important;background:#fff}
input:focus,textarea:focus,select:focus{outline:2px solid var(--pomm-accent);outline-offset:2px}

/* Focus visibility everywhere */
a:focus-visible,button:focus-visible{outline:2px solid var(--pomm-accent);outline-offset:3px;border-radius:4px}

@media (max-width:880px){
  .pomm-quote p{font-size:20px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}
/* Left align prose inside layout groups: Kadence centres narrow paragraphs by default */
.entry-content .wp-block-group p,.entry-content .wp-block-group li,.entry-content .wp-block-column p{margin-left:0;margin-right:0}
.entry-content .wp-block-group>p{max-width:68ch}
.entry-content .wp-block-column p{max-width:none}
.pomm-measure p,.pomm-measure li{max-width:62ch}

/* Layout bands and repeating components */
.pomm-band{padding-top:108px;padding-bottom:108px;padding-left:24px;padding-right:24px}
.pomm-band--tight{padding-top:44px;padding-bottom:44px}
.pomm-bone{background-color:#FAF5EF}
.pomm-oat{background-color:#EFE5D9}
.entry-content .pomm-row{border-bottom:1px solid var(--pomm-line);padding:20px 0}
.entry-content .pomm-row:last-child{border-bottom:0;padding-bottom:0}
.entry-content .pomm-row h3{font-size:24px;margin:0 0 6px}
.entry-content .pomm-row p{font-size:16px;color:var(--pomm-muted);margin:0;max-width:62ch}
.entry-content .pomm-facts{border-top:1px solid var(--pomm-line);border-bottom:1px solid var(--pomm-line);padding:24px 0}
.entry-content .pomm-facts p,.entry-content .pomm-facts li{font-size:16px}
.entry-content .pomm-facts>*:last-child{margin-bottom:0}
.pomm-deep .pomm-facts{border-color:#5A4A3E}
.entry-content .pomm-fineprint{font-size:15px;line-height:1.8;margin-top:34px}
.entry-content .pomm-lede{font-size:19px;line-height:1.6;color:#4A3C34}
.entry-content .wp-block-column>*:first-child{margin-top:0}
@media(max-width:880px){.pomm-band{padding-top:72px;padding-bottom:72px}}

/* Keep the desktop navigation on a single line */
@media (min-width:1025px){
  .site-header .header-navigation .header-menu-container>ul>li>a{font-size:15.5px;padding-left:.62em;padding-right:.62em;white-space:nowrap}
  .site-header .site-header-main-section-right{gap:14px}
  .site-header .header-html a{font-size:15.5px}
}

/* Footer on the espresso band */
.site-footer .site-footer-row-container-inner{background-color:#33261E}
#colophon{color:#E4D9CE}
#colophon p,#colophon li,#colophon .widget,#colophon .site-footer-row{color:#E4D9CE}
#colophon a{color:#E4D9CE;text-decoration:none}
#colophon a:hover,#colophon a:focus-visible{color:#EB823F;text-decoration:underline;text-underline-offset:3px}
#colophon h1,#colophon h2,#colophon h3,#colophon h4,#colophon h5{color:#FFFFFF}
#colophon h6,#colophon .wp-block-heading[class*='h6'],#colophon .widget-title{font-family:Figtree,system-ui,sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#EB823F;margin:0 0 16px}
#colophon ul.wp-block-list{list-style:none;margin:0;padding:0}
#colophon ul.wp-block-list li{margin:0 0 10px;font-size:15px;line-height:1.5}
#colophon ul.wp-block-list li:last-child{margin-bottom:0}
#colophon p{font-size:15px;line-height:1.7;margin:0 0 12px;max-width:34ch}
#colophon .wp-block-image{margin:0 0 18px}
#colophon .wp-block-image img{border-radius:0}
#colophon .wp-block-buttons{margin-top:18px}
#colophon .wp-block-button__link{background-color:#B85A1E;color:#FFFFFF;font-size:15px;padding:13px 26px}
#colophon .wp-block-button__link:hover{background-color:#EB823F;color:#33261E}
#colophon .site-bottom-footer-wrap .site-footer-row-container-inner{border-top:1px solid rgba(245,237,228,.16)}
#colophon .footer-html{color:#B9A99C;font-size:14px;line-height:1.7}
#colophon .footer-navigation .menu>li>a{color:#E4D9CE;font-size:14px}
#colophon .widget{margin-bottom:0}
@media (max-width:880px){#colophon p{max-width:none}#colophon .site-footer-section{margin-bottom:34px}}

/* Footer bottom bar */
#colophon .site-bottom-footer-inner-wrap{padding-top:22px;padding-bottom:22px;align-items:center}
#colophon .site-footer-section .footer-html{text-align:left;margin:0}
#colophon .site-bottom-footer-wrap .site-footer-section:last-child{justify-content:flex-end}
#colophon .footer-navigation ul{display:flex;flex-wrap:wrap;gap:6px 22px;margin:0;padding:0;list-style:none;justify-content:flex-end}
#colophon .footer-navigation .menu>li>a{color:#B9A99C;font-size:14px;padding:0}
#colophon .footer-navigation .menu>li>a:hover{color:#EB823F}
@media (max-width:880px){#colophon .site-bottom-footer-inner-wrap{text-align:left}#colophon .footer-navigation ul{justify-content:flex-start;margin-top:14px}#colophon .site-bottom-footer-wrap .site-footer-section:last-child{justify-content:flex-start}}

/* Outline buttons on the espresso band */
/* #B85A1E is only 3.1:1 on #33261E, so dark bands use the brighter brand orange */
.pomm-deep .wp-block-button.is-style-outline>.wp-block-button__link,.pomm-deep .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color){color:#EB823F;border-color:#EB823F;background-color:transparent}
.pomm-deep .wp-block-button.is-style-outline>.wp-block-button__link:hover{background-color:#EB823F;color:#33261E;border-color:#EB823F}
.pomm-deep a:not(.wp-block-button__link):not(.kb-button){color:#EB823F}

/* Text contrast: accent as TEXT needs the deeper orange */
/* #B85A1E is 4.29:1 on #FAF5EF and 3.74:1 on #EFE5D9, both under AA.
   #95460F is 6.1:1 and 5.3:1. Solid buttons keep #B85A1E because white on it is 4.67:1. */
.entry-content a:not(.wp-block-button__link):not(.kb-button),
.site-main a:not(.wp-block-button__link):not(.kb-button),
.entry-content p a,.entry-content li a{color:#95460F}
.entry-content a:not(.wp-block-button__link):hover,.site-main a:not(.wp-block-button__link):hover{color:#6F340A}
.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color),.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color){color:#95460F;border-color:#95460F}
.wp-block-button.is-style-outline>.wp-block-button__link:hover{background-color:#95460F;color:#FFFFFF;border-color:#95460F}
.entry-content .pomm-row h3 a{color:#2A211C}
.entry-content .pomm-row h3 a:hover{color:#95460F}

/* Dark bands keep the brighter brand orange, restated so they win the cascade */
.pomm-deep a:not(.wp-block-button__link):not(.kb-button),.pomm-deep .entry-content a:not(.wp-block-button__link){color:#EB823F}
.pomm-deep a:not(.wp-block-button__link):hover{color:#F5A96F}
.pomm-deep .wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color),.pomm-deep .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-text-color){color:#EB823F;border-color:#EB823F;background-color:transparent}
.pomm-deep .wp-block-button.is-style-outline>.wp-block-button__link:hover{background-color:#EB823F;color:#33261E;border-color:#EB823F}
#colophon a{color:#E4D9CE}
#colophon a:hover{color:#EB823F}


/* ---------------------------------------------------------------
   Mobile booking bar.

   Book Now is the primary action everywhere. Under 880px it follows
   the visitor down the page, with the phone as the secondary. The
   shadow here is the one the direction permits, tinted to the ground
   rather than black. Markup is printed by pomm_book_bar() in
   functions.php.
   --------------------------------------------------------------- */

.pomm-book-bar{display:none}

@media (max-width:880px){
  .pomm-book-bar{
    display:flex;
    position:fixed;
    left:0;right:0;bottom:0;
    z-index:200;
    gap:14px;
    padding:10px 24px calc(10px + env(safe-area-inset-bottom, 0px));
    background-color:#FAF5EF;
    box-shadow:0 -8px 24px rgba(51,38,30,.12);
  }
  .pomm-book-bar a{
    flex:1;
    text-align:center;
    font-family:Figtree,system-ui,sans-serif;
    font-weight:600;
    font-size:15px;
    padding:13px 16px;
    border-radius:999px;
    text-decoration:none;
  }
  .pomm-book-bar__primary{background-color:#B85A1E;color:#FFFFFF;border:1px solid #B85A1E}
  .pomm-book-bar__primary:hover,.pomm-book-bar__primary:focus{background-color:#95460F;border-color:#95460F;color:#FFFFFF}
  .pomm-book-bar__secondary{background-color:transparent;color:#2A211C;border:1px solid #95460F}
  body{padding-bottom:78px}
}


/* Map embed. Rounded to the photography radius so it reads as an image. */
.pomm-map{border-radius:36px;overflow:hidden;line-height:0;background-color:#EFE5D9}
.pomm-map iframe{display:block;width:100%;height:460px;border:0}
@media (max-width:880px){.pomm-map iframe{height:320px}}

/* The attribution under a quote stays muted Figtree, not the quote's serif. */
.pomm-quote p.pomm-label{font-family:Figtree,system-ui,sans-serif;font-style:normal;font-size:13px;font-weight:600;line-height:1.4;letter-spacing:.08em;text-transform:uppercase;color:var(--pomm-muted);max-width:none}

/* Live Google rating. The score carries the weight, the detail stays quiet. */
.pomm-rating{display:flex;align-items:baseline;gap:14px}
.pomm-rating__score{font-family:var(--pomm-font-heading,Newsreader,Georgia,serif);font-size:52px;line-height:1;color:var(--pomm-accent)}
.pomm-rating__detail{font-size:15px;line-height:1.6;color:var(--pomm-muted)}
.entry-content p.pomm-rating-wrap{max-width:none;margin-bottom:0}

/* Collapse the rating slot entirely when Google returns nothing, so an
   unreachable API leaves no gap in the section. */
.entry-content p.pomm-rating-wrap:empty{display:none;margin:0}

/* Footer social icons. Ink on the espresso band, brand orange on hover,
   matching the other footer links rather than each network's own colour. */
#colophon .footer-social-wrap{margin-top:18px}
#colophon .footer-social-wrap .social-button{color:#E4D9CE;border:0;background:transparent;padding:0 14px 0 0}
#colophon .footer-social-wrap .social-button:hover,#colophon .footer-social-wrap .social-button:focus-visible{color:#EB823F;background:transparent}

/* Back to top. Kadence's own scroll-to-top button, bottom right. Brand orange
   with white arrow (#B85A1E on white passes AA). On small screens it is lifted
   clear of the fixed mobile booking bar. */
a#kt-scroll-up.scroll-up-wrap{background:#B85A1E;color:#fff;border:0;border-radius:50%;box-shadow:0 4px 14px rgba(51,38,3,.25)}
a#kt-scroll-up.scroll-up-wrap:hover,a#kt-scroll-up.scroll-up-wrap:focus-visible{background:#95460F;color:#fff;border:0}
@media (max-width:880px){a#kt-scroll-up.scroll-up-wrap{bottom:calc(88px + env(safe-area-inset-bottom, 0px))}}

/* Price list tables (seniors massage). Two columns, hairline rows, price right aligned. */
.entry-content .pomm-prices{max-width:560px;margin-top:24px}
.entry-content .pomm-prices table{width:100%;border-collapse:collapse;border:0}
.entry-content .pomm-prices th,.entry-content .pomm-prices td{padding:14px 0;border:0;border-bottom:1px solid var(--pomm-line);font-size:18px;text-align:left;background:transparent}
.entry-content .pomm-prices th{font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--pomm-muted)}
.entry-content .pomm-prices th:last-child,.entry-content .pomm-prices td:last-child{text-align:right;font-variant-numeric:tabular-nums}
.entry-content .pomm-prices td:last-child{font-weight:600;color:var(--pomm-ink)}

/* Outline button hover. Kadence's .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background):hover sets a transparent background at five classes, which beat the fill below and left white text on cream. These selectors sit above it. Light bands fill brown with white text; the espresso band fills brand orange with dark text. Focus gets the same treatment as hover. */
.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background):not(.has-text-color):hover,.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background):not(.has-text-color):focus-visible{background-color:#95460F;color:#FFFFFF;border-color:#95460F}
.pomm-deep .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background):not(.has-text-color):hover,.pomm-deep .wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background):not(.has-text-color):focus-visible{background-color:#EB823F;color:#33261E;border-color:#EB823F}
/* Buttons never underline on hover. The footer link rule was adding one to the footer Book Now. */
#colophon .wp-block-button__link:hover,#colophon .wp-block-button__link:focus-visible{text-decoration:none}

/* Tandem price table: middle column right aligned like the price column. */
.entry-content .pomm-prices-3 th:nth-child(2),.entry-content .pomm-prices-3 td:nth-child(2){text-align:right;font-variant-numeric:tabular-nums;padding-right:24px}
.entry-content .pomm-prices-3{max-width:640px}

/* POMM: Complianz opt-out banner Deny. Complianz hides .cmplz-deny in its Canada (opt-out) banner. The privacy policy promises a cookie choice, so show it. Remove this block to restore the plugin default. Added 10 October 2026. */
.cmplz-cookiebanner .cmplz-buttons .cmplz-btn.cmplz-deny {
	display: inline-block !important;
}
