/* ==========================================================================
   BeThree Child – kokkali – global stylesheet
   1 Reset (parent theme reset, inlined)   2 Fonts & tokens   3 Base & typography
   4 Layout (.be_row, grid)                5 Header & navigation
   6 Components (buttons, eyebrow, links, portrait, facts, rows, cards, FAQ, prose)
   7 Page head & breadcrumb                8 Forms (Contact Form 7)
   9 CTA band                              10 Footer & floating call
   Per-page rules live in assets/css/pages/{template}.css.
   ========================================================================== */

/* 1 Reset ----------------------------------------------------------------- */
html,body,div,span,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strong,sub,sup,var,b,u,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,details,figure,figcaption,footer,header,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}
article,aside,details,figcaption,figure,footer,header,menu,nav,section,main{display:block}
*,*::before,*::after{box-sizing:border-box}
*{-webkit-tap-highlight-color:transparent}
ol,ul{list-style:none}
table{border-collapse:collapse;border-spacing:0}
img,svg,video{display:block;max-width:100%}
img{height:auto}
button,input,select,textarea{font:inherit;color:inherit;margin:0}
button{background:none;border:0;padding:0;cursor:pointer}
a{color:inherit;text-decoration:none}
a[href^="tel"]{color:inherit}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.skip-link:focus{clip:auto!important;clip-path:none;background:#6B1D34;color:#F8F4F0;display:block;font-size:.875rem;font-weight:600;height:auto;left:8px;top:8px;padding:14px 20px;width:auto;z-index:100000}

/* 2 Fonts & tokens -------------------------------------------------------- */
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/source-serif-4.woff2) format("woff2")}
@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/source-serif-4-italic.woff2) format("woff2")}
@font-face{font-family:"Commissioner";font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/commissioner.woff2) format("woff2")}
/* Metric-matched fallbacks: the swap from the system font does not move the layout. */
@font-face{font-family:"Serif Fallback";src:local("Georgia");size-adjust:97%;ascent-override:96%;descent-override:28%;line-gap-override:0%}
@font-face{font-family:"Sans Fallback";src:local("Arial");size-adjust:104%;ascent-override:94%;descent-override:24%;line-gap-override:0%}

:root{
	--be-paper:#F8F4F0;
	--be-paper-2:#F0E9E3;
	--be-surface:#FDFBF9;
	--be-ink:#201619;
	--be-muted:#62565A;
	--be-primary:#6B1D34;
	--be-primary-deep:#521426;
	--be-deep:#2A1018;
	--be-line:#DED4CC;
	--be-line-dark:rgba(248,244,240,.2);
	--be-accent:#B9694F;
	--be-accent-ink:#8A4631;
	--be-accent-light:#E3AA94;
	--be-error:#9B2C1F;

	--be-serif:"Source Serif 4","Serif Fallback",Georgia,"Times New Roman",serif;
	--be-sans:"Commissioner","Sans Fallback",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;

	--be-h1:clamp(2.25rem,7.6vw,2.75rem);
	--be-h1-hero:clamp(2.5rem,9vw,3.25rem);
	--be-h2:clamp(1.75rem,6vw,2.125rem);
	--be-h3:1.3125rem;
	--be-lead:1.125rem;
	--be-body:1.0625rem;

	--be-pad-x:20px;
	--be-pad-y:60px;
	--be-gap:16px;
	--be-header-h:68px;
	--be-ease:cubic-bezier(.2,.6,.2,1);
}
@media (min-width:768px){
	:root{
		--be-pad-x:60px;--be-pad-y:88px;--be-gap:24px;
		--be-h1:clamp(2.75rem,5vw,3.5rem);--be-h1-hero:clamp(3rem,6.4vw,4.25rem);--be-h2:clamp(2rem,3.6vw,2.5rem);--be-h3:1.4375rem;--be-lead:1.1875rem;
	}
}
@media (min-width:1200px){
	:root{
		--be-pad-x:clamp(60px,5.208vw,6.25rem);--be-pad-y:clamp(96px,6.77vw,8.125rem);--be-gap:clamp(24px,1.667vw,2rem);
		--be-h1:clamp(3.25rem,3.54vw,4.25rem);--be-h1-hero:clamp(3.75rem,4.48vw,5.375rem);--be-h2:clamp(2.25rem,2.6vw,3.125rem);--be-h3:clamp(1.375rem,1.36vw,1.625rem);--be-lead:clamp(1.1875rem,1.15vw,1.375rem);--be-body:1.125rem;
		--be-header-h:5rem;
	}
}
/* Above the 1920 design width everything keeps its proportions (rem-based sizes). */
@media (min-width:1921px){html{font-size:calc(100vw / 120)}}

/* 3 Base & typography ----------------------------------------------------- */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--be-header-h) + 24px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{background:var(--be-paper);color:var(--be-ink);font-family:var(--be-sans);font-size:var(--be-body);line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--be-serif);font-weight:500;color:var(--be-ink);text-wrap:balance}
h1{font-size:var(--be-h1);line-height:1.06;letter-spacing:-.018em}
h2{font-size:var(--be-h2);line-height:1.12;letter-spacing:-.014em}
h3{font-size:var(--be-h3);line-height:1.25;letter-spacing:-.006em}
h4{font-size:1.125rem;line-height:1.35;font-weight:600}
p{text-wrap:pretty}
strong,b{font-weight:600}
em,i{font-style:italic}
::selection{background:var(--be-primary);color:var(--be-paper)}
:focus-visible{outline:2px solid var(--be-primary);outline-offset:3px;border-radius:1px}
.be_on-dark :focus-visible{outline-color:var(--be-accent-light)}

/* 4 Layout ---------------------------------------------------------------- */
.be_row{padding:var(--be-pad-y) var(--be-pad-x)}
.be_row--tight{padding-top:calc(var(--be-pad-y) * .62);padding-bottom:calc(var(--be-pad-y) * .62)}
.be_row--flush-top{padding-top:0}
.be_row--alt{background:var(--be-paper-2)}
.be_row--dark{background:var(--be-deep);color:var(--be-paper)}
.be_row--dark h2,.be_row--dark h3{color:var(--be-paper)}
.be_grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--be-gap);row-gap:40px}
.be_grid>*{grid-column:1/-1}
.be_rule{border:0;border-top:1px solid var(--be-line);margin:0}

/* Section heading block: eyebrow, h2, optional text. */
.be_sechead{display:grid;gap:1rem;align-content:start}
.be_sechead-text{color:var(--be-muted);font-size:var(--be-lead);line-height:1.55;max-width:34em}
.be_row--dark .be_sechead-text{color:rgba(248,244,240,.8)}

/* 5 Header & navigation --------------------------------------------------- */
.be_site-header{position:sticky;top:0;z-index:50;background:var(--be-paper);border-bottom:1px solid var(--be-line)}
.be_site-header-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--be-header-h);padding:0 var(--be-pad-x)}
.be_site-header-logo a{display:block}
.be_site-header-logo-img{height:38px;width:auto}
.be_menu-toggle{position:relative;width:44px;height:44px;margin-right:-10px;display:grid;place-content:center;gap:7px}
.be_menu-toggle-bar{display:block;width:24px;height:1.5px;background:var(--be-ink);transition:transform .3s var(--be-ease)}
.be_menu-open .be_menu-toggle-bar:nth-child(2){transform:translateY(4.25px) rotate(45deg)}
.be_menu-open .be_menu-toggle-bar:nth-child(3){transform:translateY(-4.25px) rotate(-45deg)}

/* Mobile / tablet: full-height panel under the bar. */
.be_menu{position:fixed;inset:var(--be-header-h) 0 0 0;background:var(--be-paper);padding:12px var(--be-pad-x) 40px;overflow-y:auto;display:flex;flex-direction:column;gap:32px;visibility:hidden;opacity:0;transform:translateY(-8px);transition:opacity .25s var(--be-ease),transform .25s var(--be-ease),visibility 0s .25s}
.be_menu-open .be_menu{visibility:visible;opacity:1;transform:none;transition-delay:0s}
.be_menu-open{overflow:hidden}
.be_nav-list>li{position:relative;border-bottom:1px solid var(--be-line)}
.be_nav-list>li>a{display:block;padding:18px 56px 18px 0;font-family:var(--be-serif);font-size:1.5rem;line-height:1.2;font-weight:500}
.be_nav-list .current-menu-item>a,.be_nav-list .current-menu-ancestor>a,.be_nav-list .current-page-ancestor>a{color:var(--be-primary)}
.be_submenu-toggle{position:absolute;top:8px;right:-10px;width:48px;height:48px}
.be_submenu-toggle::before,.be_submenu-toggle::after{content:"";position:absolute;top:50%;left:50%;width:14px;height:1.5px;margin:-.75px 0 0 -7px;background:var(--be-ink);transition:transform .25s var(--be-ease)}
.be_submenu-toggle::after{transform:rotate(90deg)}
.is-open>.be_submenu-toggle::after{transform:rotate(0)}
.be_dropdown{display:none;padding:0 0 18px}
.is-open>.be_dropdown{display:block}
.be_dropdown-list a{display:block;padding:9px 0 9px 18px;color:var(--be-muted);font-size:1.0625rem;border-left:1px solid var(--be-line)}
.be_dropdown-list .current-menu-item>a{color:var(--be-primary);border-left-color:var(--be-accent)}
.be_site-header-cta{align-self:flex-start}

@media (min-width:1100px){
	.be_site-header-logo-img{height:2.75rem}
	.be_menu-toggle{display:none}
	.be_menu{position:static;inset:auto;background:none;padding:0;overflow:visible;flex-direction:row;align-items:center;gap:clamp(20px,2.2vw,2.75rem);visibility:visible;opacity:1;transform:none;transition:none}
	.be_nav-list{display:flex;align-items:center;gap:clamp(18px,1.9vw,2.375rem)}
	.be_nav-list>li{border:0}
	.be_nav-list>li>a{position:relative;padding:.5rem 0;font-family:var(--be-sans);font-size:.9375rem;font-weight:500;letter-spacing:.005em;white-space:nowrap}
	.be_nav-list>li>a::after{content:"";position:absolute;left:0;right:0;bottom:.15rem;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--be-ease)}
	.be_nav-list>li:hover>a::after,.be_nav-list>li>a:focus-visible::after,.be_nav-list>.current-menu-item>a::after,.be_nav-list>.current-menu-ancestor>a::after,.be_nav-list>.current-page-ancestor>a::after{transform:scaleX(1)}
	.be_nav-list>.menu-item-has-children>a{padding-right:1rem}
	.be_nav-list>.menu-item-has-children>a::before{content:"";position:absolute;right:0;top:50%;width:.36rem;height:.36rem;margin-top:-.28rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}
	.be_nav-list>.menu-item-has-children>a::after{right:1rem}
	.be_submenu-toggle{display:none}
	/* Hover box starts right under the item; its transparent padding-top is the visual gap. */
	.be_dropdown{display:block;position:absolute;top:100%;left:-1.375rem;padding:1.05rem 0 0;visibility:hidden;opacity:0;transform:translateY(4px);transition:opacity .2s var(--be-ease),transform .2s var(--be-ease),visibility 0s .2s}
	.be_nav-list>li:hover>.be_dropdown,.be_nav-list>li:focus-within>.be_dropdown{visibility:visible;opacity:1;transform:none;transition-delay:0s}
	.be_dropdown-inner{min-width:18.5rem;padding:.5rem;background:var(--be-surface);border:1px solid var(--be-line);box-shadow:0 24px 48px -28px rgba(42,16,24,.4)}
	.be_dropdown-list a{padding:.7rem .875rem;border:0;color:var(--be-ink);font-size:.9375rem;line-height:1.35;transition:background-color .2s,color .2s}
	.be_dropdown-list a:hover,.be_dropdown-list a:focus-visible{background:var(--be-paper-2);color:var(--be-primary)}
	.be_dropdown-list .current-menu-item>a{color:var(--be-primary);font-weight:600}
	.be_site-header-cta{align-self:auto}
}

/* 6 Components ------------------------------------------------------------ */
.be_btn{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;min-height:3.25rem;padding:.875rem 1.625rem;background:var(--be-primary);color:var(--be-paper);border:1px solid var(--be-primary);border-radius:2px;font-family:var(--be-sans);font-size:.9375rem;font-weight:600;line-height:1.2;letter-spacing:.01em;text-align:center;transition:background-color .25s var(--be-ease),color .25s var(--be-ease),border-color .25s var(--be-ease)}
.be_btn:hover{background:var(--be-primary-deep);border-color:var(--be-primary-deep)}
.be_btn--small{min-height:2.75rem;padding:.625rem 1.25rem;font-size:.875rem}
.be_btn--ghost{background:transparent;color:var(--be-primary)}
.be_btn--ghost:hover{background:var(--be-primary);color:var(--be-paper)}
.be_btn--light{background:var(--be-paper);border-color:var(--be-paper);color:var(--be-deep)}
.be_btn--light:hover{background:var(--be-accent-light);border-color:var(--be-accent-light);color:var(--be-deep)}
.be_btn--arrow::after{content:"";width:1.125rem;height:.75rem;flex:none;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12'%3E%3Cpath d='M0 6h16M11 1l5 5-5 5' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 12'%3E%3Cpath d='M0 6h16M11 1l5 5-5 5' fill='none' stroke='%23000' stroke-width='1.6'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .3s var(--be-ease)}
.be_btn--arrow:hover::after{transform:translateX(4px)}
.be_btn[disabled]{opacity:.55;cursor:not-allowed}

/* Text link with arrow. */
.be_link{display:inline-flex;align-items:center;gap:.625rem;font-weight:600;font-size:.9375rem;color:var(--be-primary);padding:.375rem 0;border-bottom:1px solid currentColor;transition:gap .3s var(--be-ease),color .2s}
.be_link:hover{gap:.9375rem}
.be_link .be_icon{flex:none}
.be_row--dark .be_link{color:var(--be-paper)}

/* Eyebrow: uppercase label preceded by the accent dot of the logo. */
.be_eyebrow{display:flex;align-items:center;gap:.625rem;font-family:var(--be-sans);font-size:.75rem;font-weight:600;line-height:1.3;letter-spacing:.14em;text-transform:uppercase;color:var(--be-accent-ink)}
.be_eyebrow::before{content:"";width:.4375rem;height:.4375rem;border-radius:50%;background:var(--be-accent);flex:none}
.be_row--dark .be_eyebrow{color:var(--be-accent-light)}
.be_row--dark .be_eyebrow::before{background:var(--be-accent-light)}

/* Portrait (doctor photo or monogram panel). */
.be_portrait{position:relative;aspect-ratio:4/5;background:var(--be-paper-2);overflow:hidden}
.be_portrait-img{width:100%;height:100%;object-fit:cover;object-position:center top}
.be_portrait--empty{display:grid;place-items:center;border:1px solid var(--be-line)}
.be_portrait-mono{width:46%;height:auto;opacity:.9}
.be_figcaption{margin-top:.875rem;font-size:.8125rem;line-height:1.45;color:var(--be-muted)}

/* Facts: label / value pairs separated by hairlines. */
.be_facts{display:grid;border-top:1px solid var(--be-line)}
.be_fact{padding:1.125rem 0;border-bottom:1px solid var(--be-line);display:grid;gap:.25rem;align-content:start}
.be_fact dt{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--be-muted)}
.be_fact dd{font-family:var(--be-serif);font-size:1.125rem;line-height:1.35}

/* Row links: large serif title, text, arrow – used for the conditions lists. */
.be_rows{border-top:1px solid var(--be-ink)}
.be_rowlink{position:relative;display:grid;grid-template-columns:1fr auto;gap:.5rem 1.25rem;align-items:start;padding:1.75rem 0;border-bottom:1px solid var(--be-line);transition:padding .35s var(--be-ease),background-color .35s var(--be-ease)}
.be_rowlink-title{font-family:var(--be-serif);font-size:clamp(1.5rem,5.4vw,1.875rem);font-weight:500;line-height:1.15;letter-spacing:-.012em}
.be_rowlink-title a::after{content:"";position:absolute;inset:0}
.be_rowlink-text{grid-column:1/-1;color:var(--be-muted);max-width:38em}
.be_rowlink-arrow{grid-row:1;grid-column:2;width:2.75rem;height:2.75rem;display:grid;place-items:center;border:1px solid var(--be-line);border-radius:50%;color:var(--be-primary);transition:background-color .3s var(--be-ease),color .3s var(--be-ease),border-color .3s var(--be-ease)}
.be_rowlink:hover .be_rowlink-arrow{background:var(--be-primary);border-color:var(--be-primary);color:var(--be-paper)}
.be_rowlink:hover .be_rowlink-title{color:var(--be-primary)}

/* Post card. */
.be_card{position:relative;display:flex;flex-direction:column}
.be_card-media{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--be-paper-2)}
.be_card-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--be-ease)}
.be_card:hover .be_card-media img{transform:scale(1.03)}
.be_card-body{padding-top:1.25rem;display:grid;gap:.625rem}
.be_card-meta{display:flex;flex-wrap:wrap;gap:.375rem .875rem;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--be-muted)}
.be_card-meta span+span::before{content:"·";margin-right:.875rem;color:var(--be-accent)}
.be_card-title{font-size:clamp(1.3125rem,1.36vw,1.625rem);line-height:1.2}
.be_card-title a::after{content:"";position:absolute;inset:0}
.be_card:hover .be_card-title{color:var(--be-primary)}
.be_card-text{color:var(--be-muted);font-size:1rem;line-height:1.6}
.be_cards{display:grid;gap:48px var(--be-gap)}

/* FAQ (native <details>). */
.be_faq{border-top:1px solid var(--be-ink)}
.be_faq-item{border-bottom:1px solid var(--be-line)}
.be_faq-q{position:relative;display:block;padding:1.375rem 3.25rem 1.375rem 0;font-family:var(--be-serif);font-size:clamp(1.1875rem,1.25vw,1.4375rem);font-weight:500;line-height:1.3;cursor:pointer;list-style:none;transition:color .2s}
.be_faq-q::-webkit-details-marker{display:none}
.be_faq-q:hover{color:var(--be-primary)}
.be_faq-q::before,.be_faq-q::after{content:"";position:absolute;right:.5rem;top:50%;width:1rem;height:1.5px;background:var(--be-primary);transition:transform .3s var(--be-ease)}
.be_faq-q::after{transform:rotate(90deg)}
.be_faq-item[open] .be_faq-q::after{transform:rotate(0)}
.be_faq-a{padding:0 3.25rem 1.625rem 0;max-width:46em;color:var(--be-muted)}

/* Prose: long text from wysiwyg fields and post content. */
.be_prose>*+*{margin-top:1.15em}
.be_prose p,.be_prose li{max-width:42em}
.be_prose h2{margin-top:2.2em;font-size:clamp(1.625rem,2vw,2.375rem)}
.be_prose h3{margin-top:1.9em;font-size:var(--be-h3)}
.be_prose h2+*,.be_prose h3+*{margin-top:.8em}
.be_prose a{color:var(--be-primary);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.be_prose a:hover{text-decoration-thickness:2px}
.be_prose ul,.be_prose ol{display:grid;gap:.55em;padding-left:1.375em}
.be_prose ul>li{position:relative}
.be_prose ul>li::before{content:"";position:absolute;left:-1.25em;top:.68em;width:.375em;height:.375em;border-radius:50%;background:var(--be-accent)}
.be_prose ol{list-style:decimal;padding-left:1.5em}
.be_prose ol>li::marker{color:var(--be-accent-ink);font-weight:600;font-family:var(--be-serif)}
.be_prose blockquote{padding-left:1.5rem;border-left:2px solid var(--be-accent);font-family:var(--be-serif);font-style:italic;font-size:1.25em;line-height:1.45}
.be_prose strong{font-weight:600;color:var(--be-ink)}
.be_lead{font-size:var(--be-lead);line-height:1.55;color:var(--be-ink)}
.be_lead>*+*{margin-top:.9em}

/* Numbered steps (real sequences only). */
.be_steps{display:grid;gap:0;counter-reset:step;border-top:1px solid var(--be-line)}
.be_step{counter-increment:step;display:grid;grid-template-columns:3rem 1fr;gap:.25rem 1rem;padding:1.5rem 0;border-bottom:1px solid var(--be-line)}
.be_step::before{content:counter(step,decimal-leading-zero);grid-row:1/3;font-family:var(--be-serif);font-size:1.0625rem;color:var(--be-accent-ink);padding-top:.15em}
.be_step-title{font-family:var(--be-serif);font-size:var(--be-h3);font-weight:500;line-height:1.25}
.be_step-text{grid-column:2;color:var(--be-muted)}
.be_row--dark .be_steps,.be_row--dark .be_step{border-color:var(--be-line-dark)}
.be_row--dark .be_step::before{color:var(--be-accent-light)}
.be_row--dark .be_step-text{color:rgba(248,244,240,.78)}

/* Simple check list. */
.be_ticks{display:grid;gap:.75rem}
.be_ticks li{position:relative;padding-left:1.75rem;max-width:40em}
.be_ticks li::before{content:"";position:absolute;left:0;top:.5em;width:.875rem;height:.5rem;border-left:1.5px solid var(--be-accent-ink);border-bottom:1.5px solid var(--be-accent-ink);transform:rotate(-45deg)}

/* 7 Page head & breadcrumb ------------------------------------------------ */
.be_breadcrumb-list{display:flex;flex-wrap:wrap;gap:.25rem .625rem;font-size:.8125rem;line-height:1.4;color:var(--be-muted)}
.be_breadcrumb-list li+li::before{content:"/";margin-right:.625rem;color:var(--be-line)}
.be_breadcrumb-list a{transition:color .2s}
.be_breadcrumb-list a:hover{color:var(--be-primary);text-decoration:underline;text-underline-offset:.2em}
.be_breadcrumb-list [aria-current]{color:var(--be-ink)}
.be_pagehead{padding:28px var(--be-pad-x) calc(var(--be-pad-y) * .55)}
.be_pagehead-inner{display:grid;gap:1.125rem;margin-top:clamp(36px,4.2vw,5rem)}
.be_pagehead-intro{font-size:var(--be-lead);line-height:1.55;color:var(--be-muted);max-width:40em}
.be_pagehead-intro>*+*{margin-top:.9em}
@media (min-width:1200px){
	.be_pagehead-inner{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--be-gap)}
	.be_pagehead-inner>*{grid-column:1/9}
	.be_pagehead-inner>.be_pagehead-intro{grid-column:1/8}
}

/* Wide image band under a page head. */
.be_band{margin:0 var(--be-pad-x);aspect-ratio:3/2;overflow:hidden;background:var(--be-paper-2)}
.be_band img{width:100%;height:100%;object-fit:cover}
@media (min-width:768px){.be_band{aspect-ratio:1720/560}}

/* 8 Forms ----------------------------------------------------------------- */
.wpcf7 form{display:grid;grid-template-columns:1fr;gap:1.25rem var(--be-gap)}
.wpcf7 form>*{grid-column:1/-1;min-width:0}
.wpcf7 form>.hidden-fields-container,.wpcf7 form>fieldset.hidden-fields-container{display:none}
.be_field{display:grid;gap:.5rem}
.be_field label,.be_field .be_label{font-size:.8125rem;font-weight:600;letter-spacing:.02em;color:var(--be-ink)}
.be_field label small{font-weight:400;color:var(--be-muted);font-size:1em}
.wpcf7-form-control-wrap{display:block}
.be_field input[type="text"],.be_field input[type="email"],.be_field input[type="tel"],.be_field input[type="date"],.be_field select,.be_field textarea{width:100%;min-height:3.25rem;padding:.8125rem 1rem;background:var(--be-surface);border:1px solid var(--be-line);border-radius:2px;font-size:1rem;line-height:1.4;color:var(--be-ink);transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.be_field textarea{min-height:9.5rem;resize:vertical}
.be_field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23201619' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:.75rem;padding-right:2.5rem}
.be_field input:hover,.be_field select:hover,.be_field textarea:hover{border-color:#BFB2A8}
.be_field input:focus,.be_field select:focus,.be_field textarea:focus{outline:none;border-color:var(--be-primary);box-shadow:0 0 0 3px rgba(107,29,52,.14)}
.be_field ::placeholder{color:#93878A;opacity:1}
.be_field--consent{font-size:.875rem;line-height:1.5;color:var(--be-muted)}
.be_field--consent .wpcf7-list-item{margin:0;display:block}
.be_field--consent label{display:grid;grid-template-columns:1.25rem 1fr;gap:.75rem;align-items:start;font-size:inherit;font-weight:400;letter-spacing:0;color:inherit;cursor:pointer}
.be_field--consent input[type="checkbox"]{-webkit-appearance:none;appearance:none;width:1.25rem;height:1.25rem;margin:.1em 0 0;background:var(--be-surface);border:1px solid #A3979A;border-radius:2px;display:grid;place-content:center;cursor:pointer}
.be_field--consent input[type="checkbox"]:checked{background:var(--be-primary);border-color:var(--be-primary)}
.be_field--consent input[type="checkbox"]:checked::after{content:"";width:.6rem;height:.35rem;border-left:2px solid var(--be-paper);border-bottom:2px solid var(--be-paper);transform:translateY(-1px) rotate(-45deg)}
.be_field--consent a{color:var(--be-primary);text-decoration:underline;text-underline-offset:.2em}
.be_field--submit{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}
.wpcf7-not-valid-tip{display:block;margin-top:.375rem;font-size:.8125rem;color:var(--be-error)}
.wpcf7-not-valid{border-color:var(--be-error)!important}
.wpcf7-spinner{display:none}
.wpcf7 form.submitting .be_btn{opacity:.6;pointer-events:none}
.wpcf7-response-output{display:none;padding:1rem 1.25rem;border:1px solid var(--be-line);border-left:3px solid var(--be-primary);background:var(--be-surface);font-size:.9375rem}
.wpcf7 form.sent .wpcf7-response-output,.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.aborted .wpcf7-response-output{display:block}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.aborted .wpcf7-response-output{border-left-color:var(--be-error)}
.wpcf7 .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;padding:0;border:0}
@media (min-width:768px){
	.wpcf7 form{grid-template-columns:1fr 1fr}
	.wpcf7 form>.be_field--half{grid-column:auto}
}

/* 9 CTA band -------------------------------------------------------------- */
.be_cta{background:var(--be-paper-2);border-top:1px solid var(--be-line)}
.be_cta-inner{display:grid;gap:40px}
.be_cta-title{max-width:14em}
.be_cta-text{margin-top:1.125rem;color:var(--be-muted);font-size:var(--be-lead);line-height:1.55;max-width:32em}
.be_cta-actions{margin-top:2rem;display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:center}
.be_contact-list{display:grid;border-top:1px solid var(--be-line)}
.be_contact-item{display:grid;grid-template-columns:1.5rem 1fr;gap:.25rem 1rem;padding:1.125rem 0;border-bottom:1px solid var(--be-line)}
.be_contact-item .be_icon{color:var(--be-primary);margin-top:.2em}
.be_contact-label{font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--be-muted)}
.be_contact-value{grid-column:2;font-family:var(--be-serif);font-size:1.1875rem;line-height:1.4}
.be_contact-value a{transition:color .2s}
.be_contact-value a:hover{color:var(--be-primary);text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}
.be_pending{display:inline-block;margin-top:.875rem;font-size:.8125rem;color:var(--be-muted);font-style:italic}
@media (min-width:1200px){
	.be_cta-inner{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--be-gap);align-items:start}
	.be_cta-main{grid-column:1/7}
	.be_cta-side{grid-column:8/13}
}

/* 10 Footer --------------------------------------------------------------- */
.be_footer{background:var(--be-deep);color:rgba(248,244,240,.8);font-size:.9375rem;line-height:1.6}
.be_footer-inner{padding:calc(var(--be-pad-y) * .8) var(--be-pad-x) 32px}
.be_footer-columns{display:grid;gap:44px var(--be-gap)}
.be_footer-logo img{height:44px;width:auto}
.be_footer-text{margin-top:1.5rem;max-width:26em}
.be_footer-title{font-family:var(--be-sans);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--be-accent-light);margin-bottom:1.125rem}
.be_footer-list{display:grid;gap:.625rem}
.be_footer a{transition:color .2s}
.be_footer a:hover{color:var(--be-paper);text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}
.be_footer-list a,.be_footer-contact{color:var(--be-paper)}
.be_footer-contact{display:grid;gap:.875rem}
.be_footer-contact-item{display:grid;grid-template-columns:1.25rem 1fr;gap:.75rem}
.be_footer-contact-item .be_icon{margin-top:.2em;color:var(--be-accent-light)}
.be_footer-social{display:flex;gap:.625rem;margin-top:1.5rem}
.be_footer-social a{display:grid;place-items:center;width:2.5rem;height:2.5rem;border:1px solid var(--be-line-dark);border-radius:50%;color:var(--be-paper)}
.be_footer-social a:hover{background:var(--be-paper);color:var(--be-deep)}
.be_footer-disclaimer{margin-top:48px;padding-top:24px;border-top:1px solid var(--be-line-dark);font-size:.8125rem}
.be_footer-bar{margin-top:28px;padding-top:24px;border-top:1px solid var(--be-line-dark);display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;font-size:.8125rem}
.be_footer-disclaimer+.be_footer-bar{margin-top:24px}
.be_footer-legal-list{display:flex;flex-wrap:wrap;gap:8px 24px}
@media (min-width:768px){
	.be_footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1200px){
	.be_footer-columns{grid-template-columns:repeat(12,minmax(0,1fr))}
	.be_footer-col--brand{grid-column:1/5}
	.be_footer-col--nav{grid-column:6/8}
	.be_footer-col--conditions{grid-column:8/11}
	.be_footer-col--contact{grid-column:11/13;min-width:15rem;justify-self:end}
	.be_footer-logo img{height:3rem}
}

.be_float-call{position:fixed;right:16px;bottom:16px;z-index:40;display:inline-flex;align-items:center;gap:.5rem;height:3rem;padding:0 1.125rem;background:var(--be-primary);color:var(--be-paper);border-radius:1.5rem;font-size:.875rem;font-weight:600;box-shadow:0 10px 24px -10px rgba(42,16,24,.55)}
@media (min-width:1100px){.be_float-call{display:none}}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
@media print{.be_site-header,.be_footer,.be_cta,.be_float-call{display:none}body{background:#fff}}
