/* Typography and film treatment transcribed from v6s.html. */
:root{--bg:#000;--fg:#fff;--coral:#ff563f;--grid:rgba(255,255,255,.14);--ease:cubic-bezier(.22,1,.36,1)}
html[data-appearance=light]{--bg:#fff;--fg:#000;--grid:rgba(0,0,0,.12)}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}svg{display:block}p{margin:0}img,video{max-width:100%}[hidden]{display:none!important}
html body.homepage-concept{font:400 19px/25px Inter,'Helvetica Neue',Arial,sans-serif;background:var(--bg);color:var(--fg)}
html body.homepage-concept main>section:not(#start-now){background-image:radial-gradient(var(--grid) 1px,transparent 1.5px)!important;background-size:24px 24px!important;background-position:12px 12px!important}
html body.homepage-concept .cg-new .nh,html body.homepage-concept :is(#work,#process) h2.d,html body.homepage-concept #start-now h2{font:700 78px/1.06 Poppins,Inter,Arial,sans-serif!important;letter-spacing:normal!important;text-transform:uppercase!important;margin:20px 0 0!important;color:var(--fg)!important}
html body.homepage-concept .cg-new .ns,html body.homepage-concept #start-now .allison-display{font:400 48px/1.2 Allison,cursive!important;letter-spacing:normal!important;margin:20px 0 52px!important;color:var(--fg)!important;text-shadow:none!important}
html body.homepage-concept .cg-new .ni,html body.homepage-concept :is(#work,#process) .section-intro{font:italic 400 28px/1.25 'Instrument Serif',Georgia,serif!important;color:var(--fg)!important;max-width:40ch!important;margin:0!important}
html body.homepage-concept .cg-new .nk,html body.homepage-concept :is(#work,#process) .k,html body.homepage-concept .kicker{font:300 17px/28px Inter,Arial,sans-serif!important;color:var(--coral)!important;letter-spacing:normal!important;text-transform:uppercase!important;margin:0!important}
html body.homepage-concept .cg-new .nb,html body.homepage-concept .cg-new .credentials-note,html body.homepage-concept .cg-project-tab-panel :is(p,li),html body.homepage-concept .pain-content p,html body.homepage-concept #start-now>p:not(.allison-display):not(.kicker){font:400 19px/25px Inter,'Helvetica Neue',Arial,sans-serif!important;color:var(--fg)!important}
html body.homepage-concept :is(.goal-panel h2,#eval-content h3,.cg-project-heading h3,.pain-content h3,.cg-tab-heading){font:700 32px/1.15 Poppins,Inter,Arial,sans-serif!important;text-transform:uppercase;letter-spacing:normal!important}
html body.homepage-concept :is(.start-choice strong,.path-choice strong){font:700 24px/1.15 Poppins,Inter,Arial,sans-serif!important;letter-spacing:normal!important}
html body.homepage-concept :is(.start-choice small,.path-choice small){font:400 17px/23px Inter,Arial,sans-serif!important;color:var(--fg)}
html body.homepage-concept .cg-new .nh em{font-style:normal;color:var(--coral)!important}
html body.homepage-concept .hero-layout{grid-template-columns:6fr 5fr;gap:24px;min-height:700px;align-items:center}
html body.homepage-concept .hero-copy{padding-left:20px;padding-right:24px}
html body.homepage-concept .journey-hero{padding-top:64px!important}
html body.homepage-concept .journey-panel{padding:0}
html body.homepage-concept .journey-panel .nk{font:300 17px/28px Inter,Arial,sans-serif!important}
html body.homepage-concept .start-choice{padding:16px 20px;min-height:176px}
html body.homepage-concept .journey-line{margin-top:28px}
html body.homepage-concept .journey-line button b{font:300 17px/28px Inter,Arial,sans-serif}
html body.homepage-concept .journey-line button{width:140px}.journey-track{left:70px;right:70px}
html body.homepage-concept .cg-new .new-wrap,html body.homepage-concept :is(#work,#process) .wrap{max-width:1440px!important;width:calc(100% - 144px)!important}
html body.homepage-concept .cg-new,html body.homepage-concept :is(#work,#process){padding:64px 0!important}
html body.homepage-concept .method-heading{display:block}.method-heading .ns{white-space:normal}
html body.homepage-concept .method-intro{margin-top:0!important}
html body.homepage-concept .about-layout{display:block!important}.about-layout>div{max-width:none!important}.facts{max-width:1100px}
html body.homepage-concept .credentials-note{position:static!important;transform:none!important;margin-top:28px!important}
html body.homepage-concept .nbutton{font:400 18px/1.3 Inter,Arial,sans-serif!important;min-height:48px;padding:16px 20px}
html body.homepage-concept .nquiet{font:300 17px/28px Inter,Arial,sans-serif!important;color:var(--fg)}
/* Preserve the menu's structure; use the mockup's clean type. */
html body.homepage-concept .cg-shell{display:flex;align-items:center;justify-content:space-between;height:72px!important;padding:0 4vw;z-index:1000;background:var(--bg);border-bottom:1px solid var(--coral)}
.cg-icon-actions{display:flex;align-items:center;gap:16px}.cg-brand{white-space:nowrap}.cg-brand span{color:var(--coral)}.cg-user,.cg-toggle{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:none;border:0;padding:0}.cg-user svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1}.cg-lines{position:relative;width:24px;height:16px}.cg-lines i{position:absolute;top:4px;left:0;width:24px;height:1px;background:currentColor}.cg-lines i+i{top:12px}.cg-toggle[aria-expanded=true] i{top:8px;transform:rotate(45deg)}.cg-toggle[aria-expanded=true] i+i{transform:rotate(-45deg)}
html body.homepage-concept .cg-panel{position:fixed;inset:72px 0 0!important;display:flex;flex-direction:column;align-items:flex-start;padding:32px 6vw!important;gap:16px!important;overflow:auto;visibility:hidden;opacity:0;pointer-events:none;background:var(--bg);transition:opacity .2s}
html body.homepage-concept .cg-panel a{font:400 24px/1.4 Inter,Arial,sans-serif!important;color:var(--fg)}.cg-panel a:hover{color:var(--coral)!important}.cg-appearance{padding:12px 20px;background:var(--bg);color:var(--fg);border:1px solid var(--coral)}
/* The source design's centered 65% films, with its original edge masks. */
.film-chapter{position:relative;display:flex;align-items:center;justify-content:center;min-height:520px;height:min(900px,75vw);padding:0;background:var(--bg)}
.source-film{display:block;width:65%;height:100%;margin:0 auto;object-fit:contain;-webkit-mask-image:linear-gradient(to right,transparent,#000 26%,#000 74%,transparent),linear-gradient(to bottom,transparent,#000 26%,#000 74%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 26%,#000 74%,transparent),linear-gradient(to bottom,transparent,#000 26%,#000 74%,transparent);mask-composite:intersect}
.film-toggle{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);border:0;background:none;color:var(--fg);font:300 14px/28px Inter;min-height:44px;padding:0 16px}
/* Current challenge content, presented with the new mockup's type roles. */
#process .section-intro,#work .section-intro{margin:28px 0 40px!important}.pain-rail{display:grid}.pain-choice{display:grid;grid-template-columns:1fr 32px;gap:20px;text-align:left;border:1px solid var(--coral);background:var(--bg);color:var(--fg)}.pain-num{color:var(--coral);font:300 17px/28px Inter}.pain-icon svg{width:28px;height:28px;fill:none;stroke:var(--coral);stroke-width:1}.pain-choice .pain-copy{grid-column:1/-1;display:block}.pain-label{display:block;font:700 24px/1.15 Poppins!important}.pain-description{display:block;margin-top:14px;font:400 19px/25px Inter!important}.pain-choice:hover,.pain-choice[aria-selected=true]{background:var(--coral);color:#000}.pain-choice:hover .pain-num,.pain-choice:hover svg,.pain-choice[aria-selected=true] .pain-num,.pain-choice[aria-selected=true] svg{color:#000;stroke:#000}.pain-selector.selected .pain-rail{grid-template-columns:repeat(6,1fr)!important}.pain-panel{margin-top:32px}.pain-panel-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:28px 0}.pain-reset{border:0;color:var(--fg);background:none;font:300 17px/28px Inter;text-transform:uppercase}.pain-content h3{margin:20px 0 28px}.pain-content .pain-copy{display:grid;grid-template-columns:1fr 1fr;gap:32px}.pain-content .pain-copy .k{margin-bottom:12px!important}.pain-features{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.pain-features span{padding:12px 20px;border:1px solid var(--coral);font:300 17px/28px Inter}.benefit b{display:block;font:300 17px/28px Inter;color:var(--coral);text-transform:uppercase;margin-bottom:8px}.ctas{display:flex;flex-wrap:wrap;gap:20px;margin-top:28px}.btn,.primary-action,.line-action{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;border:1px solid var(--coral);background:var(--bg);color:var(--fg);font:400 18px/1.3 Inter;text-transform:uppercase}.btn:hover,.primary-action:hover{background:var(--coral);color:#000}.line-action{border-color:transparent}.pain-hint{font:300 17px/28px Inter;margin-top:24px}
/* Current projects, with the new mockup's tab and bordered-card structure. */
.cg-project-selector{display:grid;border-bottom:1px solid var(--coral);margin:40px 0 32px!important}.cg-project-selector button{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 12px;border:0;background:none;color:var(--fg);font:300 18px/1.4 Inter;text-transform:uppercase}.cg-project-selector button[aria-selected=true]{color:var(--coral);border-bottom:2px solid var(--coral)}.cg-project-play-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1;flex:none}
.cg-expanded-project{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:'heading heading' 'media info';padding:32px;border:1px solid var(--coral);gap:28px 32px;background:var(--bg)}.cg-project-heading{grid-area:heading}.cg-project-heading h3{margin:12px 0 0}.cg-expanded-media{grid-area:media;align-self:start;min-width:0}.cg-expanded-media video,.cg-expanded-media img{display:block;width:100%;height:auto;max-height:540px;object-fit:contain;object-position:center;border:1px solid var(--coral)}.cg-project-info{grid-area:info;min-width:0}.cg-project-tabs{display:flex;gap:12px;border-bottom:1px solid var(--coral);margin-bottom:24px}.cg-project-tabs button{background:none;color:var(--fg);border:0;padding:12px 0;font:300 17px/28px Inter;text-transform:uppercase}.cg-project-tabs button[aria-selected=true]{color:var(--coral)}.cg-tab-heading{margin:0 0 20px}.cg-project-tab-panel p+p{margin-top:24px}.cg-project-tab-panel ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}.cg-project-visit{margin-top:28px}.cg-project-tab-panel .line-action{margin-top:20px;padding-left:0}.cg-next-art{border:1px solid var(--coral);min-height:280px;display:grid;place-items:center;position:relative}.cg-next-art span{font:300 17px/28px Inter;text-transform:uppercase}
/* Existing final section and its target graphic; typography follows v6s. */
#start-now{position:relative;isolation:isolate;overflow:hidden;padding:100px 72px;min-height:740px;background:var(--bg);border-top:1px solid var(--coral)}
#start-now>:not(.objective-motion):not(.final-spotlight){position:relative;z-index:2}html body.homepage-concept #start-now h2{font-size:clamp(48px,5.4vw,78px)!important;max-width:1120px}#start-now h2 span{color:var(--coral)}html body.homepage-concept #start-now .allison-display{margin:24px 0!important}#start-now>p:not(.kicker):not(.allison-display){max-width:58ch}.final-actions{margin-top:32px}.final-spotlight{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(#ff563f10,transparent 65%);left:calc(var(--spot-x,70%) - 300px);top:calc(var(--spot-y,50%) - 300px);pointer-events:none}.final-objective-motion{opacity:.55}
#cg-planner-section{padding:64px 0;background:var(--bg)}#cg-planner-section .wrap{width:calc(100% - 144px);margin:auto}#cg-planner>h3{margin:20px 0 28px}#cg-plan-form{margin-top:32px}#cg-plan-form label{display:block;margin-bottom:12px;font:300 17px/28px Inter}#cg-plan-form :is(input,textarea){display:block;width:100%;border:1px solid var(--coral);background:var(--bg);color:var(--fg);padding:14px 20px;margin-top:8px;font:400 19px/25px Inter}#cg-plan-form textarea{resize:vertical}.cg-plan-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0}.cg-plan-note{font-size:15px;line-height:1.5}#cg-plan-form fieldset{border:0;margin:24px 0;padding:0}#cg-plan-form legend{font:300 17px/28px Inter;text-transform:uppercase;color:var(--coral);margin-bottom:20px}.cg-plan-block{border-top:1px solid #ff563f55;padding:20px 0;display:grid;grid-template-columns:3fr 1fr;gap:24px}.cg-plan-block>label:first-child{display:flex!important;gap:20px;align-items:flex-start}.cg-plan-block input[type=checkbox]{width:22px!important;height:22px;flex:none;accent-color:var(--coral)}.cg-plan-block small{display:block;font:400 17px/23px Inter;margin-top:8px}.cg-estimate{padding:28px;border:1px solid var(--coral);margin:24px 0}.cg-estimate p{margin:16px 0}#cg-plan-status{margin-top:20px}footer{border-top:1px solid var(--coral)}.foot{display:flex;align-items:center;justify-content:space-between;padding:24px 72px;gap:24px}.foot .brand{font:400 15px/1 Inter;letter-spacing:.23em;text-transform:uppercase}.foot .brand b{color:var(--coral);font-weight:400}.foot nav{display:flex;gap:24px;font:300 17px/28px Inter;text-transform:uppercase}
@media(max-width:760px){html body.homepage-concept .cg-new .nh,html body.homepage-concept :is(#work,#process) h2.d,html body.homepage-concept #start-now h2{font-size:48px!important;line-height:1.06!important}html body.homepage-concept .cg-new .ni,html body.homepage-concept :is(#work,#process) .section-intro{font-size:22px!important}html body.homepage-concept .cg-new .ns{margin:20px 0 28px!important}html body.homepage-concept .cg-new .new-wrap,html body.homepage-concept :is(#work,#process) .wrap{width:calc(100% - 40px)!important}html body.homepage-concept .hero-layout{grid-template-columns:1fr;min-height:0;gap:24px}html body.homepage-concept .hero-copy{padding:0}html body.homepage-concept .hero-copy .ni{display:none}html body.homepage-concept .journey-hero{padding-top:40px!important}html body.homepage-concept .start-choice{min-height:112px!important}html body.homepage-concept .path-choices{grid-template-columns:1fr}html body.homepage-concept :is(.start-choice strong,.path-choice strong){font-size:17px!important}html body.homepage-concept .path-choice{min-height:56px;display:grid;grid-template-columns:65px 1fr;align-items:center;gap:12px}html body.homepage-concept .path-choice small{display:none}.path-choice .choice-top{margin:0}.journey-line button b{font-size:13px!important}html body.homepage-concept .journey-line button{width:95px}.journey-track{left:47px;right:47px}.film-chapter{min-height:340px;height:80vw}.source-film{width:100%;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 24%,#000 76%,transparent);-webkit-mask-composite:source-over;mask-image:linear-gradient(to bottom,transparent,#000 24%,#000 76%,transparent);mask-composite:add}.film-toggle{bottom:4px}.pain-content .pain-copy{grid-template-columns:1fr}.pain-features{display:grid}.cg-expanded-project{grid-template-columns:1fr;grid-template-areas:'heading' 'media' 'info';padding:16px}.cg-project-selector button{flex-direction:column;font-size:10px!important;gap:8px}.cg-project-tabs{justify-content:space-between;gap:8px}.cg-project-tabs button{font-size:13px!important}.cg-project-heading h3,.pain-content h3{font-size:26px!important}.cg-plan-fields{grid-template-columns:1fr}.cg-plan-block{grid-template-columns:1fr}.foot{padding:24px 20px;align-items:flex-start;flex-direction:column}.foot nav{gap:16px;font-size:14px}#start-now{padding:72px 20px;min-height:0}#cg-planner-section .wrap{width:calc(100% - 40px)}}
.objective-motion {
  inset: 9% 4% 8%;
  pointer-events: none;
  position: absolute;
  z-index: 1;
}
.objective-source,
.objective-target {
  left: var(--objective-x, 58%);
  position: absolute;
  top: var(--objective-y, 51%);
}
.objective-source {
  background: var(--coral);
  height: 7px;
  opacity: 0.72;
  width: 7px;
  transform: translate(-50%, -50%) rotate(45deg);
}
.objective-source-one {
  left: 4%;
  top: 24%;
}
.objective-source-two {
  left: 13%;
  top: 79%;
}
.objective-source-three {
  left: 86%;
  top: 16%;
}
.objective-route {
  background: #ff563f73;
  height: 1px;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  transform-origin: 0 50%;
  width: 1px;
}
.objective-route:after {
  background: linear-gradient(90deg, #0000, var(--coral), #0000);
  content: "";
  height: 1px;
  inset: 0;
  opacity: 0.45;
  position: absolute;
}
.objective-route b {
  animation: objective-feed 3.8s linear infinite;
  background: var(--coral);
  border-radius: 50%;
  box-shadow: 0 0 14px #ff563fd9;
  height: 5px;
  left: 0;
  position: absolute;
  top: -2px;
  width: 5px;
}
.objective-route:nth-of-type(2) b {
  animation-delay: -1.25s;
}
.objective-route:nth-of-type(3) b {
  animation-delay: -2.5s;
}
.objective-target {
  border: 1px solid var(--coral);
  border-radius: 50%;
  height: 66px;
  transform: translate(-50%, -50%);
  width: 66px;
}
.objective-target:before,
.objective-target:after {
  background: var(--coral);
  content: "";
  left: 50%;
  opacity: 0.75;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}
.objective-target:before {
  height: 1px;
  width: 96px;
}
.objective-target:after {
  height: 96px;
  width: 1px;
}
.objective-target i {
  border: 1px solid var(--coral);
  border-radius: 50%;
  inset: 10px;
  position: absolute;
}
.objective-target b {
  background: var(--coral);
  border-radius: 50%;
  height: 6px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 6px;
}
html body.homepage-concept :is(#work,#process) .section-intro{margin:28px 0 40px!important}
#pain-panel{margin-top:32px}#pain-panel>.pain-panel-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}
#pain-reset{padding:10px 0;min-height:44px;border:0;background:none;color:var(--fg);font:300 17px/28px Inter;text-transform:uppercase}
@media(max-width:760px){.journey-line button b{white-space:nowrap}}
/* Final mobile and motion refinements; approved type roles stay intact. */
html.menu-open{overflow:hidden}.menu-open body{overflow:hidden}
.cg-shell .cg-brand,.hero-foot a,.foot .brand,.foot nav a{display:inline-flex;align-items:center;min-height:44px}
.cg-panel a{min-height:44px}.cg-panel{overscroll-behavior:contain}.cg-toggle .cg-lines i{transition:transform .22s var(--ease),top .22s var(--ease)}
#eval-content{scroll-margin-top:100px}.eval-option:focus-visible,.start-choice:focus-visible,.path-choice:focus-visible{outline:2px solid var(--coral);outline-offset:4px}
.cg-project-selector button,.cg-project-tabs button,.pain-choice{transition:color .22s var(--ease),background-color .22s var(--ease),border-color .22s var(--ease)}
.method-detail{animation:detail-in .24s var(--ease)}
@keyframes detail-in{from{opacity:.5;transform:translateY(6px)}to{opacity:1;transform:none}}
.motion-paused .journey-track i:after{animation-play-state:paused}
@media(max-width:760px){
 html body.homepage-concept .cg-shell{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}
 .cg-panel{padding-bottom:max(28px,env(safe-area-inset-bottom))!important}
 .foot{padding-bottom:max(24px,env(safe-area-inset-bottom))}
 .hero-foot a{white-space:nowrap}.method-steps button{min-width:44px;min-height:66px;padding-inline:0}
 .cg-project-tabs button{min-height:48px}.eval-navigation .nquiet{min-height:48px}
 .film-toggle{min-width:120px;min-height:44px}
 html body.homepage-concept .journey-line button b{font-size:12px!important;line-height:20px}
}
@media(max-width:399px){
 html body.homepage-concept #who .nh,html body.homepage-concept #start-now h2{font-size:clamp(38px,12vw,48px)!important}
 html body.homepage-concept .cg-brand{font-size:16px!important;letter-spacing:.16em}
 .cg-icon-actions{gap:8px}.method-steps button b{font-size:8px!important}.method-steps button{min-width:40px}
}
@media(hover:none){
 .start-choice:not(:active),.path-choice:not(:active){background-size:0% 100%;color:var(--fg)}
 .start-choice:hover:not(:active) *,.path-choice:hover:not(:active) *{color:var(--fg)!important}
 .eval-option:hover:not([aria-pressed=true]):not(:active){background:var(--bg);color:var(--fg)}
 .eval-option:hover:not([aria-pressed=true]):not(:active) span{color:var(--coral)}
 .pain-choice:hover:not([aria-selected=true]):not(:active){background:var(--bg);color:var(--fg)}
 .pain-choice:hover:not([aria-selected=true]):not(:active) .pain-num{color:var(--coral)}
 .pain-choice:hover:not([aria-selected=true]):not(:active) svg{stroke:var(--coral)}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}
}
/* Narrative body copy follows the approved "I analyze the problem" serif. */
html body.homepage-concept .cg-new :is(.nb,.credentials-note,.goal-value,.goal-proof),
html body.homepage-concept .cg-project-tab-panel :is(p,li),
html body.homepage-concept .pain-content p:not(.k),
html body.homepage-concept #start-now>p:not(.allison-display):not(.kicker),
html body.homepage-concept #cg-planner>p:not(.k){
 font:italic 400 28px/1.25 'Instrument Serif',Georgia,serif!important;
}
@media(max-width:760px){
 html body.homepage-concept .cg-new :is(.nb,.credentials-note,.goal-value,.goal-proof),
 html body.homepage-concept .cg-project-tab-panel :is(p,li),
 html body.homepage-concept .pain-content p:not(.k),
 html body.homepage-concept #start-now>p:not(.allison-display):not(.kicker),
 html body.homepage-concept #cg-planner>p:not(.k){font-size:22px!important}
}
