@layer reset,styles,prewind;
@import url('theme.css');
@import url('typography.css');
@import url('forms.css');
@import url('ui.css');
@import url('navigation.css');
@import url('prewind.css');
@layer styles{
  html{scroll-behavior:smooth;scroll-padding-top:100px}
  body{font-weight:500}
  img{height:auto}
  ::selection{background:var(--brand-1-light);color:var(--black)}
  .container{min-width:0;max-width:100%}
  h1,h2,h3{font-weight:900;line-height:1.05;letter-spacing:-.025em;margin-top:0}
  h1{font-size:var(--text-3xl);letter-spacing:-.035em;margin-bottom:var(--space-md)}
  h2{font-size:var(--text-2xl);margin-bottom:var(--space-sm)}
  h3{font-size:var(--text-xl)}
  p{margin-top:0}
  a{color:inherit;text-underline-offset:5px}
  :focus-visible{outline:3px solid var(--brand-1);outline-offset:5px}
  .skip{position:fixed;top:8px;left:16px;transform:translateY(-160%);padding:12px 20px;background:var(--white);z-index:20;border-radius:var(--rounded)}
  .skip:focus{transform:none}
  .public-header{z-index:10;background:rgb(255 130 55/.88);backdrop-filter:blur(16px);border-bottom:1px solid rgb(41 18 57/.1)}
  .public-header>nav{min-height:84px}
  .public-header img{width:209px;height:auto}
  nav a{text-decoration:none;font-weight:600;font-size:.94rem}
  nav a:hover{text-decoration:underline}
  .desktop-navigation{display:flex;gap:var(--space-lg)}
  .mobile-menu-toggle{display:none;width:48px;height:48px;padding:10px;border:0;background:transparent}
  .mobile-menu-toggle svg{width:26px;height:26px}
  #mobile-navigation{inset:var(--flea-toolbar-height,0px) 0 0 auto;margin:0;width:min(24rem,100%);height:calc(100dvh - var(--flea-toolbar-height,0px));overflow:auto;border:0;padding:var(--space-lg);background:var(--brand-1-light);color:var(--black);transform:translateX(24px);opacity:0}
  #mobile-navigation:popover-open{transform:none;opacity:1}
  #mobile-navigation::backdrop{inset:var(--flea-toolbar-height,0px) 0 0;background:rgb(41 18 57/.4)}
  #mobile-navigation button{min-height:44px}
  #mobile-navigation nav a{padding-block:12px;font-size:1.2rem}
  .hero{padding-block:clamp(32px,4.5vw,64px)}
  .opening{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:var(--space-sm)}
  .opening-copy{z-index:1}
  .problem-lines{font-size:clamp(1.06rem,1.65vw,1.25rem);line-height:1.55;margin-bottom:var(--space-lg)}
  .price{font-family:var(--font-heading);font-size:clamp(2.2rem,3.7vw,3.15rem);font-weight:900;letter-spacing:-.025em;line-height:1;margin-bottom:6px}
  .price span{font-family:var(--font-body);font-size:.5em;font-weight:600;letter-spacing:0}
  .terms{font-size:1rem;margin-bottom:var(--space-md)}
  .ui-button{min-height:56px;padding-inline:var(--space-lg);border-radius:var(--rounded);font-size:1.1rem}
  .ui-brand-1{color:var(--white)}
  .ui-button svg{width:24px;height:24px}
  .reassurance{font-size:.9rem;line-height:1.55;max-width:44ch;margin-top:var(--space-md);margin-bottom:0}
  .reassurance strong{display:block}
  .notepad img{width:110%;max-width:none;margin-left:-5%;height:auto;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent),linear-gradient(0deg,transparent,#000 5%,#000 95%,transparent);mask-composite:intersect}
  .routine{background:var(--brand-1-light);padding-block:clamp(48px,5.5vw,80px)}
  .routine>.container>p{font-size:var(--text-lg);max-width:70ch}
  .flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-lg);max-width:none;margin-block:var(--space-xl) var(--space-lg)}
  .flow li:not(:last-child)::after{content:'';position:absolute;top:56px;right:-22px;width:22px;height:12px;background:currentColor;clip-path:polygon(0 43%,75% 43%,55% 0,68% 0,100% 50%,68% 100%,55% 100%,75% 57%,0 57%);opacity:.65}
  .process-art{width:124px;height:124px;border-radius:50%;margin-bottom:var(--space-md)}
  .process-art svg{width:100%;height:100%}
  .flow h3{font-size:1.45rem;line-height:1.1;margin-bottom:var(--space-sm)}
  .flow p{font-size:1rem;line-height:1.65;color:var(--dark)}
  .flow.playing .process-art{animation:attention 2.4s ease-out both;animation-delay:var(--delay,0ms)}
  .flow li:nth-child(2){--delay:180ms}.flow li:nth-child(3){--delay:360ms}.flow li:nth-child(4){--delay:540ms}
  @keyframes attention{0%,100%{filter:none}25%,65%{filter:drop-shadow(0 8px 9px rgb(41 18 57/.18));transform:translateY(-4px)}}
  .routine-footer{border-top:1px solid var(--light);padding-top:var(--space-lg)}
  .routine-footer p{font-family:var(--font-heading);font-size:1.5rem;line-height:1.2;max-width:40ch}
  .routine-footer button{font-size:.88rem;background:transparent;border-color:#a792ba;white-space:nowrap;min-height:44px}
  .chapter{padding-block:clamp(56px,7vw,100px);background:var(--white)}
  .guide{display:grid;grid-template-columns:.65fr 1fr;align-items:center;gap:clamp(32px,6vw,88px)}
  .portrait{aspect-ratio:1;object-fit:cover;object-position:50% 27%;border-radius:var(--rounded-lg)}
  .guide h2{max-width:18ch}
  .guide p{max-width:48ch}
  .signature{font-family:var(--font-heading);font-size:1.4rem;margin-bottom:0}
  .included{background:var(--lighter)}
  .scope{max-width:none;margin-block:var(--space-lg) 0}
  .scope>div{display:grid;grid-template-columns:.75fr 1.8fr;gap:var(--space-lg);padding-block:var(--space-md);border-top:1px solid var(--light)}
  .scope dt{font-family:var(--font-heading);font-size:1.4rem;line-height:1.25}
  .scope dd{color:var(--dark);max-width:67ch}
  .faq{max-width:850px}
  details{border-top:1px solid var(--light);padding-block:var(--space-md)}
  details:last-child{border-bottom:1px solid var(--light)}
  summary{cursor:pointer;font-weight:700;min-height:44px;align-content:center}
  details p{color:var(--dark);margin-top:var(--space-sm);margin-bottom:0}
  .closing{background:var(--brand-2);padding-block:clamp(56px,7vw,100px)}
  .closing-layout{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:var(--space-xl)}
  .closing h2{max-width:18ch}
  .closing .guarantee{max-width:48ch;border-top:1px solid rgb(41 18 57/.24);padding-top:var(--space-md);margin-top:var(--space-lg)}
  .closing button:disabled{opacity:1;background:#48354f;color:var(--white);border:0;cursor:default}
  .availability{font-size:.9rem;margin-top:var(--space-sm)}
  footer{background:var(--black);color:var(--brand-1-light);padding-block:var(--space-lg);font-size:.875rem}
  footer a{color:inherit}
  @media(prefers-reduced-motion:no-preference){#mobile-navigation{transition:opacity 180ms ease,transform 180ms ease,display 180ms allow-discrete,overlay 180ms allow-discrete}@starting-style{#mobile-navigation:popover-open{opacity:0;transform:translateX(24px)}}}
  @media(max-width:900px){.opening{grid-template-columns:1.1fr 1fr}h1{font-size:clamp(3rem,7.2vw,4.7rem)}.desktop-navigation{gap:var(--space-md)}.flow{gap:var(--space-md)}.flow li:not(:last-child)::after{right:-15px;width:15px}.process-art{width:100px;height:100px}.flow h3{font-size:1.25rem}.flow p{font-size:.95rem}}
  @media(max-width:700px){.public-header>nav{min-height:72px}.public-header img{width:178px}.desktop-navigation{display:none}.mobile-menu-toggle{display:inline-flex;margin-left:auto}.hero{padding-block:36px 18px}.opening{grid-template-columns:minmax(0,1fr);gap:0}h1{font-size:clamp(3.15rem,11.8vw,4.65rem);max-width:12ch}.problem-lines{font-size:1.03rem;margin-bottom:24px}.price{font-size:2.5rem}.reassurance{font-size:.9rem;max-width:44ch}.opening .ui-button{width:100%}.notepad{max-width:420px;margin:8px auto 0}.notepad img{width:100%;margin-left:0}.routine h2{max-width:21ch}.routine>.container>p{font-size:1.05rem}.flow{grid-template-columns:minmax(0,1fr);gap:var(--space-lg);margin-top:var(--space-lg)}.flow li{display:grid;grid-template-columns:78px minmax(0,1fr);column-gap:18px}.process-art{grid-row:1/3;width:78px;height:78px;margin:0}.flow h3{font-size:1.35rem;margin-bottom:8px}.flow p{font-size:1rem}.flow li:not(:last-child)::after{top:calc(100% + 6px);left:33px;right:auto;width:16px;height:18px;transform:rotate(90deg)}.routine-footer{align-items:flex-start}.routine-footer p{font-size:1.3rem}.guide,.closing-layout{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.portrait{max-width:320px;aspect-ratio:1.15}.guide h2{max-width:20ch}.scope>div{grid-template-columns:minmax(0,1fr);gap:10px}.scope dt{font-size:1.3rem}.closing-layout{gap:40px}footer .container{align-items:flex-start}}
  @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.flow.playing .process-art{animation:none}#mobile-navigation{transition:none}}
  /* Shared proportions for the small, single-purpose owner screens. */
  .admin-access { max-width:29rem; margin:clamp(0rem,4vh,3rem) auto; padding:var(--space-lg); border:1px solid var(--light); border-radius:var(--rounded-lg); background:var(--white); box-shadow:0 8px 32px rgb(0 0 0 / .035); }
  .admin-access > h1 { letter-spacing:-.035em; }
  .admin-access > p { font-size:var(--text-base); }
  .admin-access > p:last-child { font-size:max(.875rem,var(--text-sm)); }
  .admin-access form { margin-block:var(--space-lg); }
  .admin-access .form-field { margin-bottom:var(--space-md); font-size:var(--text-sm); }
  .admin-access input { font-size:max(1rem,var(--text-base)); }
  .admin-access .code-input { max-width:none; }
  .admin-access [role="alert"],.admin-access [role="status"] { padding:var(--space-sm); border:1px solid var(--light); border-radius:var(--rounded-lg); background:var(--lighter); }
  main > .container > h1 { max-width:20ch; }
  main > .container > h1:first-child { margin-top:0; }
  main > .container > p { max-width:58ch; }
  .contact-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:var(--space-xl); }
  @media (max-width: 760px) { .contact-layout { grid-template-columns:minmax(0,1fr); } }
  .team-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-md); }
  .team-grid article > :last-child > p:last-child { margin-bottom:0; }
  @media (max-width: 900px) { .team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
  @media (max-width: 560px) { .team-grid { grid-template-columns:minmax(0,1fr); } }
  /* Full-height shell with independently scrolling navigation and editing. */
  .admin-shell {
    height: 100dvh;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    overflow: hidden;
  }
  .admin-main { min-height: 0; overflow: auto; }
  .admin-workspace {
    height: 100%;
    display: grid;
    grid-template-columns: 15rem minmax(0, 1fr);
  }
  .admin-sidebar {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }
  .admin-page-list {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    scrollbar-gutter: stable;
  }
  .admin-page-list a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: -2px;
  }
  .admin-page-list a[aria-current="page"] {
    background: var(--white);
    color: var(--black);
    font-weight: var(--font-semibold);
  }
  .admin-content { min-width: 0; overflow-y: auto; }
  .admin-panel { max-width: 56rem; }
  @media (max-width: 640px) {
    .admin-workspace { grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(0, 30dvh) minmax(0, 1fr); }
  }
  .blog-public { max-width: 52rem; }
  .blog-cover { display:block; width:100%; height:auto; margin-block:var(--space-lg); }
  .blog-body { overflow-wrap:anywhere; }
  .blog-post-list { list-style:none; padding:0; }
  .blog-post-list li { display:flex; justify-content:space-between; gap:var(--space-md); padding-block:var(--space-md); border-bottom:1px solid var(--light); }
  .blog-format { display:flex; flex-wrap:wrap; gap:var(--space-xs); margin-block:var(--space-sm); }
  .blog-format button { font-size:var(--text-sm); }
  .blog-rich-editor { min-height:18rem; padding:var(--space-md); background:var(--white); border:1px solid var(--light); border-radius:var(--rounded); overflow-wrap:anywhere; }
  .blog-rich-editor:focus-visible { outline:2px solid var(--brand-1); outline-offset:2px; }
  .blog-cover-field { margin-block:var(--space-lg); padding:var(--space-md); border:1px solid var(--light); }
  .blog-cover-preview { display:block; max-width:100%; width:20rem; max-height:15rem; object-fit:contain; margin-block:var(--space-sm); }
  .blog-cover-preview[hidden] { display:none; }
  .blog-library { width:min(44rem,calc(100vw - 2rem)); max-height:80dvh; overflow:auto; padding:var(--space-lg); border:0; border-radius:var(--rounded); background:var(--white); }
  .blog-library::backdrop { background:#0005; }
  .blog-photo-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(8rem,1fr)); gap:var(--space-sm); margin-block:var(--space-md); }
  .blog-photo-grid img { display:block; width:100%; height:6rem; object-fit:cover; }
  .blog-photo-grid button { overflow-wrap:anywhere; }

  #blog-editor { max-width:none; }
  #blog-editor [hidden] { display:none; }
  #blog-actions { position:sticky; bottom:0; background:var(--bg-color); border-top:1px solid var(--light); }


}
