:root{--maroon:#500000;--sage:#B7C9A9;--cream:#FFFDF9;--ink:#3A3A3A}*{box-sizing:border-box}body{margin:0;background:#FFFDF9;color:var(--ink);font-family:'Open Sans',sans-serif}h1,h2,h3,button,a,summary{font-family:'Poppins',sans-serif}a{color:inherit}button,summary{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible,.tc-card:focus-visible{outline:3px solid #738B6D;outline-offset:5px}.skip{position:absolute;top:-100px;z-index:100;background:white;padding:12px}.skip:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}header{height:90px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;background:#F4F1EE;color:var(--maroon);border-top:1px solid var(--maroon);position:relative;z-index:20}.brand{display:block;width:180px;height:78px;overflow:hidden;position:relative}.brand img{position:absolute;width:100%;height:auto;top:50%;transform:translateY(-50%);mix-blend-mode:multiply}nav{display:flex;align-items:center;gap:28px;font-weight:600;font-size:15px}nav a{text-decoration:none}nav a:hover,nav a[aria-current]{text-decoration:underline;text-underline-offset:5px}.dropdown{position:relative}.dropdown summary{list-style:none}.dropdown summary::after{content:'▼';font-size:11px;margin-left:10px}.dropdown summary::-webkit-details-marker{display:none}.dropdown>div{position:absolute;top:100%;right:0;min-width:175px;background:#F4F1EE;padding:16px;box-shadow:0 8px 20px #0002;display:grid;gap:12px}.menu-toggle{display:none}.hero{background:var(--maroon);color:var(--cream);padding:48px 24px;text-align:center}.hero h1{margin:0;font-size:clamp(2.2rem,5.7vw,5rem);font-weight:700;line-height:1.2;text-transform:uppercase;letter-spacing:.04em;display:flex;justify-content:center;flex-wrap:wrap;gap:.2em}.rotating{display:inline-grid;min-width:5.8em;color:var(--sage);text-align:left;overflow:hidden}.rotating>span{grid-area:1/1;opacity:0;transform:translateY(100%);transition:opacity .45s,transform .45s}.rotating>span.current{opacity:1;transform:translateY(0)}.tc-cards-section{max-width:1200px;margin:auto;padding:60px 20px!important}.tc-cards-grid{gap:24px}.tc-card{width:min(320px,30vw)}.tc-card-front{background:#3A3A3A}.tc-cards-title{max-width:780px;margin-left:auto;margin-right:auto}.tc-card:focus-within .tc-card-inner{transform:rotateY(180deg)}.intro{background:#500000;color:var(--cream);padding:45px 30px 70px}.intro-inner{max-width:1040px;margin:auto;display:grid;grid-template-columns:1.6fr 1fr;gap:65px;align-items:center}.intro h2{font-size:clamp(1.6rem,2.7vw,2.2rem);line-height:1.15;text-transform:uppercase;margin:0 0 18px;font-weight:800}.intro p{font-weight:600;font-size:16px;line-height:1.55;margin:0 0 18px}.outline{display:inline-block;border:1px solid var(--cream);border-radius:5px;padding:18px 40px;text-transform:uppercase;text-decoration:none;font-weight:600;font-size:14px}.outline:hover{background:var(--cream);color:var(--maroon)}.photo-placeholder{width:100%;aspect-ratio:1;max-width:340px;border-radius:50%;background:#E4D5C7;display:grid;place-items:center;color:var(--maroon);border:1px solid #FFFDF966;font-size:14px}.statement{max-width:900px;position:relative;margin:-48px auto 0;background:var(--cream);border:1.5px solid var(--maroon);border-radius:4px;text-align:center;padding:36px 28px;box-shadow:0 4px 24px #0000001a;z-index:2}.statement p{font-family:Poppins,sans-serif;font-size:clamp(1.1rem,2.5vw,1.6rem);font-weight:700;color:var(--maroon);margin:0 0 16px}.statement a{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;text-decoration:none;color:var(--maroon)}.statement a:before,.statement a:after{content:'';display:inline-block;width:28px;height:2px;background:var(--sage);vertical-align:middle;margin:0 10px}.panel{max-width:984px;margin:32px auto;background:white;padding:60px 40px;border:1.5px solid var(--maroon);border-radius:4px}.panel h2{text-align:center;font-size:1.8rem;line-height:1.35;text-transform:uppercase;color:var(--maroon);margin:0 0 10px;font-weight:700}.subtitle{text-align:center;margin:0;font-size:1rem}.accordion{max-width:760px;margin:40px auto 0;border-top:2px solid var(--maroon)}.accordion details{border-bottom:1px solid #E4D5C7}.accordion summary{list-style:none;display:flex;align-items:center;gap:14px;padding:20px 4px;font-size:1.05rem;font-weight:600}.accordion summary::-webkit-details-marker{display:none}.icon{width:36px;height:36px;border-radius:50%;background:#F4F1EE;display:grid;place-items:center;color:var(--maroon);flex-shrink:0}.icon svg{width:18px;height:18px}.accordion details[open] .icon{background:var(--maroon);color:var(--cream)}.chevron{margin-left:auto;color:var(--maroon)}details[open] .chevron{transform:rotate(180deg)}.accordion p{font-size:.95rem;line-height:1.7;margin:0;padding:0 4px 20px 54px}.testimonials{background:var(--cream)}.quotes{max-width:760px;margin:48px auto 0;min-height:220px}.quote{border-left:4px solid var(--maroon);padding:8px 0 8px 32px}.quote[hidden]{display:none}.quote>span{color:#738B6D;font-family:Poppins,sans-serif;text-transform:uppercase;font-size:.78rem;letter-spacing:.12em;font-weight:600}.quote blockquote{font-family:Poppins,sans-serif;font-size:1.35rem;font-style:italic;line-height:1.6;margin:16px 0 24px}.quote p{font-size:.88rem;font-weight:600;color:var(--maroon);margin:0;letter-spacing:.04em}.quote-nav{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:40px}.quote-nav>button{width:40px;height:40px;border:0;border-radius:50%;color:var(--cream);background:var(--maroon);font-size:1.1rem}.quote-dots{display:flex;gap:8px}.quote-dots button{width:8px;height:8px;border:0;border-radius:50%;padding:0;background:#E4D5C7}.quote-dots button[aria-pressed=true]{background:var(--maroon)}.quote-nav .pause{background:transparent;color:var(--maroon);font-size:14px;width:28px}.cta{background:#F4F1EE;padding:45px 7.5%;color:var(--maroon)}.cta h2{text-transform:uppercase;font-size:1.5rem;margin:0}.cta p{font-weight:700;margin:0 0 8px}.cta a{display:inline-block;background:var(--maroon);color:var(--cream);padding:12px 28px;text-transform:uppercase;text-decoration:none;border-radius:5px;font-size:14px}footer{display:flex;justify-content:space-evenly;align-items:center;padding:20px;gap:24px;color:var(--maroon);font-weight:700}footer .brand{width:100px;height:48px}footer p{margin:0}@media(max-width:1000px){nav{gap:18px}.panel{margin:32px 24px}.statement{margin-left:40px;margin-right:40px}.intro-inner{gap:35px}}@media(max-width:768px){header{height:80px}.brand{width:150px;height:70px}.menu-toggle{display:block;border:0;background:transparent;color:var(--maroon);font-weight:600}nav{display:none;position:absolute;top:80px;left:0;right:0;background:#F4F1EE;padding:24px;align-items:stretch}nav.open{display:flex;flex-direction:column;gap:22px}.dropdown>div{position:static;box-shadow:none;padding:14px 0 0 16px}.hero{padding:35px 16px}.hero h1{flex-direction:column;align-items:center;font-size:clamp(1.8rem,6.8vw,2.8rem)}.rotating{text-align:center;width:100%;min-width:0}.tc-card{width:100%}.tc-card.flipped .tc-card-inner{transform:rotateY(180deg)!important}.tc-cards-section{padding:36px 16px!important}.intro{padding:40px 24px 70px}.intro-inner{grid-template-columns:1fr;gap:28px}.photo-placeholder{width:220px;justify-self:center}.statement{margin:-32px 16px 0;padding:28px 24px}.panel{padding:40px 20px;margin:24px 16px}.panel h2{font-size:1.3rem}.accordion summary{font-size:.95rem}.accordion p{padding-left:4px;font-size:.9rem}.quote{padding-left:20px}.quote blockquote{font-size:1.1rem}.quotes{min-height:280px}.cta{padding:36px 24px}footer{flex-direction:column;text-align:center;gap:14px;font-size:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Center the complete Solutions section independently of inherited layout. */
.tc-cards-section{width:100%;text-align:center;margin-inline:auto}.tc-cards-header{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-inline:auto}.tc-cards-title{width:100%;max-width:780px;text-align:center;margin:0 auto 12px}.tc-cards-subtitle{width:100%;max-width:600px;text-align:center;margin:0 auto}.tc-cards-grid{margin-inline:auto}
/* Floating navigation: hide downward, reveal upward without shifting content. */
header{position:sticky;top:0;z-index:50;transition:transform .25s ease,box-shadow .25s ease}
header.nav-scrolled{box-shadow:0 3px 14px #0000001a}
header.nav-hidden{transform:translateY(-100%);pointer-events:none}
header:focus-within{transform:translateY(0);pointer-events:auto}

.about-banner{background:var(--maroon);color:var(--cream);padding:54px 24px;text-align:center}.about-banner h1{font-size:clamp(2.4rem,5vw,4rem);text-transform:uppercase;letter-spacing:.04em;margin:0}.about-section{max-width:1080px;margin:auto;padding:65px 30px;display:grid;gap:60px;align-items:center;grid-template-columns:1.35fr 1fr}.about-copy h2{color:var(--maroon);font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.25;margin:0 0 22px}.about-copy p{font-size:1rem;line-height:1.8;margin:0 0 18px}.about-copy .eyebrow{color:#738B6D;font-family:Poppins,sans-serif;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:12px}.headshot{margin:0}.headshot img{display:block;width:100%;max-height:610px;object-fit:cover;border-radius:8px}.about-link{display:inline-block;margin-top:8px;color:var(--maroon);text-underline-offset:5px;font-weight:600}.about-story-wrap{background:#F4F1EE}.about-story{grid-template-columns:1fr 1.35fr}.story-logo{margin:0;background:var(--maroon);border-radius:8px;overflow:hidden}.story-logo img{display:block;width:100%}.strands{padding:0;list-style:none;margin:22px 0}.strands li{padding:10px 0;border-bottom:1px solid #E4D5C7;line-height:1.6}.strands strong{color:var(--maroon);margin-right:8px}.about-cords{grid-template-columns:1fr 1.35fr}.cord-card{aspect-ratio:1;background:#E4D5C7;border:1px solid var(--maroon);border-radius:8px;display:grid;place-items:center;color:var(--maroon);font-size:.9rem}.about-cords .accordion{margin-top:28px}.about-cords .accordion p{padding-left:4px}.about-cta{text-align:center}@media(max-width:768px){.about-section{grid-template-columns:1fr;gap:30px;padding:40px 24px}.headshot{max-width:380px;justify-self:center;width:100%}.about-story .story-logo{max-width:340px;justify-self:center}.cord-card{max-width:340px;width:100%;justify-self:center}.about-banner{padding:40px 20px}}

/* Square portrait and stable cord image alignment. */
.about-why{grid-template-columns:repeat(2,minmax(0,1fr))}.headshot{width:100%;aspect-ratio:1;overflow:hidden;border-radius:8px}.headshot img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center}.about-cords{align-items:start}.about-cords .cord-card{align-self:start}
@media(max-width:768px){.about-why{grid-template-columns:1fr}}

/* Alternate image columns, with portrait matching the story logo. */
.about-why{grid-template-columns:1fr 1.35fr}.headshot{max-width:none}.about-story{grid-template-columns:1.35fr 1fr}.about-story .story-logo{grid-column:2;grid-row:1}.about-story .about-copy{grid-column:1;grid-row:1}
/* Reserve expansion space so the cord stays centered beside the accordion. */
.about-cords .about-copy{display:contents}.about-cords .eyebrow,.about-cords h2,.about-cords .about-copy>p:not(.eyebrow){grid-column:2;margin-bottom:0}.about-cords{column-gap:60px;row-gap:18px}.about-cords .cord-card{grid-column:1;grid-row:4;align-self:center}.about-cords .accordion{grid-column:2;grid-row:4;width:100%;margin:10px 0 0}
@media(max-width:768px){.about-why,.about-story{grid-template-columns:1fr}.headshot{max-width:340px}.about-story .story-logo,.about-story .about-copy{grid-column:auto;grid-row:auto}.about-cords .about-copy{display:block}.about-cords .cord-card,.about-cords .accordion,.about-cords .eyebrow,.about-cords h2,.about-cords .about-copy>p:not(.eyebrow){grid-column:auto;grid-row:auto}.about-cords .accordion{min-height:0!important}.about-cords .about-copy>p{margin-bottom:18px}}

/* Center the cord beside the whole copy column, keeping expansion space reserved. */
.about-cords{align-items:center;row-gap:0}.about-cords .about-copy{display:block;grid-column:2;grid-row:1}.about-cords .cord-card{grid-column:1;grid-row:1;align-self:center}.about-cords .eyebrow{margin-bottom:12px}.about-cords h2{margin-bottom:22px}.about-cords .about-copy>p:not(.eyebrow){margin-bottom:18px}.about-cords .accordion{margin-top:28px}
@media(max-width:768px){.about-cords{row-gap:30px}.about-cords .about-copy,.about-cords .cord-card{grid-column:auto;grid-row:auto}}

/* Our Story reference: compact right logo and stacked strands with a vertical rule. */
.about-story{grid-template-columns:minmax(0,1fr) 300px;gap:60px;align-items:center}.about-story .story-logo{width:300px;height:300px;justify-self:end}.about-story .story-logo img{width:100%;height:100%;object-fit:contain}.about-story .about-copy h2{text-transform:uppercase;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:700;margin-bottom:18px}.about-story .about-copy>p:not(.eyebrow){font-weight:600;line-height:1.75}.about-story .strands{border-left:3px solid var(--maroon);padding-left:20px;margin:24px 0}.about-story .strands li{border:0;padding:0;margin-bottom:12px;font-weight:600}.about-story .strands li:last-child{margin-bottom:0}.about-story .strands strong{display:block;margin:0 0 4px}.about-story .about-copy>p:last-child{margin-bottom:0}.headshot{width:100%;max-width:300px;justify-self:center}
@media(max-width:768px){.about-story{grid-template-columns:1fr;gap:30px}.about-story .story-logo{width:min(300px,100%);height:auto;aspect-ratio:1;justify-self:center}.about-story .about-copy,.about-story .story-logo{grid-column:auto;grid-row:auto}}

/* Match all About image blocks to the 300px story logo without altering layout. */
.about-why .headshot,.about-story .story-logo,.about-cords .cord-card{width:300px;max-width:100%;height:auto;aspect-ratio:1}

.cord-image{overflow:hidden;background:transparent;border:0}.cord-image img{display:block;width:100%;height:100%;object-fit:contain}

.intro .photo-placeholder.cord-image{background:#ffffff;border-radius:50%;overflow:hidden}

/* Smaller Home circle with the visible cord artwork centered. */
.intro .photo-placeholder.cord-image{width:75%;max-width:255px;justify-self:center;display:flex;align-items:center;justify-content:center}.intro .photo-placeholder.cord-image img{object-position:center;transform:translate(0.8%,-1%)}@media(max-width:768px){.intro .photo-placeholder.cord-image{width:165px;max-width:100%}}
