
    :root {
      --paper: #FFF9EE;
      --white: #FFFFFF;
      --ink: #1F2A44;
      --charcoal: #292929;
      --wine: #EDB63E;
      --wine-dark: #c8941e;
      --sand: #EDB63E;
      --line: rgba(31,42,68,.2);
      --blue: #1F2A44;
      --sky: #FFF9EE;
      --aqua: #FFF9EE;
      --lavender: #FFF9EE;
      --serif: "Fredoka", Arial, sans-serif;
      --sans: "Poppins", Arial, sans-serif;
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body { background: var(--paper); color: var(--ink); font-family: var(--sans); font-size: 1rem; line-height: 1.7; margin: 0; overflow-x: hidden; }
    img { display: block; max-width: 100%; }
    a { color: inherit; }
    button, a { -webkit-tap-highlight-color: transparent; }
    :focus-visible { outline: 3px solid var(--wine); outline-offset: 4px; }
    .wrap { margin-inline: auto; width: min(1200px, calc(100% - 48px)); }
    .section { padding: clamp(5rem, 9vw, 8.5rem) 0; }
    .eyebrow { align-items: center; display: flex; font-size: .78rem; font-weight: 800; gap: .8rem; letter-spacing: .2em; margin: 0 0 1.1rem; text-transform: uppercase; }
    .eyebrow::before { background: var(--wine); content: ""; height: 2px; width: 42px; }
    ::selection { background: var(--wine); color: var(--ink); }
    h1, h2, h3 { font-family: var(--serif); font-weight: 400; margin-top: 0; }
    h1 { font-size: clamp(4rem, 8.8vw, 8.4rem); letter-spacing: -.04em; line-height: .9; margin-bottom: 1.7rem; }
    h2 { font-size: clamp(2.8rem, 5.3vw, 5.2rem); letter-spacing: -.035em; line-height: .98; margin-bottom: 1.2rem; }
    h3 { font-size: clamp(1.7rem, 2.9vw, 2.65rem); letter-spacing: -.02em; line-height: 1.05; }
    p { margin-top: 0; }
    .lede { font-size: clamp(1.08rem, 2vw, 1.3rem); line-height: 1.65; max-width: 720px; }
    .accent { color: var(--wine); font-style: italic; }
    .button { align-items: center; background: var(--wine); border: 2px solid var(--ink); border-radius: 999px; box-shadow: 4px 4px 0 var(--ink); color: var(--ink); display: inline-flex; font-size: .78rem; font-weight: 900; gap: .75rem; justify-content: center; letter-spacing: .12em; min-height: 54px; padding: .9rem 1.45rem; text-decoration: none; text-transform: uppercase; transition: background .2s ease, box-shadow .2s ease, color .2s ease, transform .2s ease; }
    .button:hover { background: var(--wine-dark); border-color: var(--ink); box-shadow: 2px 2px 0 var(--ink); color: var(--white); transform: translate(2px,2px); }
    .button.light { background: var(--white); border-color: var(--white); color: var(--ink); }
    .button.light:hover { background: var(--sand); border-color: var(--sand); }
    .button.outline { background: transparent; border-color: currentColor; color: inherit; }
    .button.outline:hover { background: var(--ink); border-color: var(--ink); color: var(--white); }
    .site-header { background: rgba(255,255,255,.97); border-bottom: 4px solid var(--wine); position: sticky; top: 0; z-index: 50; backdrop-filter: blur(12px); }
    .nav { align-items: center; display: flex; gap: 2rem; justify-content: space-between; min-height: 84px; }
    .brand { display: inline-flex; flex-direction: column; line-height: 1; text-decoration: none; }
    .brand strong { color: var(--blue); font-family: var(--serif); font-size: 1.8rem; font-weight: 400; letter-spacing: -.03em; text-transform: uppercase; }
    .brand span { font-size: .62rem; font-weight: 800; letter-spacing: .38em; margin-top: .4rem; text-transform: uppercase; }
    .nav-links { align-items: center; display: flex; gap: 1.7rem; }
    .nav-links > a:not(.button) { font-size: .76rem; font-weight: 800; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; }
    .nav-links > a:not(.button):hover { color: var(--blue); }
    .menu-button { background: var(--blue); border: 1px solid var(--blue); color: var(--white); display: none; font: 800 .76rem var(--sans); letter-spacing: .12em; padding: .7rem 1rem; text-transform: uppercase; }
    .hero { background: linear-gradient(135deg,var(--white),var(--paper)); border-radius: 0 0 7vw 7vw; color: var(--ink); overflow: hidden; position: relative; z-index: 1; }
    .issue-line { border-bottom: 1px solid rgba(23,35,74,.25); color: var(--blue); display: flex; font-size: .7rem; font-weight: 800; justify-content: space-between; letter-spacing: .18em; padding: 1rem 0; text-transform: uppercase; }
    .hero-grid { align-items: center; display: grid; gap: clamp(2.5rem,5vw,5rem); grid-template-columns: 1.08fr .92fr; min-height: auto; padding: clamp(3rem,6vw,5.5rem) 0; }
    .hero-copy { align-self: center; }
    .hero h1 { font-size: clamp(3.6rem,6.4vw,6.5rem); line-height: .94; }
    .hero .eyebrow { color: var(--blue); }
    .hero-copy > p:not(.eyebrow):not(.authority-line) { font-size: clamp(1.05rem,1.8vw,1.24rem); max-width: 660px; }
    .authority-line { border-left: 3px solid var(--wine); color: var(--charcoal); font-size: .9rem; font-weight: 700; line-height: 1.65; margin: 1.7rem 0 0; max-width: 660px; padding-left: 1rem; }
    .hero-actions { display: flex; flex-wrap: wrap; gap: .85rem; margin-top: 2.2rem; }
    .hero-work { isolation: isolate; margin-inline: auto; min-height: 560px; position: relative; width: min(100%,580px); }
    .hero-work::before { background: radial-gradient(ellipse at center,rgba(237,182,62,.24) 0,rgba(237,182,62,.1) 48%,transparent 72%); border-radius: 50%; content: ""; inset: 19% -3% 10%; pointer-events: none; position: absolute; z-index: -1; }
    .hero-work-label { color: var(--ink); font-size: .72rem; font-weight: 800; letter-spacing: .17em; margin: 0 0 .25rem; position: relative; text-transform: uppercase; }
    .hero-work-intro { color: var(--charcoal); font-size: .84rem; line-height: 1.55; margin: 0; max-width: 500px; }
    .hero-work-grid { align-items: end; display: grid; gap: clamp(1rem,2vw,1.65rem); grid-template-columns: .9fr 1.08fr .9fr; justify-content: center; min-height: 430px; padding: 2rem 0 .75rem; }
    .hero-project { margin: 0; min-width: 0; text-align: center; }
    .hero-project:nth-child(2) { transform: translateY(-10px); }
    .hero-project-cover { align-items: flex-end; aspect-ratio: 3/4; display: flex; justify-content: center; }
    .hero-project img { background: transparent; border: 0; border-radius: 4px; box-shadow: 0 18px 34px rgba(31,42,68,.22); height: auto; max-height: 100%; object-fit: contain; transition: box-shadow .24s ease,transform .24s ease; width: 100%; }
    .hero-project:hover img { box-shadow: 0 27px 45px rgba(31,42,68,.3); transform: translateY(-6px); }
    .hero-project figcaption { color: var(--ink); font-size: .68rem; font-weight: 800; letter-spacing: .08em; line-height: 1.35; margin-top: .8rem; text-transform: uppercase; }
    .hero-project figcaption span { color: var(--charcoal); display: block; font-size: .62rem; font-weight: 600; letter-spacing: .04em; margin-top: .22rem; text-transform: none; }
    .hero-work-footer { align-items: center; display: flex; gap: 1rem; justify-content: space-between; margin-top: .3rem; }
    .hero-next-note { color: var(--wine-dark); font-family: var(--serif); font-size: 1.08rem; font-style: italic; margin: 0; }
    .hero-portfolio-link { align-items: center; background: var(--ink); border: 0; border-radius: 999px; color: var(--white); display: inline-flex; font-size: .68rem; padding: .62rem 1rem; text-decoration: none; transition: background .2s ease,transform .2s ease; }
    .hero-portfolio-link:hover { background: var(--wine-dark); color: var(--white); transform: translateX(3px); }
    .rate-strip { background: var(--blue); color: var(--white); margin-top: 0; padding-top: 0; }
    .rate-grid { display: grid; grid-template-columns: repeat(3,1fr); }
    .rate-item { border-right: 1px solid rgba(255,255,255,.4); padding: 1.4rem 1.7rem; }
    .rate-item:first-child { border-left: 1px solid rgba(255,255,255,.4); }
    .rate-item span { display: block; font-size: .65rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
    .rate-item strong { display: block; font-family: var(--serif); font-size: clamp(1.45rem,2.4vw,2rem); font-weight: 500; margin-top: .15rem; }
    .audience-head { align-items: end; display: grid; gap: 2rem; grid-template-columns: 1.15fr .85fr; margin-bottom: 3.5rem; }
    .audience-head .lede { margin-bottom: .35rem; }
    .audience-grid { display: grid; gap: 1.5rem; grid-template-columns: 1fr 1fr; }
    .audience-card { background: var(--white); border: 2px solid var(--ink); border-radius: 28px; box-shadow: 9px 9px 0 var(--wine); padding: clamp(2.2rem,5vw,4.5rem); }
    .audience-card + .audience-card { background: var(--paper); border-left: 2px solid var(--ink); box-shadow: 9px 9px 0 var(--wine); }
    .audience-card .number { color: var(--blue); font-size: .72rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
    .audience-card h3 { font-size: clamp(2.2rem,4vw,4rem); margin: 2rem 0 1.2rem; }
    .audience-card p { max-width: 500px; }
    .text-link { border-bottom: 1px solid currentColor; color: var(--blue); font-size: .76rem; font-weight: 800; letter-spacing: .12em; padding-bottom: .2rem; text-decoration: none; text-transform: uppercase; }
    .services { background: var(--sky); }
    .service-intro { align-items: end; display: flex; gap: 2rem; justify-content: space-between; margin-bottom: 3.5rem; }
    .service-intro .lede { margin-bottom: .4rem; max-width: 540px; }
    .service-grid { display: grid; gap: 1.2rem; grid-template-columns: 1fr 1fr; }
    .service-card { align-items: start; background: var(--white); border: 2px solid var(--ink); border-radius: 22px; display: grid; gap: 1rem; grid-template-columns: 48px 1fr auto; padding: 2rem; text-decoration: none; transition: background .18s ease,box-shadow .18s ease,transform .18s ease; }
    .service-card:nth-child(3n+1) { box-shadow: 7px 7px 0 var(--wine); }
    .service-card:nth-child(3n+2) { box-shadow: 7px 7px 0 var(--wine); }
    .service-card:nth-child(3n) { box-shadow: 7px 7px 0 var(--blue); }
    .service-card:hover { background: var(--paper); color: var(--blue); transform: translateY(-4px); }
    .service-card p { grid-column: 2/-1; }
    .service-number { color: var(--blue); font-size: .72rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
    .service-card h3 { font-size: clamp(1.8rem,3vw,3rem); margin: 0; }
    .service-card p { color: var(--charcoal); margin: .15rem 0 0; max-width: 440px; }
    .service-card .path-prompt { color: var(--wine-dark); font-size: .7rem; font-weight: 900; grid-column: 2/-1; letter-spacing: .13em; margin: 0; text-transform: uppercase; }
    .service-arrow { font-family: var(--serif); font-size: 2rem; line-height: 1; }
    .showcase { background: var(--blue); color: var(--white); overflow: hidden; }
    .showcase-grid { align-items: center; display: grid; gap: clamp(3rem,8vw,8rem); grid-template-columns: .78fr 1.22fr; }
    .book-frame { background: var(--white); border-radius: 24px; box-shadow: 0 24px 50px rgba(31,42,68,.25); padding: 1rem; transform: none; }
    .book-frame img { margin-inline: auto; max-height: 560px; }
    .showcase-copy blockquote { border-top: 2px solid rgba(255,255,255,.55); font-family: var(--serif); font-size: clamp(1.8rem,3.2vw,3rem); line-height: 1.2; margin: 2.3rem 0; padding-top: 2rem; }
    .showcase .eyebrow::before { background: var(--wine); }
    .about-grid { align-items: start; display: grid; gap: clamp(3rem,8vw,8rem); grid-template-columns: .8fr 1.2fr; }
    .about-photo { background: var(--wine); border: 8px solid var(--white); border-radius: 24px; box-shadow: -14px 14px 0 var(--wine); padding: .7rem; position: relative; transform: rotate(-1.5deg); }
    .about-photo img { aspect-ratio: 4/5; height: 100%; object-fit: cover; object-position: center 24%; width: 100%; }
    .about-photo::after { background: var(--wine); bottom: -18px; color: var(--white); content: "FOUNDER · PUBLISHER · AUTHOR"; font-size: .68rem; font-weight: 800; left: 18px; letter-spacing: .16em; padding: .8rem 1rem; position: absolute; }
    .authority-list { border-block: 1px solid var(--line); list-style: none; margin: 2rem 0; padding: 0; }
    .authority-list li { border-bottom: 1px solid var(--line); font-weight: 700; padding: .85rem 0 .85rem 1.35rem; position: relative; }
    .authority-list li:last-child { border-bottom: 0; }
    .authority-list li::before { color: var(--blue); content: "◆"; font-size: .55rem; left: 0; position: absolute; top: 1.1rem; }
    .signature { font-family: var(--serif); font-size: 1.7rem; font-style: italic; line-height: 1.25; }
    .proof { background: var(--wine); color: var(--ink); padding: 3.5rem 0; }
    .proof-grid { display: grid; grid-template-columns: repeat(5,1fr); }
    .proof-item { border-left: 1px solid rgba(20,33,61,.35); padding: .4rem 2rem; }
    .proof-item:last-child { border-right: 1px solid rgba(20,33,61,.35); }
    .proof-item strong { display: block; font-family: var(--serif); font-size: clamp(2.8rem,5vw,5.2rem); font-weight: 900; line-height: 1; }
    .proof-item span { display: block; font-size: .72rem; font-weight: 800; letter-spacing: .13em; margin-top: .65rem; text-transform: uppercase; }
    .service-ticker { background: var(--blue); color: var(--white); overflow: hidden; padding: 1rem 0; white-space: nowrap; }
    .ticker-track { display: flex; width: max-content; animation: ticker-scroll 42s linear infinite; }
    .ticker-track span { font-size: .78rem; font-weight: 800; letter-spacing: .12em; padding-right: 1.5rem; text-transform: uppercase; }
    .ticker-track b { color: var(--wine); padding-inline: .7rem; }
    @keyframes ticker-scroll { to { transform: translateX(-50%); } }
    .credibility { background: var(--paper); }
    .credibility-grid { align-items: start; display: grid; gap: clamp(3rem,8vw,7rem); grid-template-columns: .82fr 1.18fr; }
    .credibility-intro { position: sticky; top: 120px; }
    .credential-stack { display: grid; gap: 1rem; }
    .credential { background: var(--white); border: 1px solid var(--line); border-radius: 18px; display: grid; gap: 1.5rem; grid-template-columns: 56px 1fr; padding: 1.65rem; }
    .credential-number { color: var(--blue); font-size: .7rem; font-weight: 800; letter-spacing: .15em; }
    .credential h3 { font-family: var(--sans); font-size: 1.05rem; font-weight: 800; margin: 0 0 .45rem; }
    .credential p { color: var(--charcoal); margin: 0; }
    .source-links { display: flex; flex-wrap: wrap; gap: 1rem 1.4rem; margin-top: 2rem; }
    .interviews { background: var(--white); padding-top: 0; }
    .interview-banner { background: var(--blue); color: var(--white); padding: clamp(4rem,8vw,7rem) max(24px,calc((100vw - 1200px)/2)); position: relative; }
    .interview-banner::after { background: var(--wine); bottom: 0; content: ""; height: 10px; left: 0; position: absolute; right: 0; }
    .interview-banner .eyebrow { color: var(--sand); }
    .interview-banner h2 { max-width: 900px; }
    .interview-banner .lede { color: rgba(255,255,255,.88); margin-bottom: 0; }
    .interview-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(3,1fr); padding-top: 3rem; }
    .interview-card { background: var(--paper); border: 2px solid var(--ink); border-radius: 18px; box-shadow: 7px 7px 0 var(--wine); display: flex; flex-direction: column; overflow: hidden; }
    .video-frame { aspect-ratio: 16/9; background: var(--ink); overflow: hidden; }
    .video-frame iframe { border: 0; height: 100%; width: 100%; }
    .interview-copy { display: flex; flex: 1; flex-direction: column; padding: 1.5rem; }
    .interview-copy span { color: var(--blue); font-size: .7rem; font-weight: 900; letter-spacing: .15em; text-transform: uppercase; }
    .interview-copy h3 { font-size: clamp(1.4rem,2vw,2rem); margin: .75rem 0; }
    .interview-copy p { color: var(--charcoal); margin: 0 0 1.25rem; }
    .interview-copy .text-link { align-self: flex-start; margin-top: auto; }
    .portfolio { background: var(--paper); color: var(--ink); padding-top: clamp(4.5rem,7vw,7rem); }
    .portfolio .eyebrow { color: var(--ink); }
    .portfolio-head { align-items: end; display: grid; gap: 2rem; grid-template-columns: 1.05fr .95fr; margin-bottom: 2.5rem; }
    .portfolio-head .lede { color: var(--charcoal); margin-bottom: .35rem; max-width: 610px; }
    .portfolio-head-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 1.3rem; }
    .portfolio-spotlight { display: none; }
    .portfolio-spotlight::after { color: var(--wine); content: "✦"; font-size: clamp(3rem,7vw,6rem); opacity: .18; position: absolute; right: 3%; top: 4%; }
    .spotlight-cover { background: var(--white); border-radius: 18px; box-shadow: 10px 10px 0 var(--wine); display: block; overflow: hidden; transform: rotate(-2deg); }
    .spotlight-cover img { display: block; height: auto; width: 100%; }
    .spotlight-copy { position: relative; z-index: 1; }
    .spotlight-copy .eyebrow { color: var(--blue); }
    .spotlight-copy h3 { font-size: clamp(2rem,4.3vw,4rem); margin: .55rem 0 1rem; max-width: 820px; }
    .spotlight-copy p { font-size: clamp(1rem,1.6vw,1.2rem); max-width: 720px; }
    .spotlight-issues { display: flex; flex-wrap: wrap; gap: .65rem; margin: 1.25rem 0; }
    .spotlight-issues span { border: 1px solid var(--ink); border-radius: 999px; font-size: .7rem; font-weight: 900; letter-spacing: .09em; padding: .65rem .85rem; text-transform: uppercase; }
    .magazine-feature { border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); margin: 2.8rem 0 3rem; padding: 2.5rem 0 2.8rem; }
    .magazine-feature-head { align-items: end; display: flex; gap: 2rem; justify-content: space-between; margin-bottom: 1.6rem; }
    .magazine-feature h3 { font-size: clamp(1.8rem,3vw,2.8rem); margin: 0; }
    .magazine-row { display: grid; gap: clamp(1rem,2.5vw,2rem); grid-template-columns: repeat(4,1fr); }
    .magazine-tile { background: transparent; border: 0; color: var(--ink); cursor: pointer; font: inherit; padding: 0; text-align: left; }
    .magazine-tile img { aspect-ratio: 3/4; background: var(--white); border-radius: 8px; box-shadow: 0 15px 32px rgba(31,42,68,.18); object-fit: contain; transition: box-shadow .2s ease,transform .2s ease; width: 100%; }
    .magazine-tile:hover img { box-shadow: 0 23px 42px rgba(31,42,68,.26); transform: translateY(-5px); }
    .magazine-tile span { display: block; font-size: .76rem; font-weight: 800; letter-spacing: .08em; margin-top: .9rem; text-transform: uppercase; }
    .portfolio-filters { display: flex; flex-wrap: wrap; gap: .7rem; margin-bottom: 2.5rem; }
    .filter-button { background: var(--white); border: 1px solid var(--line); border-radius: 999px; color: var(--ink); cursor: pointer; font: 800 .72rem var(--sans); letter-spacing: .1em; min-height: 44px; padding: .7rem 1rem; text-transform: uppercase; }
    .filter-button[aria-pressed="true"],.filter-button:hover { background: var(--wine); border-color: var(--wine); color: var(--ink); }
    .portfolio-grid { display: grid; gap: clamp(2.5rem,5vw,4.5rem) clamp(1.2rem,2.5vw,2rem); grid-template-columns: repeat(4,1fr); }
    .portfolio-card { display: flex; flex-direction: column; margin: 0; min-width: 0; }
    .portfolio-card[hidden] { display: none; }
    .portfolio-cover { aspect-ratio: 3/4; background: var(--white); border: 0; border-radius: 9px; box-shadow: 0 16px 34px rgba(31,42,68,.17); cursor: pointer; display: block; overflow: hidden; position: relative; transition: box-shadow .22s ease,transform .22s ease; }
    .portfolio-card:hover .portfolio-cover { box-shadow: 0 25px 46px rgba(31,42,68,.26); transform: translateY(-6px); }
    .portfolio-cover img { height: 100%; object-fit: contain; width: 100%; }
    .cover-hover-link { background: rgba(31,42,68,.92); bottom: .8rem; color: var(--white); font-size: .7rem; font-weight: 800; left: 50%; letter-spacing: .08em; opacity: 0; padding: .6rem .8rem; pointer-events: none; position: absolute; text-transform: uppercase; transform: translate(-50%,8px); transition: opacity .2s ease,transform .2s ease; white-space: nowrap; }
    .portfolio-card:hover .cover-hover-link,.portfolio-cover:focus .cover-hover-link { opacity: 1; transform: translate(-50%,0); }
    .portfolio-card figcaption { font-size: 1.1rem; font-weight: 800; letter-spacing: 0; line-height: 1.35; padding-top: 1.15rem; }
    .portfolio-card figcaption span { color: var(--charcoal); display: block; font-size: .78rem; font-weight: 600; letter-spacing: .04em; margin-top: .35rem; text-transform: uppercase; }
    .project-services { color: var(--charcoal); font-size: .8rem; line-height: 1.5; margin: .65rem 0 1rem; }
    .project-button { align-self: flex-start; background: var(--wine); border: 0; border-radius: 999px; color: var(--ink); cursor: pointer; font: 800 .7rem var(--sans); letter-spacing: .08em; margin-top: auto; padding: .7rem 1rem; text-transform: uppercase; }
    .portfolio-note { border-top: 1px solid var(--line); color: var(--charcoal); margin: 3rem 0 0; padding-top: 1.4rem; }
    .blog-preview { background: var(--white); }
    .blog-head { align-items: end; display: flex; gap: 2rem; justify-content: space-between; margin-bottom: 3rem; }
    .blog-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(3,1fr); }
    .blog-card { background: var(--paper); border: 2px solid var(--ink); border-radius: 22px; box-shadow: 7px 7px 0 var(--wine); display: flex; flex-direction: column; min-height: 380px; padding: 2rem; text-decoration: none; transition: background .2s ease,color .2s ease,transform .2s ease; }
    .blog-card:hover { background: var(--blue); color: var(--white); transform: translateY(-4px); }
    .blog-card span { color: var(--blue); font-size: .7rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
    .blog-card:hover span { color: var(--sand); }
    .blog-card h3 { font-size: clamp(2rem,3.2vw,3rem); margin: 2.2rem 0 1rem; }
    .blog-card p { flex: 1; }
    .blog-card strong { font-size: .72rem; letter-spacing: .13em; text-transform: uppercase; }
    .testimonials { background: var(--white); }
    .testimonial-grid { display: grid; gap: 1.5rem; grid-template-columns: 1.1fr .9fr; }
    .testimonial-card { background: var(--paper); border: 1px solid var(--line); border-radius: 24px; padding: clamp(2rem,5vw,4rem); }
    .testimonial-card blockquote { font-family: var(--serif); font-size: clamp(1.8rem,3.4vw,3.2rem); line-height: 1.15; margin: 0 0 1.5rem; }
    .testimonial-card cite { font-size: .76rem; font-style: normal; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
    .packages-title { align-items: end; border-bottom: 1px solid var(--ink); display: flex; gap: 2rem; justify-content: space-between; margin-bottom: 0; padding-bottom: 2.5rem; }
    .packages-title p { margin-bottom: .4rem; max-width: 500px; }
    .package { border-bottom: 1px solid var(--ink); display: grid; gap: clamp(2rem,5vw,5rem); grid-template-columns: .72fr 1.28fr; padding: clamp(3rem,6vw,5rem) 0; }
    .package:nth-child(even) .package-main { background: var(--white); }
    .package-main { background: var(--paper); border: 2px solid var(--ink); border-radius: 22px; box-shadow: 8px 8px 0 var(--wine); padding: 1.5rem; }
    .package-label { color: var(--blue); display: block; font-size: .7rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
    .package h3 { font-size: clamp(2.2rem,4.5vw,4.4rem); margin: 1rem 0 1.5rem; }
    .price-label { display: block; font-size: .65rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
    .price { display: block; font-family: var(--serif); font-size: clamp(2.6rem,5vw,4.8rem); font-weight: 900; line-height: 1; margin: .4rem 0 1.5rem; }
    .package-details { display: grid; gap: 2rem; grid-template-columns: 1fr 1fr; }
    .package-details section:first-child { grid-column: 1/-1; }
    .package h4 { font-size: .72rem; letter-spacing: .16em; margin: 0 0 .8rem; text-transform: uppercase; }
    .package ul { display: grid; grid-template-columns: 1fr 1fr; list-style: none; margin: 0; padding: 0; }
    .package li { border-top: 1px solid var(--line); padding: .65rem 1rem .65rem 1.25rem; position: relative; }
    .package li::before { color: var(--wine); content: "•"; left: 0; position: absolute; }
    .process { background: var(--lavender); color: var(--ink); }
    .step-grid { border-block: 1px solid rgba(23,35,74,.35); display: grid; grid-template-columns: repeat(3,1fr); margin-top: 3rem; }
    .step { padding: 2.5rem; }
    .step + .step { border-left: 1px solid rgba(23,35,74,.35); }
    .step strong { color: var(--wine); display: block; font-size: .68rem; letter-spacing: .16em; margin-bottom: 2rem; text-transform: uppercase; }
    .step h3 { font-size: 2.2rem; }
    .step a { color: var(--blue); }
    .tailor { align-items: center; background: var(--white); border: 1px solid rgba(23,35,74,.3); display: flex; gap: 2rem; justify-content: space-between; margin-top: 2.5rem; padding: 2rem; }
    .tailor h3 { margin: 0; }
    .faq-list { border-top: 1px solid var(--ink); margin-top: 3rem; }
    details { border-bottom: 1px solid var(--ink); }
    summary { cursor: pointer; font-family: var(--serif); font-size: clamp(1.35rem,2.5vw,2rem); list-style: none; padding: 1.6rem 3rem 1.6rem 0; position: relative; }
    summary::-webkit-details-marker { display: none; }
    summary::after { color: var(--wine); content: "+"; font: 500 1.8rem var(--serif); position: absolute; right: .5rem; top: 1.35rem; }
    details[open] summary::after { content: "—"; }
    details p { max-width: 760px; padding-bottom: 1.6rem; }
    .inquiry { background: var(--paper); }
    .portfolio-modal { background: var(--paper); border: 0; border-radius: 24px; box-shadow: 0 30px 80px rgba(31,42,68,.38); color: var(--ink); max-height: min(92vh,900px); max-width: min(1050px, calc(100% - 32px)); overflow: auto; padding: clamp(1.25rem,3vw,2.5rem); width: 100%; }
    .portfolio-modal::backdrop { background: rgba(31,42,68,.72); }
    .portfolio-modal-layout { display: grid; gap: clamp(1.5rem,4vw,3rem); grid-template-columns: minmax(230px,.72fr) 1.28fr; }
    .portfolio-modal-main { background: var(--white); border-radius: 10px; box-shadow: 0 18px 38px rgba(31,42,68,.18); max-height: 610px; object-fit: contain; width: 100%; }
    .portfolio-modal-gallery { display: grid; gap: .8rem; grid-template-columns: repeat(4,1fr); margin: 1.3rem 0 1.7rem; }
    .portfolio-modal-gallery img { aspect-ratio: 3/4; background: var(--white); border-radius: 6px; height: auto; object-fit: cover; width: 100%; }
    .modal-label { color: var(--wine-dark); font-size: .72rem; font-weight: 900; letter-spacing: .12em; margin: 0 0 .45rem; text-transform: uppercase; }
    .modal-services { border-bottom: 1px solid var(--line); border-top: 1px solid var(--line); font-weight: 700; padding: .85rem 0; }
    .modal-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 1rem; }
    .portfolio-modal-close { background: var(--wine); border: 2px solid var(--ink); border-radius: 999px; color: var(--ink); cursor: pointer; font: 800 .75rem var(--sans); letter-spacing: .1em; padding: .7rem 1rem; position: absolute; right: 1rem; text-transform: uppercase; top: 1rem; }
    .portfolio-modal h3 { font-size: 2rem; margin: 1rem 0 .2rem; }
    .inquiry-grid { align-items: start; display: grid; gap: clamp(3rem,7vw,6rem); grid-template-columns: .72fr 1.28fr; }
    .inquiry-intro { position: sticky; top: 120px; }
    .inquiry-intro .criteria { border-top: 1px solid var(--line); list-style: none; margin: 2rem 0 0; padding: 0; }
    .inquiry-intro .criteria li { border-bottom: 1px solid var(--line); font-weight: 700; padding: .85rem 0; }
    .inquiry-form { background: var(--white); border: 2px solid var(--ink); border-radius: 24px; border-top: 10px solid var(--wine); box-shadow: 10px 10px 0 var(--blue); padding: clamp(1.5rem,4vw,3.5rem); }
    .form-grid { display: grid; gap: 1.25rem; grid-template-columns: 1fr 1fr; }
    .form-field { display: flex; flex-direction: column; gap: .45rem; }
    .form-field.full { grid-column: 1/-1; }
    .form-field label,.group-label { color: var(--ink); font-size: .72rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
    .form-field input,.form-field select,.form-field textarea { background: var(--paper); border: 1px solid rgba(31,42,68,.35); border-radius: 0; color: var(--ink); font: 600 1rem var(--sans); min-height: 52px; padding: .8rem .9rem; width: 100%; }
    .form-field textarea { min-height: 150px; resize: vertical; }
    .form-field input:focus,.form-field select:focus,.form-field textarea:focus { border-color: var(--blue); outline: 3px solid rgba(35,82,162,.18); }
    .acknowledgement { align-items: flex-start; display: flex; gap: .75rem; grid-column: 1/-1; }
    .acknowledgement input { height: 20px; margin: .2rem 0 0; min-width: 20px; width: 20px; }
    .acknowledgement label { font-size: .88rem; font-weight: 700; line-height: 1.55; }
    .form-submit { grid-column: 1/-1; margin-top: .3rem; }
    .form-submit .button { cursor: pointer; width: 100%; }
    .form-note { color: var(--charcoal); font-size: .78rem; margin: .75rem 0 0; text-align: center; }
    .contact { background: var(--blue); color: var(--white); }
    .contact-grid { align-items: end; display: grid; gap: 4rem; grid-template-columns: 1.25fr .75fr; }
    .contact .eyebrow::before { background: var(--white); }
    .contact h2 { font-size: clamp(3.5rem,7vw,7rem); }
    .contact-actions { display: flex; flex-direction: column; gap: .8rem; }
    .contact-actions .button { width: 100%; }
    .contact-meta { border-top: 1px solid rgba(255,255,255,.5); display: flex; flex-wrap: wrap; gap: 1.5rem; margin-top: 2rem; padding-top: 1.5rem; }
    .contact-meta a { font-weight: 700; }
    footer { background: var(--ink); color: var(--white); padding: 2.7rem 0; }
    .footer-grid { align-items: center; display: flex; gap: 1.5rem; justify-content: space-between; }
    footer p { font-size: .78rem; margin: 0; }
    footer a { color: var(--sand); }
    @media (max-width:960px) {
      .hero-grid,.showcase-grid,.about-grid,.package,.contact-grid,.credibility-grid,.portfolio-head,.testimonial-grid { grid-template-columns: 1fr; }
      .credibility-intro { position: static; }
      .hero-grid { min-height: auto; }
      .hero-work { max-width: 720px; min-height: auto; width: 100%; }
      .hero-work-grid { height: auto; min-height: 500px; }
      .audience-head { grid-template-columns: 1fr; }
      .service-card { grid-template-columns: 60px 1fr auto; }
      .service-card p { grid-column: 2/3; }
      .package-main { max-width: 580px; }
    }
    @media (max-width:1040px) {
      .menu-button { display: inline-block; }
      .nav-links { align-items: stretch; background: var(--paper); border-bottom: 1px solid var(--ink); display: none; flex-direction: column; gap: 0; left: 0; padding: 1rem 24px 1.5rem; position: absolute; right: 0; top: 84px; }
      .nav-links.open { display: flex; }
      .nav-links > a:not(.button) { border-bottom: 1px solid var(--line); padding: 1rem 0; }
      .nav-links .button { margin-top: 1rem; }
      .rate-grid,.proof-grid,.step-grid,.blog-grid { grid-template-columns: 1fr; }
      .proof-grid { grid-template-columns: repeat(2,1fr); }
      .proof-item,.proof-item:last-child { border: 0; border-bottom: 1px solid rgba(20,33,61,.35); padding: 1.25rem; }
      .proof-item:last-child { grid-column: 1/-1; }
      .service-grid { grid-template-columns: 1fr; }
      .rate-item,.rate-item:first-child { border: 0; border-bottom: 1px solid rgba(255,255,255,.4); }
      .step + .step { border-left: 0; border-top: 1px solid rgba(23,35,74,.35); }
      .service-intro,.packages-title,.tailor,.footer-grid,.portfolio-head { align-items: flex-start; flex-direction: column; }
      .portfolio-grid { grid-template-columns: repeat(3,1fr); }
      .interview-grid { grid-template-columns: 1fr; }
      .inquiry-grid { grid-template-columns: 1fr; }
      .inquiry-intro { position: static; }
    }
    @media (max-width:620px) {
      .wrap { width: min(100% - 30px,1200px); }
      .section { padding: 4.5rem 0; }
      h1 { font-size: clamp(3.7rem,18vw,5.8rem); }
      .hero h1 { font-size: clamp(3.1rem,14vw,4.8rem); }
      .issue-line span:last-child { display: none; }
      .hero-actions,.hero-actions .button { width: 100%; }
      .hero-work { min-height: auto; }
      .hero-work-label { font-size: .68rem; letter-spacing: .1em; }
      .hero-work-intro { font-size: .8rem; }
      .hero-work-grid { gap: .7rem; min-height: 0; padding-top: 1.5rem; }
      .hero-project:nth-child(2) { transform: translateY(-5px); }
      .hero-project figcaption { font-size: .58rem; letter-spacing: .04em; }
      .hero-project figcaption span { display: none; }
      .hero-work-footer { align-items: flex-start; flex-direction: column; }
      .audience-grid { grid-template-columns: 1fr; }
      .authority-links { grid-template-columns: 1fr; }
      .authority-link:nth-child(odd) { border-right: 0; }
      .audience-card { padding-inline: 0; }
      .audience-card + .audience-card { border-left: 2px solid var(--ink); border-top: 2px solid var(--ink); }
      .service-card { gap: 1rem; grid-template-columns: 42px 1fr auto; }
      .service-card p { grid-column: 2/-1; }
      .package-details,.package ul { grid-template-columns: 1fr; }
      .package-details section:first-child { grid-column: auto; }
      .contact-actions { width: 100%; }
      .portfolio-grid { display: flex; gap: 1.2rem; margin-inline: -15px; overflow-x: auto; padding: 0 15px 1.5rem; scroll-snap-type: x mandatory; }
      .portfolio-card { flex: 0 0 min(82vw,340px); scroll-snap-align: center; }
      .magazine-feature-head { align-items: flex-start; flex-direction: column; gap: .5rem; }
      .magazine-row { display: flex; margin-inline: -15px; overflow-x: auto; padding: 0 15px 1.5rem; scroll-snap-type: x mandatory; }
      .magazine-tile { flex: 0 0 min(72vw,280px); scroll-snap-align: center; }
      .portfolio-modal-layout { grid-template-columns: 1fr; }
      .portfolio-modal-main { max-height: 56vh; }
      .portfolio-modal-gallery { grid-template-columns: repeat(2,1fr); }
      .portfolio-spotlight { border-radius: 26px 26px 10px 26px; grid-template-columns: 1fr; }
      .spotlight-cover { margin: 0 auto; max-width: 210px; }
      .form-grid { grid-template-columns: 1fr; }
      .form-field.full,.acknowledgement,.form-submit { grid-column: auto; }
    }
    @media (prefers-reduced-motion:reduce) { html { scroll-behavior: auto; } .ticker-track { animation: none; } }
  

.page-hero{background:linear-gradient(135deg,var(--white),var(--paper));border-bottom:1px solid var(--line);padding:clamp(4.5rem,9vw,8rem) 0}
.page-hero h1{font-size:clamp(3.4rem,7vw,7rem);max-width:950px}.page-hero .lede{max-width:820px}
.featured-projects{background:var(--white)}
.featured-projects-head{align-items:end;display:flex;gap:2rem;justify-content:space-between;margin-bottom:3rem}
.featured-projects-grid{display:grid;gap:clamp(1.2rem,3vw,2.5rem);grid-template-columns:repeat(4,1fr)}
.featured-project{margin:0}.featured-project img{aspect-ratio:3/4;background:var(--paper);border-radius:10px;box-shadow:0 16px 34px rgba(31,42,68,.17);object-fit:contain;transition:box-shadow .2s ease,transform .2s ease;width:100%}
.featured-project:hover img{box-shadow:0 24px 44px rgba(31,42,68,.25);transform:translateY(-5px)}
.featured-project figcaption{font-size:1rem;font-weight:800;line-height:1.35;padding-top:1rem}.featured-project figcaption span{color:var(--charcoal);display:block;font-size:.74rem;font-weight:600;margin-top:.25rem;text-transform:uppercase}
.section-exit{align-items:center;background:var(--ink);border-radius:24px;color:var(--white);display:flex;gap:2rem;justify-content:space-between;margin-top:3rem;padding:clamp(1.5rem,4vw,3rem)}.section-exit h3{margin:0}.section-exit p{margin:.45rem 0 0}
@media(max-width:900px){.featured-projects-grid{grid-template-columns:repeat(2,1fr)}.featured-projects-head,.section-exit{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.featured-projects-grid{display:flex;margin-inline:-15px;overflow-x:auto;padding:0 15px 1.5rem;scroll-snap-type:x mandatory}.featured-project{flex:0 0 min(75vw,290px);scroll-snap-align:center}}
