/* Approved identity and final checkpoint corrections. */
.site-header{background:rgba(8,15,20,.70);backdrop-filter:blur(10px);box-shadow:0 1px 0 #edf0ed20;opacity:1}
.approved-brand{display:flex;flex-direction:row;align-items:center;gap:10px;width:143px;flex-shrink:0}
.approved-brand .approved-symbol{width:38px;height:38px;filter:brightness(0) saturate(100%) invert(53%) sepia(94%) saturate(1689%) hue-rotate(342deg) brightness(102%) contrast(101%)}
.approved-brand .brand-type{display:block;font:20px/.98 var(--display);letter-spacing:-.01em}
.approved-brand .brand-type>span{display:block;font-size:31px;line-height:1}
.main-nav a,.mobile-menu nav a{color:var(--paper)}
.main-nav a::after{background:var(--orange)}
.main-nav a:hover,.main-nav a:focus-visible{color:var(--paper)}
.header-cta{color:var(--orange);border-bottom:0}
.header-cta,.header-cta:hover,.header-cta:focus-visible{background:transparent;box-shadow:none}
.header-cta::after{background:#fff}
.header-cta:hover,.header-cta:focus-visible{color:#fff}
.site-header a:focus-visible,.mobile-menu summary:focus-visible{outline:2px solid var(--orange);outline-offset:5px}
.mobile-menu nav a{position:relative;width:fit-content}
.mobile-menu nav a::after{content:'';position:absolute;bottom:5px;left:0;width:100%;height:1px;background:var(--orange);transform:scaleX(0);transform-origin:right;transition:transform .25s}
.mobile-menu nav a:hover::after,.mobile-menu nav a:focus-visible::after{transform:scaleX(1);transform-origin:left}
.hero-lower>p{max-width:510px}
.downhill{height:740px;min-height:72svh}
.terrain{padding-top:50px}
.consultation{position:relative;isolation:isolate;overflow:hidden}
.consult-grid{align-items:start;gap:6vw}
.summit-identity{position:relative;min-width:0;min-height:620px}
.summit-identity h2{position:relative;z-index:2}
.summit-photo{position:absolute;left:-9%;top:135px;width:108%;height:490px;margin:0;opacity:.66;pointer-events:none;mask-image:radial-gradient(ellipse 49% 47% at 50% 49%,#000 40%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 49% 47% at 50% 49%,#000 40%,transparent 100%)}
.summit-photo img{height:100%;width:100%;object-fit:cover;object-position:50% 37%;filter:saturate(.55) contrast(1.03)}
.summit-message{position:relative;z-index:3;padding-top:8px}
@supports not (mask-image:radial-gradient(#000,transparent)){.summit-photo:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 100px 70px var(--deep)}}
@media(max-width:1100px){.approved-brand{width:128px}.approved-brand .approved-symbol{width:32px;height:32px}.approved-brand .brand-type{font-size:18px}.approved-brand .brand-type>span{font-size:28px}.summit-identity{min-height:530px}.summit-photo{top:110px;height:440px}}
@media(max-width:700px){.approved-brand{width:112px;gap:7px}.approved-brand .approved-symbol{width:27px;height:27px}.approved-brand .brand-type{font-size:16px}.approved-brand .brand-type>span{font-size:25px}.site-header{gap:10px}.header-cta{font-size:10px;gap:5px}.header-cta span{display:none}.downhill{height:660px;min-height:0}.descent-rule{top:66%;height:14%}.terrain{padding-top:45px}.summit-identity{min-height:390px}.summit-identity h2{max-width:95%}.summit-photo{top:65px;left:-13%;width:115%;height:360px;opacity:.66}.summit-message{padding-top:0}.consult-grid{gap:12px}.hero-lower>p{font-size:17px}}
@media(max-width:380px){.approved-brand{width:102px;gap:5px}.approved-brand .brand-type{font-size:14px}.approved-brand .brand-type>span{font-size:23px}.approved-brand .approved-symbol{width:25px;height:25px}.header-cta{font-size:9px}.site-header{gap:8px}.summit-identity{min-height:365px}}
@media(prefers-reduced-motion:reduce){.main-nav a::after,.header-cta::after,.mobile-menu nav a::after{transition:none}}

/* Abbey approved this supplied image; retain its color and likeness. */
.portrait img{object-position:50% 42%;filter:none;height:650px}
@media(max-width:1100px){.portrait img{height:540px}}
@media(max-width:700px){.portrait img{height:auto;aspect-ratio:3/4;object-fit:cover;object-position:50% 42%}}
/* Keep the provisional Summit portrait below the mobile headline. */
@media(max-width:700px){.summit-identity{min-height:450px}.summit-photo{top:155px;height:300px;left:-9%;width:108%}}

/* Readable mobile action while retaining the approved compact navigation. */
@media(max-width:700px){.site-header{gap:12px}.header-cta{font-size:11px;letter-spacing:0}.mobile-menu summary{font-size:12px}}

/* Shared footer grouping: links remain readable beside the monumental wordmark. */
.site-footer .footer-top{grid-template-columns:minmax(0,1.35fr) minmax(0,1.25fr) minmax(0,.8fr);gap:4vw;align-items:start}
.site-footer .footer-top nav.footer-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.footer-nav-group{display:flex;flex-direction:column;gap:4px;min-width:0}
.footer-nav-group .eyebrow{font-size:10px;margin:0 0 10px;color:var(--muted)}
.site-footer .footer-nav a{font-size:14px;line-height:1.5;min-height:38px;padding:8px 0;text-decoration:none;overflow-wrap:break-word}
.site-footer .footer-nav a:hover,.site-footer .footer-nav a:focus-visible{color:var(--paper);text-decoration:underline;text-decoration-color:var(--orange);text-underline-offset:5px}
@media(max-width:1100px){.site-footer .footer-top{grid-template-columns:1fr 1.2fr}.site-footer .footer-controls{grid-column:1/-1}}
@media(max-width:700px){.site-footer .footer-top{display:flex;flex-direction:column;gap:32px}.site-footer .footer-top nav.footer-nav{width:100%;gap:22px}.site-footer .footer-controls{gap:12px}}
.ttf-design .site-header a:focus-visible,.ttf-design .mobile-menu summary:focus-visible{outline:2px solid var(--orange)!important;outline-offset:5px!important}
/* Revision 4 shared navigation and footer only. */
.site-header .main-nav{gap:clamp(16px,1.7vw,27px)}
.site-header .header-cta{margin-left:clamp(6px,1.5vw,24px)}
.footer-opening{display:grid;grid-template-columns:1.35fr 1fr;gap:5vw;align-items:center;margin-bottom:45px}
.footer-opening .footer-invitation{margin:0}
.footer-opening .footer-statement{font-size:clamp(38px,4.3vw,68px)}
.footer-newsletter{min-width:0;max-width:480px;justify-self:end;width:100%;padding-top:18px}
.footer-newsletter>p:not(.eyebrow){font-size:17px;line-height:1.6;max-width:42ch}
.footer-newsletter iframe{display:block;width:100%;max-width:480px;height:150px;border:0;background:transparent}
.newsletter-staged{min-height:100px;display:flex;align-items:center;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.newsletter-staged p{font-size:15px;color:var(--muted);margin:0}
.footer-newsletter .text-link{margin:12px 0 0}
@media(max-width:1000px){.footer-opening{grid-template-columns:1fr 1fr;gap:30px}.footer-opening .footer-statement{font-size:42px}}
@media(max-width:700px){.footer-opening{grid-template-columns:1fr;gap:30px}.footer-newsletter{justify-self:start}.footer-opening .footer-statement{font-size:clamp(32px,7.5vw,48px)}.site-header .header-cta{margin-left:0}}

/* Revision 5: only requests 2, 3, 5, 6, 10, 11 and 12. */
/* R2 ordinary reading links, not navigation, linked cards or existing CTAs. */
.ttf-design main :is(p,li,label) a:not(.button,.text-link,.framework-return,.card-cta):not(:has(img,svg,picture)){color:var(--orange);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.ttf-design main :is(p,li,label) a:not(.button,.text-link,.framework-return,.card-cta):not(:has(img,svg,picture)):is(:hover,:focus-visible){color:var(--paper,#edf0ed)}
.ttf-design main :is(p,li,label) a:not(.button,.text-link,.framework-return,.card-cta):focus-visible{outline:2px solid var(--orange);outline-offset:4px}
/* R3 exact supplied homepage portrait; no other imagery or layout changes. */
.intro .portrait img[src*="abbey-forest-pink-cap"]{object-position:50% 30%}
