/* D77 · shared space for the accepted graph; project agreement sheet. */
.opening-atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.opening-light{position:absolute;inset:-8%;background:radial-gradient(ellipse at 72% 43%,#71876b26 0%,#4b67481c 23%,#344c3320 38%,transparent 69%),radial-gradient(ellipse at 42% 88%,#61715812,transparent 59%)}
.opening-coordinate-field{position:absolute;inset:0;width:100%;height:100%;mask-image:linear-gradient(90deg,#0008 0%,#0006 29%,#000 60%,#000d 100%)}
.project-agreement{padding-block:64px 70px}
.agreement-heading{margin-bottom:32px}
.agreement-eyebrow{font-size:10px;letter-spacing:.13em;color:#566047;margin:0 0 23px}
.agreement-heading h2{font-size:clamp(37px,3.8vw,57px);line-height:1.08;letter-spacing:-.04em;margin:0}
.agreement-heading h2 em{color:#58694e}
.agreement-sheet{background:#e4e7dc;border-top:1px solid #8b9a7f;border-bottom:1px solid #aeb9a3;padding:0 34px}
.agreement-sheet-top{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:56px;border-bottom:1px solid #bac5b0;color:#53654a;font-size:9px;letter-spacing:.12em}
.agreement-sheet-top>span:last-child{display:flex;align-items:center;gap:14px}
.agreement-sheet-top i{display:block;width:6px;height:6px;background:#d36835}
.agreement-points{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;margin:0}
.agreement-points li{position:relative;display:flex;flex-direction:column;min-width:0;padding:26px 30px 28px 0}
.agreement-points li+li{border-left:1px solid #bac5b0;padding-left:30px}
.agreement-points li:last-child{padding-right:0}
.agreement-number{font-size:clamp(50px,4.6vw,66px);font-weight:300;line-height:1;letter-spacing:-.075em;color:#86947a;margin-bottom:22px}
.agreement-points h3{font-size:27px;font-weight:500;letter-spacing:-.035em;line-height:1.15;margin:0 0 14px}
.agreement-points p{font-size:15px;line-height:1.65;margin:0 0 25px;color:#4f6047;max-width:335px}
.agreement-outcome{display:flex;align-items:baseline;gap:9px;font-size:11px;line-height:1.5;margin-top:auto;color:#3f5038}
.agreement-outcome:before{content:'';width:14px;border-top:1px solid #b65c2e;flex-shrink:0;transform:translateY(-3px)}
.agreement-exceptions{border-top:1px solid #8b9a7f}
.agreement-exceptions details+details{border-top:1px solid #bac5b0}
.agreement-exceptions summary{list-style:none;min-height:66px;padding:19px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:16px;line-height:1.5;cursor:pointer;transition:color .2s}
.agreement-exceptions summary::-webkit-details-marker{display:none}
.agreement-exceptions summary:hover{color:#a94f27}
.agreement-exceptions summary:focus-visible{outline:2px solid #9e522e;outline-offset:5px}
.agreement-toggle{position:relative;display:block;width:18px;height:18px;flex-shrink:0;color:#b05b32}
.agreement-toggle:before,.agreement-toggle:after{content:'';position:absolute;left:3px;right:3px;top:8px;height:1px;background:currentColor}
.agreement-toggle:after{transform:rotate(90deg);transition:transform .2s}
.agreement-exceptions details[open] .agreement-toggle:after{transform:rotate(0)}
.agreement-answer{max-width:760px;padding:0 42px 23px 0}
.agreement-answer p{font-size:15px;line-height:1.7;margin:0;color:#4f6047}
@media(max-width:1000px){.agreement-sheet{padding-inline:24px}.agreement-points li{padding-right:22px}.agreement-points li+li{padding-left:22px}.agreement-points h3{font-size:24px}.agreement-points p{font-size:14px}}
@media(max-width:900px){.opening-light{background:radial-gradient(ellipse at 65% 62%,#71876b29 0%,#4b674823 22%,#344c3317 44%,transparent 70%)}.opening-coordinate-field{top:auto;bottom:0;height:76%;mask-image:linear-gradient(180deg,transparent,#000b 28%,#000 80%,#000a)}}
@media(max-width:650px){.project-agreement{padding-block:48px 54px}.agreement-heading{margin-bottom:27px}.agreement-eyebrow{font-size:9px;margin-bottom:20px}.agreement-heading h2{font-size:clamp(33px,8.5vw,44px)}.agreement-sheet{padding-inline:21px}.agreement-sheet-top{min-height:64px;gap:8px;align-items:flex-start;justify-content:center;flex-direction:column;padding-block:14px;font-size:8px;letter-spacing:.09em}.agreement-sheet-top>span:last-child{font-size:8px;gap:10px}.agreement-points{display:block}.agreement-points li,.agreement-points li+li,.agreement-points li:last-child{display:grid;grid-template-columns:48px minmax(0,1fr);gap:0 19px;border-left:0;padding:24px 0}.agreement-points li+li{border-top:1px solid #bac5b0}.agreement-number{grid-column:1;grid-row:1/4;font-size:42px;margin:0}.agreement-points h3{grid-column:2;font-size:24px;margin-bottom:12px}.agreement-points p{grid-column:2;font-size:14px;line-height:1.65;max-width:none;margin-bottom:17px}.agreement-outcome{grid-column:2;font-size:10px;gap:8px}.agreement-outcome:before{width:10px}.agreement-exceptions summary{font-size:15px;gap:14px;min-height:70px;padding-block:18px}.agreement-answer{padding:0 0 22px}.agreement-answer p{font-size:14px}.opening-coordinate-field{height:66%;opacity:.8}}
@media(max-width:360px){.agreement-sheet{padding-inline:16px}.agreement-points li,.agreement-points li+li{grid-template-columns:35px minmax(0,1fr);column-gap:13px}.agreement-number{font-size:35px}.agreement-points h3{font-size:22px}.agreement-outcome{font-size:9px}}
@media(prefers-reduced-motion:reduce){.agreement-exceptions summary,.agreement-toggle:after{transition:none}}

/* Keep the existing price heading within the narrowest viewport. */
@media(max-width:375px){.complex-editorial .cost-copy h2 em br{display:initial}}

/* D78 · one viewport, a level coordinate field and a contextual header. */
:root{--complex-header-height:88px}
html{scroll-padding-top:calc(var(--complex-header-height) + 18px)}
.complex-editorial .site-header{position:fixed;inset:0 0 auto;z-index:20;color:#e7ece1;background:#0b100ef5;border-bottom:1px solid #96ac8d24;transition:background .22s,color .22s,border-color .22s}
.complex-editorial .site-header .brand{color:inherit}
.complex-editorial .site-header a:focus-visible,.complex-editorial .site-header summary:focus-visible{outline-color:#f7a577}
.complex-editorial .site-header .desktop-nav a[aria-current]{border:0;text-decoration-color:#d88a5d}
.complex-editorial .site-header.is-scrolled{background:#0b100eec;backdrop-filter:blur(14px)}
.complex-editorial .site-header.on-paper{background:#eeeeE7f5;color:#151614;border-color:#15161424}
.complex-editorial .site-header.on-paper a:focus-visible,.complex-editorial .site-header.on-paper summary:focus-visible{outline-color:#98421f}
.complex-editorial .site-header .mobile-menu{border-color:#9eaf9245}
.complex-editorial .site-header .mobile-menu nav{color:#e7ece1;background:#0e1812;border-color:#92a38640}
.complex-editorial .site-header .mobile-menu nav a{border-color:#92a38640}
.complex-editorial .site-header.on-paper .mobile-menu nav{color:#151614;background:#eeeee7;border-color:#bec5b5}
.complex-editorial .site-header.on-paper .mobile-menu nav a{border-color:#bec5b5}
.complex-editorial .complex-opening{height:100svh;min-height:580px;max-height:none}
.complex-editorial .opening-inner{padding-top:calc(var(--complex-header-height) + 12px)}
.complex-editorial .opening-inner .breadcrumbs{font-size:10px;line-height:1.5;margin-bottom:16px}
.complex-editorial .opening-copy{padding-top:0;width:46%;max-width:650px}
.complex-editorial .opening-copy .eyebrow{margin-bottom:16px;font-size:9px;line-height:1.6}
.complex-editorial .opening-copy h1{font-size:clamp(48px,4.85vw,82px);line-height:1.04}
.complex-editorial .opening-copy h1 em{font-size:.75em;line-height:1.15;margin-top:10px}
.complex-editorial .opening-copy .opening-summary{font-size:clamp(15px,1.2vw,18px);line-height:1.6;max-width:455px;margin:24px 0}
.complex-editorial .opening-graph{position:absolute;inset:0;width:100%;height:100%;margin:0;mask-image:linear-gradient(90deg,#0002 0%,#0003 24%,#0006 36%,#000 52%,#000 100%)}
.complex-editorial .opening-graph .graph{height:100%;width:100%;margin:0;overflow:hidden}
.complex-editorial .opening-graph .hub>span{font-size:clamp(27px,2.15vw,38px)}
.complex-editorial .opening-bottom{min-height:52px;background:linear-gradient(180deg,transparent,#0b100e66)}
.complex-editorial .opening-coordinate-field{inset:0;width:100%;height:100%;opacity:1}
.complex-editorial .opening-light{inset:-8%;background:radial-gradient(ellipse at 71% 49%,#71876b29 0%,#4b67481c 23%,#344c3317 44%,transparent 72%)}
.opening-graph .graph[data-framing=opening][data-renderer=static]>svg{left:28%;top:var(--complex-header-height);width:72%;height:calc(100% - var(--complex-header-height) - 52px)}
.opening-graph .graph[data-framing=opening][data-renderer=static] .hub{left:64%;top:52%}
@media(min-width:901px) and (max-height:720px){.complex-editorial .opening-copy .opening-summary{font-size:15px;line-height:1.55;margin:20px 0}.complex-editorial .opening-copy h1{font-size:clamp(47px,4.4vw,68px)}.complex-editorial .opening-copy .eyebrow{margin-bottom:13px}.complex-editorial .opening-inner .breadcrumbs{margin-bottom:13px}}
@media(min-width:901px) and (max-height:620px){.complex-editorial .complex-opening{min-height:540px}.complex-editorial .opening-copy h1{font-size:clamp(44px,4.2vw,62px)}.complex-editorial .opening-copy .opening-summary{font-size:14px;margin:17px 0;line-height:1.5}.complex-editorial .opening-copy .eyebrow{font-size:8px;margin-bottom:10px}.complex-editorial .opening-inner{padding-top:calc(var(--complex-header-height) + 8px)}.complex-editorial .opening-actions .button{min-height:50px;padding-block:13px}}
@media(max-width:900px){:root{--complex-header-height:76px}.complex-editorial .complex-opening{height:auto;min-height:100svh}.complex-editorial .opening-copy{width:100%;max-width:700px}.complex-editorial .opening-copy h1{font-size:clamp(47px,7.2vw,66px)}.complex-editorial .opening-copy .opening-summary{max-width:530px;font-size:16px}.complex-editorial .opening-graph{position:relative;inset:auto;left:0;width:100%;height:510px;margin-top:-12px;mask-image:none}.complex-editorial .opening-bottom{position:relative;min-height:52px}.complex-editorial .opening-coordinate-field{mask-image:linear-gradient(180deg,#0005,#0006 35%,#000 64%,#000d)}.complex-editorial .opening-light{background:radial-gradient(ellipse at 66% 68%,#71876b2d,transparent 64%)}.opening-graph .graph[data-framing=opening][data-renderer=static]>svg{inset:0;width:100%;height:100%}.opening-graph .graph[data-framing=opening][data-renderer=static] .hub{left:50%;top:50%}}
@media(max-width:600px){:root{--complex-header-height:126px}.complex-editorial .opening-inner{padding-top:calc(var(--complex-header-height) + 10px)}.complex-editorial .opening-inner .breadcrumbs{margin-bottom:15px;font-size:10px}.complex-editorial .opening-copy .eyebrow{font-size:8px;margin-bottom:15px}.complex-editorial .opening-copy h1{font-size:clamp(33px,8.4vw,49px)}.complex-editorial .opening-copy h1 em{margin-top:8px}.complex-editorial .opening-copy .opening-summary{font-size:15px;margin:21px 0;max-width:none}.complex-editorial .opening-graph{height:445px;margin-top:0}.complex-editorial .site-header .mobile-menu nav{background:transparent}.complex-editorial .site-header.on-paper .mobile-menu nav{background:transparent}.complex-editorial .opening-graph .hub>span{font-size:26px}}
@media(max-width:480px){.complex-editorial .opening-graph{height:420px;margin-bottom:112px}.complex-editorial .opening-graph .graph{height:420px;overflow:visible}.complex-editorial .opening-graph .hub>span{font-size:24px}}
@media(prefers-reduced-motion:reduce){.complex-editorial .site-header{transition:none}}

html.complex-opening-enhanced .complex-editorial .site-header:not(.is-scrolled){background:linear-gradient(180deg,#0b100edb,transparent)}
