/* OneLife landing pages. Lines up to 'Design CSS end' are the approved artboard CSS, verbatim (OneLife Landing Page Mockups, 2026-11). Do not restyle them; add changes below. */
:root{
  --esp:#181413; --esp2:#2B2620; --ink:#302B25; --cream:#F0EDE4; --paper:#F7F5EF; --stone:#DBD7CB;
  --olive:#787258; --terra:#774427; --gold:#A5803C; --gold-btn:#8E6C31; --gold-txt:#7A5C27;
  --mute:#6B655E; --mute-d:#B9B2A6; --line:rgba(48,43,37,.14); --line-d:rgba(255,255,255,.16);
  --disp:"Belleza",Helvetica,Arial,sans-serif; --label:"Outfit",Helvetica,Arial,sans-serif; --body:"Mulish",Helvetica,Arial,sans-serif;
}
.ol{font-family:var(--body);color:var(--ink);background:var(--cream);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;width:100%;position:relative}
.ol *{box-sizing:border-box}
.ol p{margin:0}
.ol img{display:block;max-width:100%}
.wrap{max-width:1200px;margin:0 auto;padding:0 40px}
.sec{padding:112px 0}
.dark{background:var(--esp);color:#F3EFE6}
.dark2{background:var(--esp2);color:#F3EFE6}
.stone{background:var(--stone)}
.paper{background:var(--paper)}

 
.disp{font-family:var(--disp);font-weight:400;line-height:1.08;margin:0;letter-spacing:-.005em}
.h1{font-size:66px}
.h2{font-size:46px;max-width:20ch}
.h3{font-size:26px;line-height:1.2}
.up{text-transform:uppercase;letter-spacing:.03em}
.eye{font-family:var(--label);font-weight:700;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-txt);margin:0 0 20px}
.dark .eye,.dark2 .eye,.on-dark .eye{color:var(--gold)}
.lead{font-size:20px;line-height:1.6;color:var(--mute);max-width:56ch}
.dark .lead,.dark2 .lead,.on-dark .lead{color:var(--mute-d)}
.center{text-align:center}
.center .h2,.center .lead{margin-left:auto;margin-right:auto}
.muted{color:var(--mute)}
.dark .muted,.dark2 .muted{color:var(--mute-d)}
.it{font-style:italic}

 
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 32px;font-family:var(--label);font-weight:700;font-size:14px;letter-spacing:.16em;text-transform:uppercase;background:var(--gold-btn);color:#fff;text-decoration:none;border:0;cursor:pointer;white-space:nowrap}
.btn:hover{background:#7A5C27}
.btn.terra{background:var(--terra)}
.btn.terra:hover{background:#5f361f}
.btn.ghost{background:transparent;color:inherit;border:1px solid currentColor}
.btn.full{width:100%}
.call{font-family:var(--label);font-weight:700;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:10px;min-height:54px}
.call small{display:block;font-family:var(--body);font-weight:400;letter-spacing:0;text-transform:none;font-size:13px;opacity:.75}
.row{display:flex;flex-wrap:wrap;align-items:center;gap:22px}

 
.top{position:absolute;left:0;right:0;top:0;z-index:5}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:96px}
.top img{height:44px;width:auto}
.top .call{font-size:13px}
.top.light{position:relative;background:var(--cream);border-bottom:1px solid var(--line)}

 
.hero{position:relative;overflow:hidden}
.hero .bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(24,20,19,.94) 0%,rgba(24,20,19,.86) 45%,rgba(24,20,19,.62) 100%)}
.hero .inner{position:relative;padding-top:168px;padding-bottom:104px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:72px;align-items:center}
.hero .sub{font-size:20px;line-height:1.6;margin:26px 0 0;max-width:46ch}
.hero .cta{margin-top:36px}
.trust{display:flex;flex-wrap:wrap;gap:12px 30px;margin-top:44px;padding-top:26px;border-top:1px solid var(--line-d);font-size:15px}
.trust span{display:flex;align-items:center;gap:10px}
.trust .dot{width:6px;height:6px;background:var(--gold);flex:none}
.light .trust,.trust.light{border-top-color:var(--line)}

 
.fcard{background:var(--cream);color:var(--ink);padding:36px;position:relative;box-shadow:0 30px 70px rgba(0,0,0,.28)}
.fcard.flat{box-shadow:none;border:1px solid var(--line)}
.fcard .ftitle{font-family:var(--disp);font-size:30px;line-height:1.15;margin:0 0 6px}
.fcard .fsub{font-size:15px;color:var(--mute);margin:0 0 22px}
.fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.fgrid .span2{grid-column:span 2}
.field label{display:block;font-family:var(--label);font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin-bottom:6px}
.field input,.field select{width:100%;height:50px;padding:0 14px;border:1px solid rgba(48,43,37,.28);background:#fff;font-family:var(--body);font-size:16px;color:var(--ink);border-radius:0;appearance:none}
.field select{background-image:linear-gradient(45deg,transparent 50%,#302B25 50%),linear-gradient(135deg,#302B25 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 15px) 22px;background-size:5px 5px;background-repeat:no-repeat;color:var(--mute)}
.fcard .btn{margin-top:20px}
.fine{font-size:12.5px;line-height:1.5;color:var(--mute);margin-top:14px !important;text-align:center}
.fine a{color:var(--ink)}
.phtag{position:absolute;top:-13px;right:20px;background:#fff;border:1px dashed var(--gold-btn);color:var(--gold-txt);font-family:var(--label);font-weight:700;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px}

 
.strip{padding:28px 0}
.strip .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px 32px;align-items:center}
.strip .item{display:flex;align-items:center;gap:12px;font-family:var(--label);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.strip .item b{font-family:var(--disp);font-weight:400;font-size:30px;letter-spacing:0;color:var(--gold)}

 
.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.g3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.g5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line-d);border:1px solid var(--line-d)}
.mt{margin-top:56px}
.mt-s{margin-top:28px}
.card{background:var(--paper);border:1px solid var(--line);padding:30px}
.card .ct{font-family:var(--disp);font-size:24px;line-height:1.2;margin:0 0 10px}
.card p{color:var(--mute);font-size:16px}
.card.white{background:#fff}
.card.flag{border-color:var(--gold-btn);background:#fff;position:relative}
.flagtag{display:inline-block;font-family:var(--label);font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#fff;background:var(--gold-btn);padding:5px 10px;margin-bottom:16px}
.pain{display:flex;gap:18px;align-items:flex-start;padding:28px 30px;background:#fff;border:1px solid var(--line)}
.pain .n{font-family:var(--disp);font-size:28px;color:var(--gold-txt);line-height:1;flex:none;width:36px}
.pain p{font-size:17px;color:var(--mute)}
.pain b{display:block;font-family:var(--disp);font-weight:400;font-size:23px;color:var(--ink);margin-bottom:6px;line-height:1.2}
.dx{padding:30px 24px;background:var(--esp)}
.dx .k{font-family:var(--label);font-weight:700;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.dx .v{font-family:var(--disp);font-size:22px;line-height:1.2;margin:12px 0 8px;color:#fff}
.dx p{font-size:14.5px;color:var(--mute-d);line-height:1.55}
.step .num{font-family:var(--disp);font-size:64px;line-height:1;color:var(--gold-txt);margin-bottom:22px}
.step .ct{font-family:var(--disp);font-size:27px;margin:0 0 10px;line-height:1.2}
.step p{color:var(--mute)}
.step{padding-top:28px;border-top:1px solid var(--ink)}
.midcta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;margin-top:48px;padding:28px 32px;background:var(--esp);color:#F3EFE6}
.midcta p{font-family:var(--disp);font-size:26px;line-height:1.2}

 
.doc{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:80px;align-items:center}
.doc .ph-wrap{position:relative}
.doc .ph-wrap .leaf{position:absolute;left:-40px;top:-40px;width:62%;height:78%;object-fit:cover}
.doc .ph-wrap .main{position:relative;width:100%;aspect-ratio:850/950;object-fit:cover}
.doc .role{font-family:var(--label);font-weight:700;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-txt);margin:14px 0 26px !important}
.doc p.body{color:var(--mute);font-size:18px;margin-bottom:16px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.chips span{font-family:var(--label);font-weight:700;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--ink);padding:9px 14px}
.arch{border-radius:999px 999px 0 0}

 
.quote{padding:34px;border:1px solid var(--line-d);display:flex;flex-direction:column;gap:22px;justify-content:space-between}
.quote .q{font-family:var(--disp);font-size:23px;line-height:1.35}
.quote .who{font-family:var(--label);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.stars{color:var(--gold);letter-spacing:.2em;font-size:15px}
.phnote{display:inline-block;font-family:var(--label);font-weight:700;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;border:1px dashed currentColor;padding:4px 9px;opacity:.85}

 
.offer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:center}
.ticks{list-style:none;padding:0;margin:30px 0 0}
.ticks li{position:relative;padding:12px 0 12px 38px;border-bottom:1px solid var(--line-d);font-size:17px}
.ticks li:before{content:"";position:absolute;left:4px;top:19px;width:14px;height:8px;border-left:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(-45deg)}
.light .ticks li,.ticks.light li{border-bottom-color:var(--line)}
.light .ticks li:before,.ticks.light li:before{border-color:var(--terra)}

 
.faq{max-width:860px;margin:48px auto 0}
.faq .qa{border-top:1px solid var(--line);padding:26px 0}
.faq .qa:last-child{border-bottom:1px solid var(--line)}
.faq .qq{display:flex;justify-content:space-between;gap:20px;font-family:var(--disp);font-size:24px;line-height:1.25}
.faq .qq span.pm{font-family:var(--body);font-size:28px;color:var(--gold-txt);line-height:1}
.faq .aa{color:var(--mute);margin-top:12px !important;max-width:68ch}

 
.closing{position:relative;overflow:hidden;text-align:center;color:#fff}
.closing .bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.closing .scrim{position:absolute;inset:0;background:rgba(24,20,19,.72)}
.closing .wrap{position:relative;padding-top:120px;padding-bottom:120px}
.closing .h2{margin:0 auto;max-width:18ch}

 
.foot{background:var(--esp);color:var(--mute-d);padding:64px 0 48px;font-size:15px}
.foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;align-items:start}
.foot img{height:40px;width:auto}
.foot .k{font-family:var(--label);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#fff;margin-bottom:12px !important}
.foot a{color:var(--mute-d)}
.foot .legal{margin-top:48px;padding-top:24px;border-top:1px solid var(--line-d);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px}
.foot .legal a{margin-left:18px}

 
.mobar{display:none}

 
.age .hero2{position:relative;overflow:hidden;background:var(--cream)}
.age .hero2 .tex{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35}
.age .hero2 .inner{position:relative;padding-top:72px;padding-bottom:96px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:64px;align-items:center}
.age .h1 .it{color:var(--terra)}
.age .eye{color:var(--terra)}
.age .dark .eye,.age .dark2 .eye,.age .on-dark .eye,.age .terrabg .eye{color:#E3C9A8}
.terrabg{background:var(--terra);color:#FBF6EE}
.terrabg .lead{color:#EBDCCB}
.terrabg .ticks li{border-bottom-color:rgba(255,255,255,.2)}
.terrabg .ticks li:before{border-color:#E3C9A8}
.age .pain .n,.age .step .num{color:var(--terra)}
.age .step{border-top-color:var(--terra)}
.heroimgs{position:relative;height:600px}
.heroimgs .a{position:absolute;right:0;top:0;width:74%;height:100%;object-fit:cover}
.heroimgs .b{position:absolute;left:0;bottom:40px;width:42%;aspect-ratio:653/820;object-fit:cover;border:8px solid var(--cream)}
.ba{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
.ba .ph{aspect-ratio:1;background:var(--stone);display:flex;align-items:flex-end;padding:14px;font-family:var(--label);font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);border:1px dashed rgba(48,43,37,.3)}
.story{background:#fff;border:1px solid var(--line)}
.story img{width:100%;aspect-ratio:653/600;object-fit:cover;object-position:top}
.story .sb{padding:24px 26px}
.story .k{font-family:var(--label);font-weight:700;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--terra)}
.story .t{font-family:var(--disp);font-size:23px;line-height:1.25;margin:10px 0 0 !important}
.card .ic{width:44px;height:44px;border:1px solid var(--terra);display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--terra)}
.team{width:100%;aspect-ratio:2400/848;object-fit:cover;margin-top:56px}

 
.ty{min-height:100%}
.ty .inner{padding-top:150px;padding-bottom:100px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:72px;align-items:start}
.ty .check{width:64px;height:64px;border:1px solid var(--gold);display:flex;align-items:center;justify-content:center;margin-bottom:30px;color:var(--gold)}
.age .ty .check{border-color:var(--terra);color:var(--terra)}
.next{margin-top:40px}
.next .nrow{display:flex;gap:20px;padding:20px 0;border-top:1px solid var(--line-d)}
.light .next .nrow{border-top-color:var(--line)}
.next .nrow .n{font-family:var(--disp);font-size:30px;color:var(--gold);line-height:1;width:40px;flex:none}
.age .next .nrow .n{color:var(--terra)}
.next .nrow b{display:block;font-family:var(--disp);font-weight:400;font-size:22px;line-height:1.2;margin-bottom:4px}
.visit{padding:32px;border:1px solid var(--line-d)}
.light .visit{border-color:var(--line);background:#fff}
.visit .map{width:100%;aspect-ratio:16/10;object-fit:cover;margin-bottom:24px}

 
@media (max-width:760px){
  .ol{font-size:16px}
  .wrap{padding:0 20px}
  .sec{padding:72px 0}
  .h1{font-size:42px}
  .h2{font-size:33px}
  .lead{font-size:17px}
  .top .wrap{height:72px}
  .top img{height:32px}
  .top .call small{display:none}
  .top .call span.lbl{display:none}
  .hero .inner,.age .hero2 .inner,.offer,.doc,.ty .inner{grid-template-columns:minmax(0,1fr);gap:40px}
  .hero .inner{padding-top:112px;padding-bottom:56px}
  .hero .scrim{background:linear-gradient(180deg,rgba(24,20,19,.9) 0%,rgba(24,20,19,.94) 100%)}
  .hero .sub{font-size:17px}
  .age .hero2 .inner{padding-top:36px;padding-bottom:56px}
  .heroimgs{height:360px}
  .g2,.g3,.fgrid{grid-template-columns:minmax(0,1fr)}
  .fgrid .span2{grid-column:auto}
  .g5{grid-template-columns:minmax(0,1fr)}
  .fcard{padding:26px 22px}
  .fcard .ftitle{font-size:26px}
  .trust{flex-direction:column;gap:10px}
  .strip .wrap{flex-direction:column;align-items:flex-start}
  .step .num{font-size:48px}
  .doc .ph-wrap .leaf{left:-20px;top:-20px}
  .faq .qq{font-size:20px}
  .foot .cols{grid-template-columns:minmax(0,1fr)}
  .foot .legal a{margin-left:0;margin-right:16px}
  .closing .wrap{padding-top:80px;padding-bottom:80px}
  .ty .inner{padding-top:108px;padding-bottom:64px}
  .desk-only{display:none !important}
  .mobar{display:flex;gap:10px;position:sticky;bottom:0;z-index:20;padding:12px 14px 22px;background:var(--cream);border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(0,0,0,.12)}
  .mobar a{flex:1}
  .mobar .btn{padding:0 12px}
}
@media (min-width:761px){ .mob-only{display:none !important} }
/* Design CSS end */

/* ---- Page frame (the artboards render on a bare body) ---- */
html,body.ollp-body{margin:0;padding:0;background:#F0EDE4}
body.ollp-body.ollp-dark{background:#181413}
.ol a{transition:background-color .2s ease,color .2s ease}
.ol :focus{outline:none}
.ol :focus-visible{outline:none;box-shadow:none}
.ol .btn:focus-visible{background:#7A5C27}
.ol .btn.terra:focus-visible{background:#5f361f}
.ol h1,.ol h2{font-weight:400}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ---- Artboard inline styles, as classes ---- */
.perf .top .call{color:#fff}
.top.light .call{color:#302B25}
.perf .hero .sub{margin-top:58px;font-size:17px;line-height:1.65;color:#F3EFE6;max-width:none}
.g3.steps{gap:40px}
.ol .note-s{font-size:13px;margin-top:22px}
.sec .lead.mt-lead{margin-top:22px}
.offer .lead{margin-top:20px}
.closing .lead{margin:20px auto 34px;color:#E4DDD0}
.perf .closing{height:529px}
.mobar .btn.ghost{color:#302B25}
.foot .tagline{margin-top:18px;max-width:34ch}
.foot .cols p + p{margin-top:10px}
.age .hero2 .lead{margin-top:24px;color:#4F4942}
.age .hero2 .cta{margin-top:30px}
.age .trust .dot{background:var(--terra)}
.age .hero2 .fcard{background:#fff}
.age .strip.terrabg .item b{color:#F3E3CC}
.doc.top-align{align-items:start}
.doc .ph-wrap .main.tall{aspect-ratio:768/1000;object-position:top}
.pains-stack{grid-template-columns:minmax(0,1fr) !important;gap:12px !important}
.age .midcta{background:#774427}
.btn.cream,.btn.cream:hover{background:#F0EDE4;color:#302B25}
.btn.cream:hover{background:#E4DFD2}
.age .doc .role{color:#774427}
.age .faq .pm{color:#774427}
.age .closing .scrim{background:rgba(43,38,32,.7)}
.age .closing .eye{color:#E3C9A8}
.ty .lead{margin-top:22px}
.age .ty .lead,.age .ty.hero2 .lead{margin-top:22px;color:#4F4942}
.visit .btn{margin-top:24px}
.visit .addr{margin-top:22px;font-size:15px}
.age .ty .inner{position:relative;padding-top:88px}
.visit .map.square{aspect-ratio:1;object-position:top}
.foot.slim{padding-top:0}
.perf .foot.slim .legal{margin-top:0}
/* LP1 physician copy renders in ink at body size, a blank line between paragraphs */
.doc .body.ink p{color:var(--ink);margin-bottom:1.65em}
.doc .body.muted-copy p{color:var(--mute);font-size:18px;margin-bottom:16px}
.ol img.main,.ol img.leaf,.ol img.bgimg,.ol img.tex{max-width:none}
.doc .ph-wrap img.main{max-width:100%}

/* ---- FAQ: real accordion, first answer open like the design ---- */
.faq .qq{width:100%;background:none;border:0;padding:0;margin:0;color:inherit;text-align:left;cursor:pointer;-webkit-appearance:none;appearance:none}
.faq .aa[hidden]{display:none}

/* ---- Gravity Forms inside the form card ---- */
.fcard .gform_wrapper,.fcard .gform_wrapper form{margin:0;padding:0}
.fcard .gform_heading,.fcard .gform_required_legend,.fcard .gfield_required,.fcard .gform_validation_container,.fcard .gfield--type-hidden,.fcard .gform_hidden,.fcard .ginput_container_honeypot,.fcard .gform_ajax_spinner,.fcard .gform-loader{display:none !important}
.fcard .gform_fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;list-style:none;margin:0;padding:0;border:0}
.fcard .gfield{grid-column:span 2;margin:0;padding:0;border:0;min-width:0}
.fcard .gfield.gfield--width-half{grid-column:span 1}
.fcard .gfield_label,.fcard .gfield_label_before_complex,.fcard legend.gfield_label{display:block;font-family:var(--label);font-weight:700;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin:0 0 6px;padding:0}
.fcard .hidden_label .gfield_label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.fcard .ginput_container{margin:0}
.fcard input[type=text],.fcard input[type=email],.fcard input[type=tel],.fcard select{width:100%;height:50px;padding:0 14px;border:1px solid rgba(48,43,37,.28);background:#fff;font-family:var(--body);font-size:16px;color:var(--ink);border-radius:0;-webkit-appearance:none;appearance:none;box-shadow:none;outline:none;margin:0}
.fcard input::placeholder{color:#757575;opacity:1}
.fcard input:focus,.fcard select:focus{border-color:rgba(48,43,37,.55);background:#fff;outline:none;box-shadow:none}
.fcard select{background-image:linear-gradient(45deg,transparent 50%,#302B25 50%),linear-gradient(135deg,#302B25 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 15px) 22px;background-size:5px 5px;background-repeat:no-repeat;color:var(--mute);padding-right:36px;text-overflow:ellipsis}
.fcard select.ollp-picked{color:var(--ink)}
.fcard .gform_footer,.fcard .gform_page_footer{margin:0;padding:0;display:block}
.fcard .gform_footer .gform_button,.fcard .gform_footer button{display:flex;align-items:center;justify-content:center;width:100%;min-height:54px;margin-top:20px;padding:0 32px;font-family:var(--label);font-weight:700;font-size:14px;letter-spacing:.16em;text-transform:uppercase;background:var(--gold-btn);color:#fff;border:0;border-radius:0;cursor:pointer;white-space:nowrap;-webkit-appearance:none;appearance:none;line-height:1}
.fcard .gform_footer .gform_button:hover{background:#7A5C27}
.age .fcard .gform_footer .gform_button{background:var(--terra)}
.age .fcard .gform_footer .gform_button:hover{background:#5f361f}
.fcard .gform_validation_errors{margin:0 0 16px;padding:12px 14px;border:1px solid #B4472C;background:#FBF1EC}
.fcard .gform_validation_errors h2,.fcard .gform_submission_error{font-family:var(--body);font-size:14px;font-weight:600;line-height:1.4;color:#8A2F1A;margin:0}
.fcard .gform_validation_errors .gform-icon{display:none}
.fcard .gfield_error input,.fcard .gfield_error select{border-color:#B4472C}
.fcard .gfield_validation_message,.fcard .validation_message{font-size:13px;line-height:1.4;color:#8A2F1A;margin-top:6px;padding:0;border:0;background:none}
.fcard .gform_confirmation_message{font-size:16px}
@media (max-width:760px){
  .perf .hero .sub{margin-top:53px;font-size:16px}
  .fcard .gform_fields{grid-template-columns:minmax(0,1fr)}
  .fcard .gfield,.fcard .gfield.gfield--width-half{grid-column:auto}
}

/* WordPress prints width/height on images; let the design's aspect-ratio decide the height (zero specificity, so every design rule still wins). */
:where(.ol) img{height:auto}

/* Content width follows the site's global Section Width (Site Options), set on .ol by the template. */
.ol .wrap{max-width:calc(var(--ollp-section-width,1120px) + 80px)}
@media (max-width:760px){ .ol .wrap{max-width:calc(var(--ollp-section-width,1120px) + 40px)} }
