/* ==========================================================================
   Empowerment Supports — scrapbook layer for the inner pages
   Loaded AFTER inner-pages.css. Re-skins the existing markup into the same
   paper / tape / polaroid language as the home page without touching layout.
   ========================================================================== */

/* scrapbook.css is linked directly from each page (before this file) so it
   shares the ?v= cache-buster and downloads in parallel. */

/* ------------------------------------------------------------- canvas -- */

body{
  background:var(--paper)!important;
  color:var(--ink);
  font-family:var(--body);
  font-size:1.0625rem;
  line-height:1.68;
}
body::before{
  content:"";
  position:fixed;inset:0;z-index:0;pointer-events:none;
  opacity:.5;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");
}
body>*{position:relative;z-index:1}

.skip{border-radius:4px 12px 4px 12px;border-color:var(--rose)}

/* ---------------------------------------------------------------- type -- */

.display{
  font-family:var(--display)!important;
  font-weight:600!important;
  font-size:clamp(2.45rem,5.1vw,4.15rem)!important;
  line-height:1.02!important;
  letter-spacing:-.022em!important;
  max-width:none!important;
  color:var(--ink);
}
.display em{color:var(--rose)!important;font-style:normal}
h2{
  font-family:var(--display)!important;
  font-weight:600!important;
  font-size:clamp(2rem,3.9vw,3.2rem)!important;
  line-height:1.06!important;
  color:var(--ink);
}
.statement{
  font-family:var(--display)!important;
  font-weight:600!important;
  font-size:clamp(1.95rem,3.6vw,3rem)!important;
  line-height:1.07!important;
  color:var(--ink);
}
.lede,.prose,.section-head p{color:var(--ink-soft)}
.section-head p{margin-top:1.1rem}
.section-head h2+p{margin-top:1.1rem}

/* the kicker becomes the handwritten line */
.kicker,.service-tag{
  font-family:var(--hand)!important;
  font-size:1.65rem!important;
  font-weight:700!important;
  letter-spacing:.005em!important;
  text-transform:none!important;
  line-height:1!important;
  color:var(--rose)!important;
  display:block;
  transform:rotate(-1.6deg);
  transform-origin:left center;
}
.service-tag{font-size:1.35rem!important;color:var(--sage-deep)!important;margin-bottom:.35rem!important}

/* ----------------------------------------------------------------- nav -- */

.site-nav{padding:10px 0}
.nav-shell{
  min-height:64px;
  border:0!important;
  border-radius:20px 8px 20px 8px!important;
  background:rgba(255,251,248,.94)!important;
  box-shadow:inset 0 0 0 1.5px var(--rose-pale),0 8px 20px -14px rgba(51,43,42,.55)!important;
  backdrop-filter:blur(10px) saturate(140%);
}
.site-nav .wrap{position:relative}
.brand img{border-radius:50%;box-shadow:0 2px 6px -3px rgba(51,43,42,.5)}
.brand-copy b{font-family:var(--display);font-weight:600;letter-spacing:.045em}
.brand-copy span{
  font-family:var(--hand);font-size:.98rem;font-weight:700;
  letter-spacing:.02em;text-transform:none;color:var(--rose);
}
.nav-links a{border-radius:16px 6px 16px 6px;font-weight:700}
.nav-links a:hover,.nav-links a[aria-current="page"]{background:var(--rose-wash);color:var(--rose)}
.mobile-menu{
  border:0!important;
  border-radius:6px 20px 6px 20px!important;
  background:var(--card)!important;
  box-shadow:var(--shadow-deep),inset 0 0 0 1.5px var(--rose-pale)!important;
}
.mobile-menu a{border-radius:12px 4px 12px 4px;font-weight:700}
.mobile-menu a+a{border-top:0}
.mobile-menu a:hover{background:var(--rose-wash);color:var(--rose)}
.menu-button{
  border-radius:14px 5px 14px 5px!important;
  background:var(--rose-wash)!important;
  box-shadow:inset 0 0 0 1.5px var(--rose-pale)!important;
  color:var(--rose)!important;
}

/* heroes sit on plain paper, like the home page — the tinted bands do the
   colour work, so the decorative gradients here are cleared */
.page-hero,.sc-hero,.about-hero,.section:not(.soft){background-image:none!important}
/* soft glass blob left over from the previous design language */
.page-hero::after{display:none!important}

/* The conversation demo on support-coordination.html was a dark brown gradient
   in the previous design language, with white text on top. The reset above
   cleared its background image and left that white text on cream paper.
   It becomes a deep-rose feature band instead — on-brand, and dark enough that
   white body copy clears WCAG AA (6.7:1) with room to spare. */
.phone-demo{
  background:var(--rose-deep)!important;
  background-image:none!important;
  color:#fff;
}
.phone-demo::before{ /* was a glass glow; now paper tearing into the band */
  content:"";
  position:absolute;
  top:-1px;left:-2vw;right:-2vw;bottom:auto;
  height:26px;
  background:var(--paper)!important;
  -webkit-mask:url("torn-top.svg") no-repeat center/100% 100%;
  mask:url("torn-top.svg") no-repeat center/100% 100%;
  z-index:4;pointer-events:none;
}
.phone-demo .kicker{color:#FFD7DA!important}
.phone-demo h2,.phone-demo h2 em{color:#fff!important}
.phone-demo .lede{color:rgba(255,255,255,.94)!important}
.phone-demo .demo-note{color:rgba(255,255,255,.82)!important}
.phone-demo .phone-points span{
  color:#fff;
  border:0;
  border-radius:20px 7px 20px 7px;
  background:rgba(255,255,255,.14);
  box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.42);
  font-weight:700;
}
.phone-demo .button{
  background:var(--card)!important;
  color:var(--rose)!important;
  box-shadow:0 5px 0 -1px rgba(46,20,25,.45),0 10px 18px -10px rgba(0,0,0,.5)!important;
}
.phone-demo .button:hover{background:var(--rose-wash)!important}
.phone-orbit{border-color:rgba(255,255,255,.22)!important}

/* Two more bands carried over from the old design as near-black (#30272B).
   They keep the same deep-rose treatment so every "feature band" on the site
   matches, and so the handwritten kicker clears AA (it was 2.97:1 in rose). */
.specialist-callout,.diversity-section{
  background:var(--rose-deep)!important;
  background-image:none!important;
  color:#fff;
}
.specialist-callout{border-radius:20px 6px 22px 7px!important;box-shadow:var(--shadow-deep)!important}
.specialist-callout .kicker,.diversity-section .kicker{color:#FFD7DA!important}
.specialist-callout h2,.diversity-section h2,
.specialist-callout h3,.diversity-section h3{color:#fff!important}
.specialist-callout p,.diversity-section p,
.diversity-section li,.diversity-section .prose{color:rgba(255,255,255,.94)!important}
.specialist-callout .button{
  background:var(--card)!important;color:var(--rose)!important;
  box-shadow:0 5px 0 -1px rgba(46,20,25,.45)!important;
}
.specialist-callout .button.secondary{
  background:transparent!important;color:#fff!important;
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.55)!important;
}
.diversity-section .check-list li,.diversity-section .plain-list li{color:rgba(255,255,255,.94)!important}
.diversity-section .check-list li::before,.diversity-section .plain-list li::before{color:#FFD7DA!important}

/* nothing in the nav is allowed to wrap onto a second line */
.nav-links a,.nav-shell .button,.brand-copy b,.nav-phone{white-space:nowrap}
/* the lockup must never shrink under the links — its text is nowrap and
   would otherwise spill out of the flex box and collide with "Home" */
.brand{flex:0 0 auto}
/* every nav item sizes to its own content — none may shrink and spill its
   nowrap text over its neighbour */
.nav-links,.nav-phone,.nav-shell>.button,.menu-button{flex:0 0 auto}
.nav-links{display:flex;align-items:center}

/* .wrap caps at 1240px, so the nav never gets more room than this however
   wide the window is — these compact sizes are the desktop default, not a
   narrow-screen fallback. Six links + phone + CTA only fit at this scale. */
.nav-shell{gap:.6rem}
.nav-links a{padding:.45rem .5rem;font-size:.82rem}
.nav-shell>.button{padding:.72rem 1.05rem;font-size:.78rem!important}
.nav-phone{font-size:.95rem}

@media (max-width:1200px){
  .nav-phone{display:none}
}

/* ------------------------------------------------------------- buttons -- */

.button{
  min-height:48px;
  padding:.78rem 1.5rem;
  border-radius:26px 24px 27px 25px!important;
  background:var(--rose)!important;
  color:#fff!important;
  font-family:var(--body);
  font-size:.9rem!important;
  font-weight:800!important;
  letter-spacing:.055em;
  text-transform:uppercase;
  box-shadow:0 5px 0 -1px var(--rose-deep),0 10px 18px -10px rgba(51,43,42,.5)!important;
}
.button:hover{
  background:var(--rose-deep)!important;
  transform:translateY(2px)!important;
  box-shadow:0 3px 0 -1px #7A3B44,0 8px 14px -10px rgba(51,43,42,.5)!important;
}
.button.secondary{
  background:var(--card)!important;
  color:var(--rose)!important;
  box-shadow:inset 0 0 0 2px var(--rose-mid),0 4px 10px -6px rgba(51,43,42,.4)!important;
}
.button.secondary:hover{background:var(--rose-wash)!important;box-shadow:inset 0 0 0 2px var(--rose),0 4px 10px -6px rgba(51,43,42,.4)!important}
.inline-link{color:var(--rose);font-weight:800}

/* -------------------------------------------------------------- panels -- */
/* every glassy card becomes a piece of pasted paper */

.service-panel,.safeguards,.level,.compare,.intro-ledger,
.about-logo,.feature-list,.faq-list{
  border:0!important;
  background:var(--card)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.service-panel,.safeguards,.level,.compare{
  position:relative;
  border-radius:14px 4px 16px 5px!important;
  box-shadow:var(--shadow-lift)!important;
  transition:transform 320ms var(--ease),box-shadow 320ms var(--ease);
}
.service-panel::after,.level::after,.safeguards::after{
  content:"";position:absolute;inset:0;border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(51,43,42,.07);pointer-events:none;
}
.service-panel:nth-child(even),.level:nth-child(even){border-radius:4px 16px 5px 14px!important}

/* a strip of washi tape at the top of each panel */
.service-panel::before,.level::before{
  content:"";position:absolute;top:-13px;left:50%;
  width:104px;height:26px;
  transform:translateX(-50%) rotate(-3deg);
  background:var(--tape-rose);
  clip-path:polygon(3% 0,97% 0,100% 22%,97% 48%,100% 76%,96% 100%,4% 100%,0 78%,3% 50%,0 24%);
  box-shadow:0 1px 3px rgba(51,43,42,.13);
  z-index:3;pointer-events:none;
  border:0!important;
}
.service-panel:nth-child(2n)::before{background:var(--tape-sage);transform:translateX(-50%) rotate(3deg)}
.service-panel:nth-child(3n)::before{background:var(--tape-honey)}
.level:nth-child(2)::before{background:var(--tape-sage)}
.level:nth-child(3)::before{background:var(--tape-honey)}

.service-panel{margin-top:18px}
.service-panel:hover{transform:translateY(-4px) rotate(0deg)!important;box-shadow:var(--shadow-deep)!important}
.service-panel:nth-child(odd),.service-panel:nth-child(odd):hover{transform:none}
.service-panel:nth-child(odd):hover{transform:translateY(-4px)!important}
.service-panel:target{box-shadow:var(--shadow-deep),inset 0 0 0 2.5px var(--rose)!important}
.service-panel h3,.level h3,.commitment h3,.feature h3,.faq-row h3{
  font-family:var(--display)!important;font-weight:600!important;color:var(--ink);
}
.service-meta{
  border-top:1.5px dashed rgba(168,90,100,.32)!important;
  color:var(--rose)!important;
}

/* icon discs become stickers */
.icon-disc,.mini-trust i{
  border-radius:50%!important;
  background:var(--rose-wash)!important;
  box-shadow:inset 0 0 0 2px var(--rose-pale)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  color:var(--rose)!important;
}
.commitment:nth-child(3n+2) .icon-disc,.feature:nth-child(3n+2) .icon-disc{
  background:var(--sage-wash)!important;box-shadow:inset 0 0 0 2px #CBDCC3!important;color:var(--sage-deep)!important;
}
.commitment:nth-child(3n) .icon-disc,.feature:nth-child(3n) .icon-disc{
  background:var(--honey-wash)!important;box-shadow:inset 0 0 0 2px #F0D9A9!important;color:#A9761F!important;
}
.mini-trust span{font-weight:700}

.level-num{font-family:var(--hand)!important;font-size:2.6rem!important;color:var(--rose)!important}
.level-note{border-top:1.5px dashed rgba(168,90,100,.32)!important}

/* ------------------------------------------------------------- photos -- */
/* hero and editorial photos become polaroids */

.hero-photo,.editorial-photo{
  position:relative;
  padding:11px 11px 0!important;
  border:0!important;
  border-radius:2px!important;
  background:var(--card)!important;
  box-shadow:var(--shadow-deep)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transform:rotate(-2.2deg);
  transition:transform 380ms var(--ease),box-shadow 380ms var(--ease);
}
.editorial-photo{transform:rotate(2deg)}
.hero-photo::before,.editorial-photo::before{
  content:"";position:absolute;top:-13px;left:50%;
  width:118px;height:26px;
  transform:translateX(-50%) rotate(-3deg);
  background:var(--tape-honey);
  clip-path:polygon(3% 0,97% 0,100% 22%,97% 48%,100% 76%,96% 100%,4% 100%,0 78%,3% 50%,0 24%);
  box-shadow:0 1px 3px rgba(51,43,42,.13);
  z-index:3;pointer-events:none;
}
.editorial-photo::before{background:var(--tape-sage)}
.hero-photo img,.editorial-photo img{border-radius:1px!important}
.hero-photo:hover,.editorial-photo:hover{transform:rotate(0deg) scale(1.012);box-shadow:0 26px 48px -22px rgba(51,43,42,.55)!important}

.hero-photo figcaption,.editorial-photo figcaption{
  padding:.62rem .35rem .95rem;
  text-align:center;
}
.hero-photo figcaption strong,.editorial-photo figcaption strong{
  display:block;font-family:var(--hand);font-weight:700;font-size:1.3rem;color:var(--ink);
}
.hero-photo figcaption span,.editorial-photo figcaption span{
  display:block;margin-top:.1rem;
  font-family:var(--body);font-size:.68rem;font-weight:700;
  letter-spacing:.13em;text-transform:uppercase;color:var(--rose);
}

/* about page: founder portraits become polaroids too */
.founder-hero,.team-portrait{
  position:relative;
  padding:11px 11px 0!important;
  border:0!important;
  border-radius:2px!important;
  background:var(--card)!important;
  box-shadow:var(--shadow-deep)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  overflow:visible!important;
  transform:rotate(-2deg);
  transition:transform 380ms var(--ease),box-shadow 380ms var(--ease);
}
.team-portrait{transform:rotate(2.4deg)}
.founder-hero::before,.team-portrait::before{
  content:"";position:absolute;top:-13px;left:50%;
  width:118px;height:26px;
  transform:translateX(-50%) rotate(-3deg);
  background:var(--tape-rose);
  clip-path:polygon(3% 0,97% 0,100% 22%,97% 48%,100% 76%,96% 100%,4% 100%,0 78%,3% 50%,0 24%);
  box-shadow:0 1px 3px rgba(51,43,42,.13);
  z-index:3;pointer-events:none;
}
.team-portrait::before{background:var(--tape-sage)}
.founder-hero img,.team-portrait img{border-radius:1px!important;position:static!important}
.founder-hero figcaption,.team-portrait figcaption{
  position:static!important;
  padding:.62rem .35rem .95rem!important;
  background:none!important;
  color:var(--ink)!important;
  text-align:center;
}
.founder-hero figcaption strong,.team-portrait figcaption strong,
.founder-hero figcaption b,.team-portrait figcaption b{
  display:block;font-family:var(--hand);font-weight:700;font-size:1.42rem;color:var(--ink)!important;
}
.founder-hero figcaption span,.team-portrait figcaption span{
  display:block;margin-top:.1rem;
  font-family:var(--body);font-size:.68rem;font-weight:700;
  letter-spacing:.13em;text-transform:uppercase;color:var(--rose)!important;
}
.founder-hero:hover,.team-portrait:hover{transform:rotate(0deg) scale(1.012);box-shadow:0 26px 48px -22px rgba(51,43,42,.55)!important}

.founder-quote{
  font-family:var(--hand)!important;
  font-size:1.6rem!important;
  line-height:1.3!important;
  color:var(--ink)!important;
}

/* the about-page logo becomes a pinned cut-out */
.about-logo{
  border-radius:50%!important;
  background:var(--card)!important;
  box-shadow:0 0 0 9px var(--card),var(--shadow-deep)!important;
  padding:0!important;
  transform:rotate(-3deg);
}
.about-logo img{border-radius:50%}

/* ------------------------------------------------------------ sections -- */

.section.soft{
  background:var(--rose-wash)!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  position:relative;
}
/* paper tears into every tinted band */
.section.soft::before{
  content:"";
  position:absolute;top:-1px;left:-2vw;right:-2vw;height:26px;
  background:var(--paper);
  -webkit-mask:url("torn-top.svg") no-repeat center/100% 100%;
  mask:url("torn-top.svg") no-repeat center/100% 100%;
  z-index:2;pointer-events:none;
}

.breadcrumb span{color:var(--rose)}
.commitments,.commitment,.feature,.faq-row{border-color:rgba(168,90,100,.3)!important;border-style:dashed!important;border-width:0 0 1.5px!important}
.commitments{border-top-width:1.5px!important}
.feature-list,.faq-list{border-top:1.5px dashed rgba(168,90,100,.3)!important;background:transparent!important}
.check-list li::before,.plain-list li::before{color:var(--sage-deep)}

/* ledger strip becomes pinned cards */
.intro-ledger{
  display:grid;gap:clamp(1rem,2.2vw,1.7rem)!important;
  background:transparent!important;box-shadow:none!important;overflow:visible!important;
}
.intro-ledger>div{
  position:relative;
  padding:1.5rem 1.25rem 1.35rem!important;
  border:0!important;
  border-radius:14px 4px 16px 5px;
  background:var(--card)!important;
  box-shadow:var(--shadow-lift);
  backdrop-filter:none!important;
}
.intro-ledger>div+div{border-left:0!important}
.intro-ledger>div::before{ /* push pin */
  content:"";position:absolute;top:-11px;left:50%;width:22px;height:22px;
  transform:translateX(-50%);border-radius:50%;
  background:radial-gradient(circle at 34% 30%,#fff 0 12%,var(--rose) 13% 62%,var(--rose-deep) 63% 100%);
  box-shadow:0 3px 5px -1px rgba(51,43,42,.4);
}
.intro-ledger>div:nth-child(2)::before{background:radial-gradient(circle at 34% 30%,#fff 0 12%,var(--sage) 13% 62%,var(--sage-deep) 63% 100%)}
.intro-ledger>div:nth-child(3)::before{background:radial-gradient(circle at 34% 30%,#fff 0 12%,var(--honey) 13% 62%,#B98426 63% 100%)}
.intro-ledger b{
  font-family:var(--hand)!important;font-size:1.42rem!important;
  letter-spacing:0!important;color:var(--rose)!important;
}

/* comparison table + process ledger */
.compare table th{color:var(--rose);font-family:var(--body);font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.compare th,.compare td{border-bottom:1.5px dashed rgba(168,90,100,.28)!important}
.process,.process-step,.process-step+.process-step{border-color:rgba(168,90,100,.3)!important;border-style:dashed!important}
.process-step b{font-family:var(--hand)!important;font-size:1.9rem!important;color:var(--rose)!important}

/* safeguards panel gets stitched edging */
.safeguards{padding:clamp(1.6rem,4vw,2.6rem)!important}
.safeguards::before{
  content:"";position:absolute;inset:7px;border-radius:inherit;
  border:2px dashed rgba(168,90,100,.34);pointer-events:none;z-index:1;
  background:none;width:auto;height:auto;transform:none;clip-path:none;box-shadow:none;
}

/* ------------------------------------------------------ referral page -- */

.referral-form,.contact-panel{
  position:relative;
  border:0!important;
  border-radius:14px 4px 16px 5px!important;
  background:var(--card)!important;
  box-shadow:var(--shadow-lift)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.referral-form::before{ /* tape across the top of the form */
  content:"";position:absolute;top:-13px;left:50%;
  width:126px;height:26px;
  transform:translateX(-50%) rotate(-2.5deg);
  background:var(--tape-honey);
  clip-path:polygon(3% 0,97% 0,100% 22%,97% 48%,100% 76%,96% 100%,4% 100%,0 78%,3% 50%,0 24%);
  box-shadow:0 1px 3px rgba(51,43,42,.13);
  z-index:3;pointer-events:none;
}
.referral-form::after{ /* stitched inner edge */
  content:"";position:absolute;inset:8px;border-radius:inherit;
  border:2px dashed rgba(168,90,100,.3);pointer-events:none;
}
.contact-panel{background:var(--rose-wash)!important;transform:rotate(.6deg)}
.contact-panel h2{font-size:clamp(1.7rem,2.6vw,2.3rem)!important}
.contact-row{border-color:rgba(168,90,100,.3)!important;border-style:dashed!important;border-width:0 0 1.5px!important}
.contact-row:last-child{border-bottom-width:0!important}
.contact-row b,.contact-row strong{font-family:var(--hand);font-weight:700;font-size:1.28rem;color:var(--rose)}

.form-section h2{font-size:clamp(1.7rem,2.6vw,2.3rem)!important}
.form-section+.form-section{border-top:1.5px dashed rgba(168,90,100,.3)!important}

.field label,.field>span,.choice label{
  font-family:var(--hand);font-size:1.18rem;font-weight:700;color:var(--ink);
}
.field input,.field select,.field textarea,
.referral-form input,.referral-form select,.referral-form textarea{
  border:0!important;
  border-radius:10px 4px 10px 4px!important;
  background:var(--paper-warm)!important;
  box-shadow:inset 0 0 0 1.5px rgba(168,90,100,.34)!important;
}
.field input:focus,.field select:focus,.field textarea:focus,
.referral-form input:focus,.referral-form select:focus,.referral-form textarea:focus{
  outline:0;box-shadow:inset 0 0 0 2.5px var(--rose)!important;
}
.choice{
  border-radius:20px 7px 20px 7px!important;
  border:0!important;
  background:var(--card)!important;
  box-shadow:inset 0 0 0 1.5px rgba(51,43,42,.12),0 3px 8px -6px rgba(51,43,42,.5)!important;
}
.choice:hover{transform:translateY(-2px) rotate(-1deg)}
.hint,.form-status{color:var(--ink-faint)}

/* the privacy note becomes a sticky note */
.privacy-note{
  position:relative;
  border:0!important;
  border-radius:2px 2px 14px 2px!important;
  background:var(--honey-wash)!important;
  box-shadow:var(--shadow-lift)!important;
  transform:rotate(-1.2deg);
}
.privacy-note::after{
  content:"";position:absolute;right:0;bottom:0;width:26px;height:26px;
  background:linear-gradient(135deg,transparent 50%,rgba(51,43,42,.13) 50%,rgba(255,255,255,.85) 52%);
}
.privacy-note strong,.privacy-note b{
  font-family:var(--hand);font-weight:700;font-size:1.42rem;color:#A9761F;
}

/* ----------------------------------------------------------------- CTA -- */

.cta-shell{
  border-radius:20px 6px 22px 7px!important;
  background:var(--rose)!important;
  box-shadow:var(--shadow-deep)!important;
}
.cta h2{color:#fff!important}
.cta p{color:rgba(255,255,255,.88)!important}
.cta .button{
  background:var(--card)!important;color:var(--rose)!important;
  box-shadow:0 5px 0 -1px rgba(51,43,42,.22)!important;
}
.cta .button:hover{background:var(--rose-wash)!important}

/* -------------------------------------------------------------- footer -- */

footer{
  position:relative;
  padding:clamp(3rem,6vw,4.5rem) 0 2rem!important;
  background:var(--kraft)!important;
  color:var(--ink)!important;
  border-top:0!important;
}
footer::before{
  content:"";position:absolute;top:-1px;left:-2vw;right:-2vw;height:26px;
  background:var(--paper);
  -webkit-mask:url("torn-top.svg") no-repeat center/100% 100%;
  mask:url("torn-top.svg") no-repeat center/100% 100%;
  z-index:2;pointer-events:none;
}
.footer-brand img{
  width:110px!important;border-radius:50%;
  box-shadow:0 0 0 8px rgba(255,255,255,.6),var(--shadow-lift);
  transform:rotate(-3deg);
}
.footer-grid h4{
  font-family:var(--hand)!important;font-weight:700!important;
  font-size:1.5rem!important;letter-spacing:0!important;
  text-transform:none!important;color:var(--rose)!important;
}
.footer-grid p,.footer-grid a{color:var(--ink-soft)!important;font-size:.885rem!important}
.footer-grid a:hover{color:var(--rose)!important;text-decoration:underline;text-underline-offset:3px}
.footer-base{
  border-top:1.5px dashed rgba(168,90,100,.35)!important;
  color:var(--ink-faint)!important;
}

/* ------------------------------------------------------------- motion -- */

@media (prefers-reduced-motion:reduce){
  .service-panel,.hero-photo,.editorial-photo,.about-logo{transform:none!important}
  .service-panel:hover,.hero-photo:hover,.editorial-photo:hover{transform:none!important}
}
