/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/
/* ClienteFeliz local design study. Bogart Trial must be replaced by a licensed webfont before publication. */
@font-face{font-family:'Bogart';src:url('assets/Bogart-Bold-trial.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
/* Bogart Trial maps every digit to a placeholder. Fraunces-derived numerals cover only 0-9. */
@font-face{font-family:'Bogart';src:url('assets/cf-numerals-bold.woff2?v=2') format('woff2');font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0030-0039,U+0025,U+2030}

:root{
 --cf-cream:#FEFBF6;--cf-chocolate:#5C3E34;--cf-chocolate-light:#9B7463;--cf-blue:#376BFF;--cf-dark:#201512;
 --cf-action-blue:#3468FA;--cf-action-blue-hover:#2858D7;
 --cf-paper:color-mix(in srgb,var(--cf-chocolate) 6%,var(--cf-cream));
 --cf-paper-deep:color-mix(in srgb,var(--cf-chocolate) 12%,var(--cf-cream));
 --cf-paper-grain:url('assets/paper-grain.svg?v=2');
 --cf-display:'Bogart',Georgia,serif;
 --cf-text:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
 --cf-frame:1240px;--cf-gutter:clamp(20px,4vw,64px);--cf-radius:20px;
}
html{scroll-behavior:smooth;scroll-padding-top:32px}
body{background:var(--cf-cream);color:var(--cf-chocolate);font-family:var(--cf-text);font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased}
::selection{background:var(--cf-chocolate);color:var(--cf-cream)}
:focus-visible{outline:3px solid var(--cf-blue);outline-offset:5px}
h1,h2,h3,h4,h5,h6{font-family:var(--cf-display);font-weight:700;letter-spacing:-.035em;color:inherit;text-wrap:balance;font-synthesis:none}
a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1.5px}
a:hover{text-decoration-color:var(--cf-blue)}
button,input,textarea,select{font-family:var(--cf-text)}
#brxe-cfhead{padding:26px var(--cf-gutter);background:var(--cf-cream)}
#brxe-cfhrow{width:100%;max-width:var(--cf-frame);display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:24px}
#brxe-cflogo,#brxe-cffbrand{display:inline-block;width:auto;flex-shrink:0;font-family:var(--cf-display);font-weight:700;font-size:34px;line-height:1.15;letter-spacing:-.045em;white-space:nowrap;text-decoration:none;min-height:44px}
#brxe-cflogo .cf-brand-cliente{color:var(--cf-chocolate)}
#brxe-cflogo .cf-brand-feliz{color:var(--cf-chocolate-light)}
#brxe-cfhnav{display:flex;flex-direction:row;align-items:center;gap:32px;width:auto;font-size:16px;font-weight:600}
#brxe-cfhnav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
#brxe-cfhnav a:hover{text-decoration:underline;text-decoration-color:var(--cf-blue)}
#brxe-cfsect{padding:58px var(--cf-gutter) 112px;background:var(--cf-cream)}
#brxe-cfwrap{width:100%;max-width:var(--cf-frame);gap:0}
#brxe-cftitl{font-size:clamp(48px,6.5vw,96px);line-height:.98;max-width:1050px;margin:0 0 42px}
#brxe-cfbody{width:100%;min-width:0;overflow-wrap:break-word;font-family:var(--cf-text);font-size:19px;line-height:1.7}
#brxe-cfbody p{margin:0 0 22px;max-width:72ch;text-wrap:pretty}
#brxe-cfbody a{text-decoration:underline}
#brxe-cfbody h2{font-size:clamp(32px,3.7vw,48px);line-height:1.05;margin:0 0 26px;max-width:28ch}
#brxe-cfbody h3{font-size:clamp(25px,2.4vw,32px);line-height:1.12;margin:0 0 18px}
#brxe-cfbody ul,#brxe-cfbody ol{padding-left:1.2em;margin:20px 0 26px}
#brxe-cfbody li{margin-bottom:10px}
#brxe-cfbody .cf-block{margin-block:0 80px}
#brxe-cfbody .cf-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:72px;align-items:start;padding:0 0 16px}
#brxe-cfbody .cf-intro-copy p:first-child{font-size:clamp(22px,2.25vw,28px);line-height:1.45;max-width:30ch;margin-bottom:24px}
#brxe-cfbody .cf-kit{padding:32px 36px;background:var(--cf-paper);border-radius:var(--cf-radius)}
#brxe-cfbody .cf-kit h2{font-size:28px;margin-bottom:24px}
#brxe-cfbody .cf-kit ul{list-style:none;padding:0;margin:0 0 24px}
#brxe-cfbody .cf-kit li{margin:0 0 14px;font-size:17px}
#brxe-cfbody .cf-action{margin:26px 0 0}
#brxe-cfbody .cf-action a{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:13px 24px;background:var(--cf-chocolate);color:var(--cf-cream);font-size:16px;font-weight:600;border-radius:9px;text-decoration:none;transition:background .2s,transform .2s}
#brxe-cfbody .cf-action a:hover{background:var(--cf-dark);transform:translateY(-2px)}
#brxe-cfbody .cf-example{background:var(--cf-chocolate);color:var(--cf-cream);border-radius:var(--cf-radius);padding:clamp(24px,4vw,56px)}
#brxe-cfbody .cf-example .wp-block-group__inner-container>p{max-width:65ch}
#brxe-cfbody .cf-example .wp-block-group__inner-container>p:nth-of-type(2){font-size:15px;margin-bottom:32px}
#brxe-cfbody .cf-moments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-block:30px 40px;align-items:start}
#brxe-cfbody .wp-block-details{background:var(--cf-paper);color:var(--cf-chocolate);padding:24px 28px;border:0;border-radius:12px;margin:0}
#brxe-cfbody .wp-block-details summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;min-height:44px;font-weight:650;font-size:18px;line-height:1.4;list-style:none}
#brxe-cfbody .wp-block-details summary::-webkit-details-marker{display:none}
#brxe-cfbody .wp-block-details summary::after{content:'+';font:400 28px/1 var(--cf-text);flex-shrink:0}
#brxe-cfbody .wp-block-details[open] summary::after{content:'−'}
#brxe-cfbody .wp-block-details[open] summary{margin-bottom:22px}
#brxe-cfbody .wp-block-details p{font-size:17px;line-height:1.65;margin-bottom:16px}
#brxe-cfbody .wp-block-details p:last-child{margin-bottom:0}
#brxe-cfbody .cf-moments .wp-block-details[open]{grid-column:1/-1;background:var(--cf-cream)}
#brxe-cfbody .cf-moments .wp-block-details[open]>p{max-width:85ch}
#brxe-cfbody .cf-step{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;background:var(--cf-paper);padding:34px 38px;border-radius:14px;margin:0 0 12px}
#brxe-cfbody .cf-step:nth-of-type(even){background:var(--cf-paper-deep)}
#brxe-cfbody .cf-step h3{font-size:28px;margin:0;max-width:19ch}
#brxe-cfbody .cf-step p{margin:0;font-size:18px}
#brxe-cfbody .cf-how>.wp-block-group__inner-container>p:last-child{margin-top:28px}
#brxe-cfbody .cf-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:12px 48px}
#brxe-cfbody .cf-faq h2{grid-column:1;grid-row:1/span 5}
#brxe-cfbody .cf-faq .wp-block-details{grid-column:2;background:var(--cf-paper)}
#brxe-cfbody .cf-access{width:100%;max-width:none;padding:clamp(24px,4vw,56px);background:var(--cf-paper-deep);color:var(--cf-chocolate);border:0;border-radius:var(--cf-radius);margin:0 0 80px;display:grid;grid-template-columns:1fr 1fr;column-gap:64px;align-items:start}
#brxe-cfbody .cf-access h2{font-size:clamp(32px,3.7vw,48px);grid-column:1;margin:0 0 24px;max-width:15ch}
#brxe-cfbody .cf-access>p{grid-column:1;font-size:18px;max-width:35ch}
#brxe-cfbody .cf-access form{grid-column:2;grid-row:1/span 3}
#brxe-cfbody .cf-access-label{color:inherit;font-size:16px;margin:0 0 10px}
#brxe-cfbody .cf-access input[type=email]{background:var(--cf-cream);color:var(--cf-chocolate);border:1px solid var(--cf-chocolate);border-radius:8px;min-height:54px}
#brxe-cfbody .cf-access-consent{font-size:15px;line-height:1.6;margin:22px 0;gap:12px}
#brxe-cfbody .cf-access-consent input{accent-color:var(--cf-chocolate)}
#brxe-cfbody .cf-access-button{border:0;background:var(--cf-chocolate);color:var(--cf-cream);border-radius:9px;min-height:50px;font-size:16px;font-weight:600;padding:14px 24px;text-decoration:none;transition:background .2s,transform .2s}
#brxe-cfbody .cf-access-button:hover{background:var(--cf-dark);transform:translateY(-2px)}
/* Primary download CTA only; exploration remains chocolate. White text contrast: 4.66:1. */
.page-id-11 #brxe-cfbody .cf-access-button{background:var(--cf-action-blue);color:#fff}
.page-id-11 #brxe-cfbody .cf-access-button:hover{background:var(--cf-action-blue-hover)}
#brxe-cfbody .cf-access .cf-access-note{font-size:14px;line-height:1.6;margin:18px 0 0}
#brxe-cfbody .cf-access-error{grid-column:1/-1;color:var(--cf-dark);background:var(--cf-cream);border-left:4px solid var(--cf-blue)}
#brxe-cffoot{background:var(--cf-dark);color:var(--cf-cream);padding:56px var(--cf-gutter) 28px}
#brxe-cffrow{max-width:var(--cf-frame);width:100%;display:grid;grid-template-columns:1.3fr 1fr;gap:24px 64px;align-items:start}
#brxe-cffbrand,#brxe-cffbrand span{color:#fff}
#brxe-cffbrand .cf-brand-feliz{color:#D9C5AB}
#brxe-cffwords{grid-column:1;max-width:620px;font-family:var(--cf-display);font-weight:700;font-size:clamp(16.8px,2.16vw,26.4px);line-height:1.25;letter-spacing:-.03em}
#brxe-cfflinks{grid-column:2;grid-row:1/span 2;justify-self:end;display:flex;flex-direction:column;align-items:flex-start;gap:10px;width:auto}
#brxe-cfflinks a{font-size:16px;display:inline-flex;min-height:44px;align-items:center;text-decoration:underline}
#brxe-cffcopy{grid-column:1/-1;font-size:14px;margin-top:18px}
/* Editorial text retains its native WordPress blocks. */
.single-post #brxe-cftitl{width:100%;max-width:1120px;align-self:center;text-align:center;font-size:clamp(36px,5.4vw,76px);line-height:1.02;margin-bottom:20px}
#brxe-cfmeta{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 24px;width:100%;margin:0 0 36px;font-family:var(--cf-text);font-size:14px;line-height:1.5}
#brxe-cfmeta>*{width:auto;margin:0}
#brxe-cfmeta a{text-decoration:underline;min-height:32px;display:inline-flex;align-items:center}
.single-post #brxe-cffeat{display:block;width:100%;max-width:1200px;aspect-ratio:3/2;object-fit:cover;align-self:center;margin:0 0 56px;border-radius:var(--cf-radius);overflow:hidden}
.single-post #brxe-cffeat img{display:block;width:100%;height:100%;aspect-ratio:3/2;object-fit:cover}
.single-post #brxe-cfsect{position:relative;overflow:hidden;padding-bottom:clamp(220px,27vw,370px)}
.single-post #brxe-cfsect::after{content:'';position:absolute;right:clamp(-55px,-4vw,-20px);bottom:clamp(-105px,-7vw,-35px);width:clamp(260px,38vw,540px);aspect-ratio:671/554;background:url('assets/coffe-stain.webp') center/contain no-repeat;opacity:.5;pointer-events:none}
.single-post #brxe-cfauth{width:100%;max-width:820px;align-self:center;display:flex;flex-direction:row;align-items:center;gap:24px;margin-top:56px;padding:0;background:transparent}
#brxe-cfaphoto{display:block;width:88px;height:88px;aspect-ratio:1;border-radius:50%;object-fit:cover;flex:0 0 88px}
#brxe-cfaphoto img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}
#brxe-cfatext{display:block;flex:1;min-width:0}
#brxe-cfanam{font-size:24px;line-height:1.05;margin:0 0 10px}
#brxe-cfabio{font-family:var(--cf-text);font-size:16px;line-height:1.55;max-width:64ch;margin:0}
#brxe-cftocbox{display:block;width:100%;max-width:820px;align-self:center;padding:16px 28px;margin:0 0 40px;background:var(--cf-paper);border-radius:14px}
#brxe-cftoclabel{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:44px;cursor:pointer;font-family:var(--cf-text);font-weight:600;font-size:18px;line-height:1.4;margin:0;list-style:none}
#brxe-cftoclabel::-webkit-details-marker{display:none}
#brxe-cftoclabel::after{content:'+';font-size:26px;font-weight:400}
#brxe-cftocbox[open] #brxe-cftoclabel{margin-bottom:16px}
#brxe-cftocbox[open] #brxe-cftoclabel::after{content:'−'}
#brxe-cftoc{width:100%;max-width:none}
#brxe-cftoc .toc-list{padding-left:22px;margin:0;list-style:decimal}
#brxe-cftoc .toc-list-item{padding:0;margin:0 0 4px}
#brxe-cftoc .toc-link{display:block;padding:9px 0;min-height:44px;font-family:var(--cf-text);font-size:16px;line-height:1.5;color:var(--cf-chocolate);text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}
#brxe-cftoc .toc-link::before{display:none}
#brxe-cfbody:has(.cf-credits-intro){max-width:820px;align-self:center}
#brxe-cfbody:has(.cf-credits-intro) h2{margin-top:44px;font-size:32px}
.single-post #brxe-cfbody,.page-id-12 #brxe-cfbody{max-width:820px;align-self:center}
.single-post #brxe-cfbody>p:first-child{font-size:22px;line-height:1.6}
.single-post #brxe-cfbody h2,.page-id-12 #brxe-cfbody h2{font-size:clamp(28px,3vw,38px);margin:60px 0 24px;max-width:none}
#brxe-cfbody .wp-block-table{overflow-x:auto;max-width:100%;margin:32px 0;background:var(--cf-paper);border-radius:12px}
#brxe-cfbody table{border-collapse:collapse;width:100%;min-width:560px;font-size:16px;line-height:1.55}
#brxe-cfbody th,#brxe-cfbody td{padding:20px;text-align:left;border:0;vertical-align:top}
#brxe-cfbody th{background:var(--cf-chocolate);color:var(--cf-cream);font-weight:600}
#brxe-cfbody tbody tr:nth-child(even){background:var(--cf-paper-deep)}
.page-id-9 #brxe-cfbody{padding:48px;background:var(--cf-paper);border-radius:var(--cf-radius)}
.page-id-9 #brxe-cfbody>p:first-child{font-size:26px;line-height:1.4;margin-bottom:40px}
.page-id-9 #brxe-cfbody h2{font-size:40px}
.page-id-9 #brxe-cfbody .cf-catalog{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.page-id-9 #brxe-cfbody :is(.cf-catalog,.cf-catalog-copy)>.wp-block-group__inner-container{display:contents}
.page-id-9 #brxe-cfbody .cf-catalog-copy p:first-child{font-size:26px;line-height:1.4;margin-bottom:40px}
.page-id-9 #brxe-cfbody .cf-page-lineart{margin:0}
.page-id-9 #brxe-cfbody .cf-page-lineart img{display:block;width:100%;height:auto;opacity:.6}
@media(min-width:1024px){.page-id-11 #brxe-cftitl{max-width:800px}}
@media(max-width:900px){
 #brxe-cfsect{padding-top:40px;padding-bottom:72px}
 #brxe-cfbody .cf-intro{gap:32px;grid-template-columns:1fr 1fr}
 #brxe-cfbody .cf-kit{padding:28px}
 #brxe-cfbody .cf-access{gap:28px}
 #brxe-cfbody .cf-step{gap:28px;padding:28px}
 #brxe-cfbody .cf-faq{gap:14px 28px}
}
@media(max-width:600px){
 #brxe-cfhead{padding-block:20px}
 #brxe-cflogo,#brxe-cffbrand{font-size:28px}
 #brxe-cfhrow{gap:14px;flex-wrap:wrap}
 #brxe-cfhnav{gap:20px;font-size:14px}
 #brxe-cfhnav a{min-height:44px}
 #brxe-cftitl{font-size:clamp(40px,10.7vw,60px);margin-bottom:28px;max-width:12ch;line-height:1}
 #brxe-cfbody{font-size:18px;line-height:1.65}
 #brxe-cfbody .cf-block{margin-bottom:48px}
 #brxe-cfbody .cf-intro{display:block}
 #brxe-cfbody .cf-intro-copy p:first-child{font-size:22px;line-height:1.4}
 #brxe-cfbody .cf-kit{margin-top:30px;padding:24px}
 #brxe-cfbody .cf-example{padding:26px 22px}
 #brxe-cfbody h2{font-size:32px}
 #brxe-cfbody .cf-moments{grid-template-columns:1fr;gap:10px}
 #brxe-cfbody .wp-block-details{padding:18px 20px}
 #brxe-cfbody .wp-block-details summary{font-size:17px;min-height:44px}
 #brxe-cfbody .cf-step{display:block;padding:26px 24px}
 #brxe-cfbody .cf-step h3{font-size:26px;margin-bottom:18px;max-width:none}
 #brxe-cfbody .cf-faq{display:flex;flex-direction:column;gap:12px}
 #brxe-cfbody .cf-faq h2{margin-bottom:12px}
 #brxe-cfbody .cf-access{display:block;padding:28px 24px;margin-bottom:48px}
 #brxe-cfbody .cf-access h2{font-size:32px}
 #brxe-cfbody .cf-access form{margin-top:28px}
 #brxe-cfbody .cf-access-button{width:100%}
 #brxe-cffoot{padding-block:38px 24px}
 #brxe-cffrow{grid-template-columns:1fr;gap:22px}
 #brxe-cffwords{font-size:18px;max-width:none}
 #brxe-cfflinks{grid-column:1;grid-row:auto;justify-self:start;flex-direction:row;flex-wrap:wrap;gap:8px 24px}
 #brxe-cffcopy{margin-top:0}
 .single-post #brxe-cftitl{font-size:36px;line-height:1.05;max-width:none;margin-bottom:18px}
 #brxe-cfmeta{gap:6px 16px;font-size:13px;margin-bottom:28px}
 .single-post #brxe-cffeat{margin-bottom:32px;border-radius:12px}
 .single-post #brxe-cfauth{gap:16px;align-items:flex-start;margin-top:40px}
 #brxe-cfaphoto{width:72px;height:72px;flex-basis:72px}
 #brxe-cfanam{font-size:22px}
 #brxe-cfabio{font-size:15px}
 #brxe-cftocbox{padding:14px 20px;margin-bottom:32px}
 .single-post #brxe-cfbody>p:first-child{font-size:20px}
 .single-post #brxe-cfbody h2,.page-id-12 #brxe-cfbody h2{font-size:28px;margin-top:44px}
 .page-id-9 #brxe-cfbody{padding:28px 24px}
 .page-id-9 #brxe-cfbody>p:first-child{font-size:22px}
 .page-id-9 #brxe-cfbody h2{font-size:32px}
 .page-id-9 #brxe-cfbody .cf-catalog{grid-template-columns:1fr;gap:24px}
 .page-id-9 #brxe-cfbody .cf-catalog-copy p:first-child{font-size:22px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* WordPress can add this wrapper to Group blocks when rendering through a theme. */
#brxe-cfbody :is(.cf-block,.cf-intro-copy,.cf-kit,.cf-moments,.cf-step)>.wp-block-group__inner-container{display:contents}
/* Static paper texture behind content, never an overlay on text or controls. */
body,#brxe-cfhead,#brxe-cfsect{background-image:var(--cf-paper-grain);background-repeat:repeat;background-size:192px 192px}
@media print{body,#brxe-cfhead,#brxe-cfsect{background-image:none}}
