@font-face{font-family:Jost;src:url('/assets/jost.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:Catamaran;src:url('/assets/catamaran.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:'Pontano Sans';src:url('/assets/pontano.ttf') format('truetype');font-weight:300 700;font-display:swap}
:root{--navy:#092b45;--navy-deep:#062136;--copper:#aa673b;--copper-dark:#89522f;--muted:#526572;--paper:#f1f4f5;--line:#dbe2e5;--page-pad:4vw}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body.shannon{margin:0;background:#fff;color:var(--navy);font-family:Catamaran,Arial,sans-serif;font-size:19px;line-height:1.7;-webkit-font-smoothing:antialiased}
.shannon *{box-sizing:border-box}
.shannon h1,.shannon h2,.shannon h3{font-family:Jost,Arial,sans-serif;font-weight:500;letter-spacing:-.018em;color:inherit;margin:0 0 24px;line-height:1.23}
.shannon h1{font-size:clamp(38px,4.15vw,62px)}
.shannon h2{font-size:clamp(32px,3.2vw,46px)}
.shannon h3{font-size:26px;line-height:1.3;letter-spacing:0;margin:0 0 18px}
.shannon p{margin:0 0 20px;color:inherit;font-size:inherit;line-height:inherit}
.shannon a{color:inherit;text-decoration:none}
.shannon button,.shannon input,.shannon select,.shannon textarea{font:inherit;color:inherit}
.shannon button,.shannon a{touch-action:manipulation}
.shannon button{cursor:pointer}
.shannon :focus-visible{outline:3px solid #b67c53;outline-offset:5px}
.shannon img{max-width:100%;height:auto;display:block}
.shannon [hidden]{display:none!important}
.shannon .eyebrow{font-family:Jost,Arial,sans-serif;font-size:12px;font-weight:600;line-height:1.4;letter-spacing:.17em;text-transform:uppercase;color:var(--copper);margin-bottom:22px}
.shannon .button{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;background:var(--copper);color:#fff;border:1px solid var(--copper);padding:17px 26px;font-family:Jost,Arial,sans-serif;font-size:13px;font-weight:600;line-height:1.5;text-transform:uppercase;letter-spacing:.07em;min-height:57px;transition:background .25s ease,border-color .25s ease;white-space:normal;border-radius:0}
.shannon .button:hover{background:var(--copper-dark);border-color:var(--copper-dark)}
.shannon .button-outline{background:transparent;border-color:rgba(255,255,255,.5)}
.shannon .button-outline:hover{background:rgba(255,255,255,.1);border-color:#fff}
.shannon .actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}
.shannon .text-link{display:inline-flex;gap:24px;align-items:center;padding:9px 0;border-bottom:1px solid var(--copper);font-family:Jost,Arial,sans-serif;font-size:16px;line-height:1.5;transition:color .2s ease}
.shannon .text-link:hover{color:var(--copper)}
.shannon .skip-link{position:absolute;top:-100px;left:20px;background:#fff;padding:10px;z-index:100}
.shannon .skip-link:focus{top:8px}
.shannon .shannon-header{position:sticky;top:0;left:0;right:0;z-index:50;display:block;padding:0;background:rgba(255,255,255,.98);border-bottom:1px solid #eff1f2;transition:transform .3s ease;box-shadow:none;width:100%;height:auto;color:var(--navy)}
.shannon .shannon-header.header-hidden{transform:translateY(-100%)}
.shannon .header-inner{padding:16px var(--page-pad);max-width:1600px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:104px;position:relative}
.shannon .brand{display:block;width:284px;flex:0 0 auto;text-decoration:none}
.shannon .logo-window{display:block;position:relative;overflow:hidden;aspect-ratio:3.5358/1;background:transparent;width:100%}
.shannon .logo-window img{position:absolute;max-width:none;width:108.75%;height:auto;left:-5.34%;top:-24.53%}
.shannon .header-nav{display:flex;gap:27px;align-items:center;margin-left:auto;flex:none;width:auto;position:static}
.shannon .header-nav-item{font-family:Jost,Arial,sans-serif;font-size:16px;line-height:1.5;white-space:nowrap;margin:0;position:relative;padding:0}
.shannon .header-nav-item>a{display:inline-block;padding:12px 0;position:relative}
.shannon .header-nav-item>a[aria-current=page]:after{position:absolute;content:'';height:2px;background:var(--copper);bottom:6px;left:0;right:0}
.shannon .header-nav-item>a:hover{color:var(--copper)}
.shannon .header-nav-item--folder{display:flex;align-items:center;gap:5px}
.shannon .header-nav-folder-title{border:0;background:none;color:var(--navy);padding:8px 4px;margin:0;font-size:17px;line-height:1;min-width:25px}
.shannon .header-nav-folder-content{display:none!important;position:absolute;top:100%;left:-22px;right:auto;transform:none;min-width:338px;max-width:none;white-space:normal;padding:14px 22px;background:#fff;box-shadow:0 12px 28px #092b4515;border-top:2px solid var(--copper);text-align:left;pointer-events:auto;opacity:1;visibility:visible}
.shannon .header-nav-folder-content a{display:block;padding:12px 0;line-height:1.5;font-size:16px;white-space:normal}
.shannon .header-nav-folder-content a:hover{color:var(--copper)}
.shannon .header-nav-item--folder.open .header-nav-folder-content{display:block!important}
@media(hover:hover){.shannon .header-nav-item--folder:hover .header-nav-folder-content{display:block!important}}
.shannon .header-nav-item--folder.menu-dismissed .header-nav-folder-content{display:none!important}
.shannon .header-action{flex:none;margin-left:12px;gap:18px;padding:17px 20px}
.shannon .header-burger-btn{display:none;position:static;z-index:60;width:82px;height:82px;border:0;background:none;padding:9px 3px;flex-direction:column;justify-content:center;gap:8px;margin:0;color:var(--navy)}
.shannon .header-burger-btn span{width:30px;height:2px;background:var(--navy);display:block;transition:transform .25s ease}
.shannon .header-burger-btn[aria-expanded=true] span:first-child{transform:translateY(5px) rotate(45deg)}
.shannon .header-burger-btn[aria-expanded=true] span:last-child{transform:translateY(-5px) rotate(-45deg)}
.shannon .header-menu{position:fixed;top:104px;bottom:0;left:0;right:0;background:#fff;padding:24px var(--page-pad) 60px;overflow:auto;z-index:49;display:block;visibility:visible;opacity:1;transform:none;font-family:Jost,sans-serif}
.shannon .header-menu>a,.shannon .mobile-folder{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line);font-size:25px;line-height:1.4}
.shannon .mobile-folder button{border:0;background:none;font-size:24px;width:44px}
.shannon #mobile-services{padding:14px 0 14px 18px}
.shannon #mobile-services a{display:block;padding:12px 0;font-size:18px;line-height:1.4}
.shannon.menu-open{overflow:hidden}
.shannon main{display:block;position:relative;margin:0;padding:0}
.shannon .shannon-section{position:relative;display:block;background:#fff;color:var(--navy);border:0;min-height:0;overflow:visible;margin:0;padding:0}
.shannon .shannon-section .content-wrapper{display:block;width:100%;max-width:1600px;margin:0 auto;padding:88px var(--page-pad);min-height:0;box-sizing:border-box}
.shannon .shannon-section .content{width:100%;display:block;margin:0;min-height:0}
.shannon .shannon-section .fluid-engine{display:block;position:relative;width:100%;height:auto;min-height:0;grid-template:none;gap:0;padding:0;margin:0}
.shannon .shannon-section.light{background:var(--paper)}
.shannon .shannon-section.dark{background:var(--navy);color:#fff}
.shannon .hero .content-wrapper{padding-top:78px;padding-bottom:76px}
.shannon .hero .hero-copy{position:relative;z-index:2;max-width:980px}
.shannon .hero h1{max-width:900px;margin-bottom:28px;line-height:1.16}
.shannon .hero-subtitle{max-width:800px;font-size:20px;line-height:1.65}
.shannon .hero-support{max-width:760px;font-size:17px;line-height:1.7;color:#e7eef2}
.shannon .home-hero{background:var(--navy);color:white;min-height:calc(100svh - 104px);display:flex;align-items:flex-end;overflow:hidden}
.shannon .home-hero .content-wrapper{position:relative;padding-top:120px;padding-bottom:74px}
.shannon .home-hero .hero-copy{max-width:870px}
.shannon .home-hero h1{max-width:780px;font-size:clamp(42px,4.65vw,68px);line-height:1.14}
.shannon .home-hero .eyebrow{color:#e6b68f}
.shannon .home-hero .section-background{position:absolute;inset:0;overflow:hidden;background:var(--navy);height:100%;width:100%;z-index:0}
.shannon .home-hero .section-background img{height:100%;width:100%;object-fit:cover;object-position:50% 55%;opacity:.65}
.shannon .home-hero:after{position:absolute;content:'';inset:0;background:linear-gradient(90deg,rgba(6,29,48,.92),rgba(6,29,48,.44) 70%,rgba(6,29,48,.17));z-index:1;pointer-events:none}
.shannon .home-hero .content-wrapper{z-index:2}
.shannon .home-hero .content-wrapper,.shannon .home-hero .content,.shannon .home-hero .fluid-engine{position:static;z-index:auto}
.shannon .compact-hero{background:#edf2f4;overflow:hidden}
.shannon .compact-hero .content-wrapper{padding-right:20vw}
.shannon .compact-hero .hero-subtitle{max-width:880px}
.shannon .hero-geometry{position:absolute;right:-16vw;top:-20%;width:45vw;height:160%;opacity:.35;transform:rotate(-18deg);pointer-events:none}
.shannon .hero-geometry span{display:block;position:absolute;border:1px solid #8ca2af;width:100%;height:75%;top:14%;left:0}
.shannon .hero-geometry span:nth-child(2){left:30px;top:22%}
.shannon .hero-geometry span:nth-child(3){left:60px;top:30%}
.shannon .split-hero{background:#edf2f4}
.shannon .split-hero .fluid-engine{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:60px;align-items:center}
.shannon .split-hero .hero-copy{max-width:800px}
.shannon .split-hero h1{font-size:clamp(38px,3.7vw,54px)}
.shannon .split-hero .hero-subtitle{font-size:19px}
.shannon .split-hero .hero-image{height:350px;overflow:hidden;position:relative}
.shannon .split-hero .hero-image img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.shannon .split-hero .button-outline{color:var(--navy);border-color:var(--navy)}
.shannon .editorial .fluid-engine{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:80px;align-items:start}
.shannon .editorial-heading h2{max-width:530px}
.shannon .editorial-copy{max-width:760px}
.shannon .editorial-copy p{color:var(--muted)}
.shannon .editorial-copy p:last-child{margin-bottom:0}
.shannon .service-module .content-wrapper{padding-top:70px;padding-bottom:70px}
.shannon .service-module .editorial-heading:before{content:'';display:block;width:40px;height:2px;background:var(--copper);margin:4px 0 26px}
.shannon .card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 54px;margin-top:46px}
.shannon .card-grid.three-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px}
.shannon .text-card{border-top:1px solid var(--line);padding:32px 0 20px;position:relative}
.shannon .text-card p{color:var(--muted);font-size:18px;max-width:540px}
.shannon .card-index{font-family:Jost,sans-serif;font-size:13px;letter-spacing:.05em;color:var(--copper);display:block;margin-bottom:28px;line-height:1}
.shannon .cards-section:first-of-type h2{text-align:center}
.shannon .cards-section h2{max-width:900px}
.shannon[data-page='/'] .cards-section h2{text-align:center;max-width:none}
.shannon[data-page='/'] .cards-section .content-wrapper{max-width:1320px}
.shannon .perspective .fluid-engine{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:7vw}
.shannon .perspective .sqs-block-image{margin:0;padding:0;height:480px;position:relative;overflow:hidden}
.shannon .perspective .sqs-block-image img{height:100%;width:100%;object-fit:cover}
.shannon .perspective h2{max-width:600px}
.shannon .client-carousel .content-wrapper{padding-top:80px;padding-bottom:60px}
.shannon .client-carousel .section-head{max-width:780px}
.shannon .user-items-list-carousel{display:block;position:relative;padding:0;width:100%;color:#fff;overflow:hidden;min-height:0}
.shannon .carousel-track{display:flex;gap:32px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:none;scrollbar-width:none;padding:20px 0 2px;scroll-behavior:smooth;width:100%;max-width:100%}
.shannon .carousel-track::-webkit-scrollbar{display:none}
.shannon .user-items-list-carousel__slide{flex:0 0 calc((100% - 64px)/3);scroll-snap-align:start;border-top:1px solid #496478;border-bottom:1px solid #496478;display:flex;flex-direction:column;padding:35px 0;min-height:320px;text-align:left;position:relative;background:transparent;opacity:1;transform:none}
.shannon .user-items-list-carousel__slide h3{color:#fff;font-size:28px}
.shannon .user-items-list-carousel__slide p{color:#d2dce3;max-width:390px;font-size:18px;padding-right:18px;line-height:1.7}
.shannon .user-items-list-carousel__slide .card-index{color:#ddb38e}
.shannon .card-route{margin-top:auto;align-self:flex-start;color:#fff;font-size:25px;border-bottom:1px solid #ddb38e;padding:0 10px 0 0}
.shannon .card-route:hover{color:#ddb38e}
.shannon .carousel-controls{display:flex;justify-content:space-between;align-items:center;margin-top:26px}
.shannon .carousel-controls>div{display:flex;gap:15px}
.shannon .carousel-status{font-family:Jost,sans-serif;font-size:13px;letter-spacing:.15em;color:#c8d5df;margin:0}
.shannon .user-items-list-carousel__arrow-button{border:1px solid #a4b8c5;border-radius:0;background:transparent;width:54px;height:50px;display:flex;align-items:center;justify-content:center;font-size:25px;position:static;color:#fff;padding:0;transition:background .2s ease}
.shannon .user-items-list-carousel__arrow-button:hover{background:#315269}
.shannon .callout .fluid-engine{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:80px;align-items:center}
.shannon .callout h2{max-width:730px;margin:0}
.shannon .callout .editorial-copy p{color:var(--muted)}
.shannon .callout .actions{margin-top:24px}
.shannon .identity h2{max-width:800px}
.shannon .identity-table{margin:38px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 60px}
.shannon .identity-table>div{display:grid;grid-template-columns:1fr 1.5fr;gap:24px;border-top:1px solid #cad5db;padding:23px 0;align-items:start}
.shannon .identity-table dt{font-family:Jost,sans-serif;font-size:16px;font-weight:500}
.shannon .identity-table dd{margin:0;font-size:17px}
.shannon .small-note{color:var(--muted);font-size:15px;line-height:1.8;max-width:970px;margin-top:26px}
.shannon .focus-sequence .card-grid{display:block;margin-top:40px}
.shannon .focus-sequence .text-card{display:grid;grid-template-columns:50px minmax(0,.8fr) minmax(0,1.2fr);gap:35px;padding:34px 0;align-items:start}
.shannon .focus-sequence .card-index{margin:8px 0 0}
.shannon .focus-sequence .text-card p{margin:0;max-width:700px}
.shannon .focus-sequence .text-card h3{max-width:400px}
.shannon .plain-list{list-style:none;padding:0;margin:26px 0 0}
.shannon .plain-list li{position:relative;padding:13px 0 13px 24px;border-top:1px solid var(--line);color:var(--muted)}
.shannon .plain-list li:before{content:'';height:5px;width:5px;background:var(--copper);position:absolute;left:1px;top:27px}
.shannon .questions h2{max-width:960px}
.shannon .accordion-items-container{list-style:none;margin:40px 0 0;padding:0}
.shannon .accordion-item{border-top:1px solid var(--line);list-style:none;margin:0;padding:0}
.shannon .accordion-item:last-child{border-bottom:1px solid var(--line)}
.shannon .accordion-item__title-wrapper{margin:0}
.shannon .accordion-item__click-target{display:flex;align-items:center;justify-content:space-between;text-align:left;background:transparent;border:0;padding:25px 0;width:100%;font-family:Jost,sans-serif;font-size:23px;font-weight:400;line-height:1.4;gap:24px}
.shannon .accordion-icon-container{flex:none;font-size:23px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--copper)}
.shannon .accordion-item__dropdown{height:auto;max-height:none;overflow:visible;margin:0;padding:0 50px 26px 0;transition:none;opacity:1}
.shannon .accordion-item__description{color:var(--muted);font-size:18px;line-height:1.8;max-width:1000px}
.shannon .accordion-item__description p{margin:0}
.shannon .accordion-divider{display:none}
.shannon .approach-panel h2{margin-bottom:40px}
.shannon .approach-sequence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 75px}
.shannon .stage{display:grid;grid-template-columns:60px minmax(0,1fr);gap:20px;border-top:1px solid #cbd5da;padding-top:30px}
.shannon .stage-number{font-family:Jost,sans-serif;font-size:25px;color:var(--copper);line-height:1.3}
.shannon .stage p{color:var(--muted);margin:0;font-size:18px}
.shannon .firm-numbers{font-family:Jost,sans-serif;font-size:23px;letter-spacing:.01em;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:30px 0}
.shannon .firm-numbers span{padding:0 12px;color:#b6c3cc}
.shannon .route-cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:40px}
.shannon .route-cards .text-card .text-link{font-size:15px}
.shannon .contact-layout .fluid-engine{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:70px;align-items:start}
.shannon .contact-info h2{font-size:39px;line-height:1.28;max-width:460px}
.shannon .contact-info>p:not(.eyebrow){max-width:480px;color:var(--muted)}
.shannon .demo-notice{display:flex;gap:14px;border-top:1px solid #c9d4da;border-bottom:1px solid #c9d4da;padding:24px 0;margin-top:42px;max-width:450px}
.shannon .demo-dot{width:7px;height:7px;background:var(--copper);flex:none;border-radius:50%;margin-top:9px}
.shannon .demo-notice strong{font-family:Jost,sans-serif;font-size:17px;font-weight:500}
.shannon .demo-notice p{font-size:15px;line-height:1.7;color:var(--muted);margin:7px 0 0}
.shannon .form-panel{background:#fff;padding:38px 40px 40px}
.shannon .form-panel h2{font-size:30px;margin-bottom:30px}
.shannon .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 24px}
.shannon .form-item{font-family:Jost,sans-serif;font-size:15px;line-height:1.5;display:block}
.shannon .field-note{font-size:12px;color:var(--muted)}
.shannon .form-item input,.shannon .form-item select,.shannon .form-item textarea{width:100%;border:1px solid #cbd5dc;padding:12px 13px;display:block;margin-top:9px;background:#fbfcfc;border-radius:0;outline-offset:2px;font-family:Catamaran,sans-serif;font-size:16px;line-height:1.5;min-height:48px}
.shannon .form-item textarea{resize:vertical;min-height:150px}
.shannon .full-width{grid-column:1/-1}
.shannon .form-guidance{font-size:13px;line-height:1.75;color:var(--muted);margin:25px 0 20px}
.shannon .acknowledgment{display:flex;gap:12px;font-size:13px;line-height:1.7;align-items:start;margin-bottom:27px}
.shannon .acknowledgment input{width:17px;height:17px;accent-color:var(--copper);margin:3px 0 0;flex:none}
.shannon .form-status{font-size:15px;margin:22px 0 0;color:var(--copper-dark)}
.shannon .header-nav-item,.shannon .form-item input,.shannon .form-item select,.shannon .form-item textarea{font-family:Catamaran,Arial,sans-serif}
.shannon .button{font-family:'Pontano Sans',Arial,sans-serif}
.shannon .shannon-footer{background:#fff;border-top:1px solid #dce3e7;color:var(--navy)}
.shannon .shannon-footer .content-wrapper{padding-top:60px;padding-bottom:30px}
.shannon .footer-main{display:grid;grid-template-columns:1.5fr 1fr;gap:100px;padding-bottom:40px}
.shannon .footer-brand .brand{width:280px;margin-bottom:24px}
.shannon .footer-tagline{font-family:Jost,sans-serif;font-size:25px;margin-bottom:14px}
.shannon .footer-brand p:not(.footer-tagline){font-size:15px;line-height:1.7;color:var(--muted);margin-bottom:12px}
.shannon .footer-links .eyebrow{margin:0 0 18px}
.shannon .footer-links a{display:flex;max-width:320px;justify-content:space-between;font-size:16px;border-bottom:0;padding:5px 0}
.shannon .footer-legal{border-top:1px solid var(--line);padding-top:28px}
.shannon .footer-legal .eyebrow{font-size:11px;margin-bottom:17px}
.shannon .footer-legal p:not(.eyebrow){font-size:12px;line-height:1.85;color:var(--muted);margin:0 0 5px;max-width:1280px}
.shannon .footer-bottom{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}
.shannon .footer-bottom p{font-size:12px;color:var(--muted);margin:0}
.shannon .preFade{opacity:1;transform:none;transition:opacity .9s ease;transition-delay:.08s}
.shannon.has-reveal .preFade:not(.is-visible){opacity:0}
.shannon .sqs-block-image.preFade{transition-delay:.12s}
@media(min-width:1700px){:root{--page-pad:64px}}
@media(max-width:1190px){.shannon .header-nav{gap:18px}.shannon .header-nav-item{font-size:15px}.shannon .brand{width:240px}.shannon .header-action{font-size:12px;padding:14px;gap:12px}.shannon .header-inner{gap:18px}.shannon .editorial .fluid-engine{gap:48px}.shannon .contact-layout .fluid-engine{gap:36px}.shannon .form-panel{padding:30px}}
@media(max-width:980px){.shannon .header-nav,.shannon .header-action{display:none}.shannon .header-burger-btn{display:flex}.shannon .header-inner{min-height:92px;padding-top:12px;padding-bottom:12px}.shannon .header-menu{top:92px}.shannon .brand{width:258px}.shannon .home-hero{min-height:680px}.shannon .shannon-section .content-wrapper{padding-top:68px;padding-bottom:68px}.shannon .compact-hero .content-wrapper{padding-right:var(--page-pad)}.shannon .hero .hero-copy{max-width:800px}.shannon .card-grid.three-cards{gap:28px}.shannon .card-grid{gap:0 36px}.shannon .text-card h3{font-size:24px}.shannon .split-hero .fluid-engine{gap:30px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.shannon .split-hero .hero-image{height:380px}.shannon .callout .fluid-engine{gap:40px}.shannon .contact-layout .fluid-engine{grid-template-columns:1fr;gap:40px}.shannon .contact-info h2{max-width:800px}.shannon .contact-info>p:not(.eyebrow){max-width:750px}.shannon .demo-notice{max-width:750px;margin-top:26px}.shannon .form-panel{padding:35px}.shannon .footer-main{gap:70px}}
@media(max-width:680px){:root{--page-pad:24px}html{scroll-padding-top:86px}.shannon{font-size:17px!important}.shannon .header-inner{min-height:86px;padding-top:12px;padding-bottom:12px}.shannon .brand{width:221px}.shannon .header-menu{top:86px}.shannon h1{font-size:38px;line-height:1.18}.shannon h2{font-size:32px}.shannon h3{font-size:25px}.shannon .eyebrow{font-size:10px;letter-spacing:.15em;margin-bottom:20px}.shannon .shannon-section .content-wrapper{padding:52px var(--page-pad)}.shannon .home-hero{min-height:calc(100svh - 86px);align-items:center}.shannon .home-hero .content-wrapper{padding-top:64px;padding-bottom:60px}.shannon .home-hero h1{font-size:43px;line-height:1.12;margin-bottom:24px}.shannon .home-hero .section-background img{object-position:35% 50%;opacity:.55}.shannon .home-hero:after{background:linear-gradient(90deg,rgba(6,29,48,.83),rgba(6,29,48,.4))}.shannon .hero-subtitle{font-size:18px;line-height:1.65}.shannon .hero-support{font-size:15px;line-height:1.75}.shannon .actions{gap:12px;margin-top:27px}.shannon .button{font-size:11px;padding:16px 19px;gap:20px;min-height:52px}.shannon .home-hero .actions{display:grid;grid-template-columns:1fr;max-width:340px}.shannon .compact-hero .content-wrapper{padding-top:54px;padding-bottom:54px}.shannon .compact-hero h1{font-size:38px}.shannon .hero-geometry{right:-45vw;width:80vw;opacity:.2}.shannon .split-hero .fluid-engine{grid-template-columns:1fr;gap:28px}.shannon .split-hero h1{font-size:38px}.shannon .split-hero .hero-image{height:240px}.shannon .split-hero .hero-subtitle{font-size:18px}.shannon .editorial .fluid-engine,.shannon .callout .fluid-engine,.shannon .perspective .fluid-engine{grid-template-columns:1fr;gap:18px}.shannon .editorial-heading h2{margin-bottom:12px}.shannon .editorial-copy p{font-size:17px}.shannon .card-grid,.shannon .card-grid.three-cards{grid-template-columns:1fr;gap:0;margin-top:28px}.shannon .text-card{padding:27px 0 24px}.shannon .card-index{margin-bottom:20px}.shannon .text-card p{font-size:17px}.shannon .text-card h3{font-size:25px}.shannon .perspective .sqs-block-image{height:310px;margin-bottom:24px}.shannon .user-items-list-carousel__slide{flex-basis:87%;min-height:350px;padding-right:10px}.shannon .carousel-track{gap:28px}.shannon .user-items-list-carousel__slide h3{font-size:28px}.shannon .user-items-list-carousel__slide p{font-size:17px}.shannon .identity-table{grid-template-columns:1fr;margin:28px 0}.shannon .identity-table>div{grid-template-columns:1fr 1.4fr;gap:18px;padding:20px 0}.shannon .identity-table dt,.shannon .identity-table dd{font-size:15px}.shannon .focus-sequence .text-card{grid-template-columns:36px minmax(0,1fr);gap:14px}.shannon .focus-sequence .text-card p{grid-column:2;}.shannon .focus-sequence .text-card h3{margin-bottom:0}.shannon .approach-sequence{grid-template-columns:1fr;gap:30px}.shannon .stage{grid-template-columns:42px minmax(0,1fr);gap:15px}.shannon .stage h3{font-size:25px}.shannon .stage p{font-size:17px}.shannon .accordion-item__click-target{font-size:21px;padding:22px 0;gap:15px}.shannon .accordion-item__dropdown{padding-right:10px}.shannon .accordion-item__description{font-size:17px}.shannon .firm-numbers{font-size:20px}.shannon .firm-numbers span{padding:0 3px}.shannon .contact-layout .fluid-engine{gap:30px}.shannon .contact-info h2{font-size:32px}.shannon .form-panel{padding:28px 20px}.shannon .form-panel h2{font-size:28px}.shannon .form-grid{grid-template-columns:1fr;gap:21px}.shannon .form-guidance,.shannon .acknowledgment{font-size:13px}.shannon .footer-main{grid-template-columns:1fr;gap:28px;padding-bottom:30px}.shannon .footer-brand .brand{width:240px}.shannon .footer-brand .footer-tagline{font-size:24px}.shannon .footer-links a{max-width:none}.shannon .shannon-footer .content-wrapper{padding-top:44px;padding-bottom:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.shannon *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.shannon.has-reveal .preFade{opacity:1!important}}

/* Home hero alignment, semantic icons and seamless-loop viewport. */
.shannon .home-hero{align-items:center}
.shannon .home-hero .content-wrapper{padding-top:140px;padding-bottom:100px}
.shannon .home-hero .hero-copy{max-width:940px;margin:0 auto 0 0;text-align:left}
.shannon .home-hero h1{max-width:900px;margin-left:0;margin-right:0}
.shannon .home-hero .hero-subtitle{max-width:780px;margin-left:0;margin-right:0}
.shannon .home-hero .hero-support{max-width:740px;margin-left:0;margin-right:0}
.shannon .home-hero .actions{justify-content:flex-start}
.shannon .service-icon{display:flex;align-items:center;justify-content:center;width:120px;height:120px;color:#fff;margin:0 0 28px;background:#062d50;border:0;flex:none}
.shannon .service-icon svg{display:block;width:82px;height:82px}
.shannon .user-items-list-carousel__slide .service-icon{color:#fff;background:#9f6a13}
.shannon .focus-sequence .text-card{grid-template-columns:120px minmax(0,.8fr) minmax(0,1.2fr);gap:32px;align-items:center}
.shannon .focus-sequence .service-icon{margin:0}
.shannon .approach-sequence .stage{grid-template-columns:120px minmax(0,1fr);gap:22px}
.shannon .stage .service-icon{margin:0}
.shannon .contact-info>.service-icon,.shannon .form-panel>.service-icon{margin-bottom:22px}
.shannon .service-module .editorial-heading:before{display:none}
.shannon .carousel-track{overflow-anchor:none}
@media(max-width:680px){
 .shannon .home-hero .content-wrapper{padding-top:76px;padding-bottom:64px}
 .shannon .home-hero .actions{margin-left:0;margin-right:0}
 .shannon .home-hero h1{font-size:41px}
 .shannon .service-icon{width:96px;height:96px;margin-bottom:24px}
 .shannon .service-icon svg{width:66px;height:66px}
 .shannon .focus-sequence .text-card{grid-template-columns:1fr;gap:18px;align-items:start}
 .shannon .approach-sequence .stage{grid-template-columns:1fr;gap:18px}
}

/* Revision 02: reference-style white outlines, one icon section per page. */
.shannon .icon-showcase .card-grid .text-card{text-align:center}
.shannon .icon-showcase .card-grid .service-icon{margin-left:auto;margin-right:auto}
.shannon .icon-showcase .card-grid .text-card p{margin-left:auto;margin-right:auto}
.shannon .client-carousel.icon-showcase .user-items-list-carousel__slide{text-align:center}
.shannon .client-carousel.icon-showcase .service-icon{margin-left:auto;margin-right:auto}
.shannon .client-carousel.icon-showcase .text-link{align-self:center}
@media(max-width:680px){
 .shannon .focus-sequence.icon-showcase .text-card{text-align:center}
 .shannon .focus-sequence.icon-showcase .service-icon{margin:0 auto 6px}
 .shannon .focus-sequence.icon-showcase .text-card p{grid-column:1}
 .shannon .approach-panel.icon-showcase .stage{text-align:center}
 .shannon .approach-panel.icon-showcase .stage .service-icon{margin:0 auto 6px}
}

/* Client-supplied document gallery: scoped to the Our Firm section. */
.shannon .company-documents .documents-intro{max-width:900px;color:var(--muted);margin-bottom:36px}
.shannon .company-documents .documents-intro a{color:var(--navy);text-decoration:underline;text-decoration-color:var(--copper);text-underline-offset:4px}
.shannon .company-documents .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.shannon .company-documents .document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.shannon .company-documents .document-card{display:block;min-width:0;border:1px solid var(--line);background:#fff;padding:24px;transition:opacity .9s ease,border-color .25s ease,box-shadow .25s ease}
.shannon .company-documents .document-card:hover{border-color:var(--copper);box-shadow:0 8px 24px #092b450b}
.shannon .company-documents figure{margin:0}
.shannon .company-documents .document-frame{display:flex;align-items:center;justify-content:center;aspect-ratio:1.414;background:#f5f6f2;overflow:hidden}
.shannon .company-documents .document-frame img{width:100%;height:100%;object-fit:contain}
.shannon .company-documents figcaption{padding-top:24px}
.shannon .company-documents .document-label{font-family:Jost,sans-serif;font-size:11px;font-weight:500;letter-spacing:.12em;color:var(--muted);margin:0 0 10px}
.shannon .company-documents h3{font-size:27px;margin-bottom:18px}
.shannon .company-documents .document-action{display:inline-flex;gap:28px;align-items:center;font-family:Jost,sans-serif;font-size:16px;border-bottom:1px solid var(--copper);padding-bottom:6px}
.shannon .company-documents .documents-note{font-size:14px;line-height:1.75;color:var(--muted);max-width:1000px;margin:26px 0 0}
@media(max-width:680px){
 .shannon .company-documents .document-grid{grid-template-columns:1fr;gap:24px}
 .shannon .company-documents .document-card{padding:18px}
 .shannon .company-documents .documents-intro{font-size:17px;margin-bottom:28px}
 .shannon .company-documents figcaption{padding-top:20px}
 .shannon .company-documents h3{font-size:25px}
 .shannon .company-documents .documents-note{font-size:13px}
}
