/* ==========================================================================
   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}

/* This file loads after inner-pages.css, so an unscoped `display:flex` here
   silently beat that file's `@media(max-width:900px){.nav-links{display:none}}`
   — the links stayed visible on mobile and pushed the burger off-screen.
   Keep the desktop layout rule inside its own query, and re-assert the hide. */
@media (min-width:901px){
  .nav-links{display:flex;align-items:center}
}
@media (max-width:900px){
  .nav-links,.nav-shell>.button,.nav-phone{display:none!important}
  .menu-button{display:grid!important;width:46px;height:46px}
}

/* .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}
}

/* ---------------------------------------------- photo grade + print ----- */

/* same single grade as the home page, so photography matches site-wide */
.hero-photo img,.editorial-photo img,.founder-hero img,
.team-portrait img,.about-logo img{filter:var(--photo-grade)}

/* Feedback and complaints */
.feedback-tab{position:fixed;right:0;top:48%;z-index:90;padding:.78rem .7rem;border-radius:14px 0 0 5px;background:var(--rose-dark);color:#fff;font-size:.82rem;font-weight:800;letter-spacing:.03em;text-decoration:none;writing-mode:vertical-rl;box-shadow:-5px 8px 18px rgba(54,47,46,.2);transition:transform 180ms var(--ease),background 180ms var(--ease)}
.feedback-tab:hover,.feedback-tab:focus-visible{background:var(--ink);transform:translateX(-3px);color:#fff}
.feedback-promise{align-self:center;max-width:460px;padding:clamp(1.5rem,3vw,2.2rem);background:var(--paper)}
.feedback-promise h2{margin-bottom:.7rem;font-size:clamp(1.8rem,3vw,2.5rem)}
.feedback-promise p{margin:.6rem 0;color:var(--muted)}
.feedback-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.feedback-form .privacy-note{margin-top:1.5rem}
.feedback-aside{display:grid;gap:1.2rem;position:sticky;top:110px}
.feedback-steps{display:grid;gap:1rem;margin:1.2rem 0 0;padding-left:1.25rem;color:var(--muted)}
.feedback-steps li{padding-left:.35rem}
.external-complaint{padding:1.5rem;border-radius:14px;background:var(--ink);color:#fff;box-shadow:var(--shadow-soft)}
.external-complaint h2{color:#fff;font-size:1.65rem}
.external-complaint p{color:rgba(255,255,255,.82)}
.external-complaint a:not(.button){color:#fff;font-weight:800}
.external-complaint .button.secondary{border-color:rgba(255,255,255,.45);color:#fff}
@media(max-width:820px){.feedback-layout{grid-template-columns:1fr}.feedback-aside{position:static}.feedback-tab{display:none}}

@media print{
  .site-nav,.menu-button,.mobile-menu,.skip,.mobile-cta,.feedback-tab,
  .breadcrumb,.hero-actions,.about-jumpbar,.phone-visual,.phone-orbit,
  .cta,.demo-note{display:none!important}

  .service-panel,.safeguards,.level,.compare,.intro-ledger>div,
  .referral-form,.contact-panel,.privacy-note,.hero-photo,.editorial-photo,
  .founder-hero,.team-portrait{
    transform:none!important;box-shadow:none!important;
    background:#fff!important;border:1px solid #999!important;border-radius:0!important;
  }
  .service-panel::before,.level::before,.hero-photo::before,
  .editorial-photo::before,.founder-hero::before,.team-portrait::before,
  .referral-form::before,.referral-form::after,.section.soft::before,
  .phone-demo::before,footer::before{display:none!important}

  .section.soft,.phone-demo,.specialist-callout,.diversity-section,footer{
    background:#fff!important;color:#000!important;
  }
  .phone-demo h2,.phone-demo p,.phone-demo .kicker,
  .specialist-callout h2,.specialist-callout p,.specialist-callout .kicker,
  .diversity-section h2,.diversity-section p,.diversity-section .kicker,
  .footer-grid h4,.footer-grid p,.footer-grid a{color:#000!important}

  .hero-photo img,.editorial-photo img,.founder-hero img,.team-portrait img{filter:none!important}
  .service-panel,.commitment,.feature,.level,.faq-row{break-inside:avoid;page-break-inside:avoid}
  .reveal{opacity:1!important;transform:none!important}
}

form .field label,form .field>span,form label.choice,form .choice>span,form .consent,form .consent>span{font-family:Arial,sans-serif;font-size:1rem;line-height:1.5;font-style:normal}

.brand-copy span{font-family:var(--body);font-size:.5rem;font-weight:600;letter-spacing:.34em;text-transform:uppercase;color:var(--rose-deep);margin-top:.12rem}

/* Client revisions: a quote-led story with a branded scrapbook seal in the hero. */
.about-editorial-hero .hero-grid{grid-template-columns:minmax(620px,760px) minmax(300px,1fr);gap:clamp(2rem,4vw,4rem);align-items:center}
.about-hero-logo{
  --rot:0deg;
  position:relative;
  justify-self:center;
  width:min(100%,26rem);
  margin:0;
  padding:clamp(.65rem,1.5vw,1rem);
  border-radius:50%;
  background:rgba(255,255,255,.7);
  box-shadow:0 18px 44px rgba(54,47,46,.12);
  transform:none;
}
.about-hero-logo::after{
  content:"";
  position:absolute;
  inset:clamp(.45rem,1vw,.7rem);
  border:1px dashed rgba(168,90,100,.34);
  border-radius:50%;
  pointer-events:none;
}
.about-hero-logo img{position:relative;z-index:1;width:100%;height:auto}
.founder-quote--lead{margin-top:0}
.founder-quote--lead p{font-size:clamp(2rem,3.4vw,3.3rem);line-height:1.08}
.nav-phone{font-family:var(--body)!important;font-size:.84rem!important;font-weight:700!important;letter-spacing:0!important}

/* Our approach: four separate scrapbook notes connected as one support journey. */
#approach .process{
  position:relative;
  isolation:isolate;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:clamp(1rem,2vw,1.5rem);
  margin-top:clamp(2rem,4vw,3.25rem);
  border:0!important;
}
#approach .process::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:2.25rem;
  left:7%;
  right:7%;
  height:2px;
  background:repeating-linear-gradient(90deg,rgba(168,90,100,.42) 0 7px,transparent 7px 13px);
}
#approach .process-step,
#approach .process-step+.process-step{
  position:relative;
  min-height:15.5rem;
  padding:clamp(2.35rem,3vw,2.75rem) clamp(1.25rem,2vw,1.65rem) clamp(1.35rem,2vw,1.75rem);
  border:0!important;
  border-radius:14px;
  background:var(--paper,#fffdfa);
  box-shadow:0 12px 28px rgba(54,47,46,.11);
  transform:rotate(var(--note-angle));
  transition:transform 260ms cubic-bezier(.16,1,.3,1),box-shadow 260ms ease;
}
#approach .process-step:nth-child(1){--note-angle:-.7deg}
#approach .process-step:nth-child(2){--note-angle:.45deg}
#approach .process-step:nth-child(3){--note-angle:-.35deg}
#approach .process-step:nth-child(4){--note-angle:.65deg}
#approach .process-step::before{
  content:"";
  position:absolute;
  top:-.65rem;
  left:50%;
  width:4.7rem;
  height:1.3rem;
  background:rgba(255,215,218,.72);
  box-shadow:0 2px 5px rgba(54,47,46,.08);
  transform:translateX(-50%) rotate(calc(var(--note-angle) * -1));
}
#approach .process-step:nth-child(even)::before{background:rgba(217,205,167,.7)}
#approach .process-step b{
  width:auto!important;
  height:auto!important;
  display:block!important;
  margin:0 0 .8rem!important;
  border-radius:0!important;
  background:none!important;
  color:var(--rose)!important;
  font:700 2rem/1 var(--hand)!important;
  letter-spacing:.02em!important;
}
#approach .process-step h3{margin:0 0 .65rem;font-size:1.08rem;line-height:1.3}
#approach .process-step p{font-size:.91rem;line-height:1.62}
#approach .process-step:hover{
  transform:translateY(-7px) rotate(0deg);
  box-shadow:0 18px 36px rgba(54,47,46,.16);
}
#approach .process-step:hover b{color:var(--rose-deep)!important}
@keyframes approachNoteSettle{
  from{opacity:.25;transform:translateY(18px) rotate(calc(var(--note-angle) - 1.5deg));box-shadow:0 5px 14px rgba(54,47,46,.07)}
  to{opacity:1;transform:translateY(0) rotate(var(--note-angle));box-shadow:0 12px 28px rgba(54,47,46,.11)}
}
#approach .process.in .process-step{animation:approachNoteSettle 560ms cubic-bezier(.16,1,.3,1) backwards}
#approach .process.in .process-step:nth-child(2){animation-delay:80ms}
#approach .process.in .process-step:nth-child(3){animation-delay:160ms}
#approach .process.in .process-step:nth-child(4){animation-delay:240ms}

@media(max-width:1100px){
  .about-editorial-hero .hero-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.52fr);gap:2rem}
  .about-hero-logo{width:min(100%,22rem)}
}
@media(max-width:900px){
  .about-editorial-hero .hero-grid{grid-template-columns:minmax(0,1fr) minmax(190px,.42fr);gap:1.5rem}
  .about-hero-logo{width:min(100%,18rem)}
  #approach .process{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}
  #approach .process::before{display:none}
  #approach .process-step,#approach .process-step+.process-step{min-height:13.5rem;padding:2.35rem 1.4rem 1.5rem}
}
@media(max-width:560px){
  .about-editorial-hero .hero-grid{grid-template-columns:1fr}
  .about-hero-logo{width:min(76vw,15rem);margin-top:1rem}
  #approach .process{grid-template-columns:1fr;gap:1.25rem;padding-left:1.15rem}
  #approach .process::before{
    display:block;
    top:1rem;
    bottom:1rem;
    left:.2rem;
    right:auto;
    width:2px;
    height:auto;
    background:repeating-linear-gradient(180deg,rgba(168,90,100,.42) 0 7px,transparent 7px 13px);
  }
  #approach .process-step,#approach .process-step+.process-step{min-height:0;padding:2.2rem 1.25rem 1.35rem}
}
@media(prefers-reduced-motion:reduce){
  #approach .process.in .process-step{animation:none}
  #approach .process-step,#approach .process-step:hover{transform:rotate(var(--note-angle));box-shadow:0 12px 28px rgba(54,47,46,.11)}
}
