
/* P00 sitewide component locks — additive over the v1.1 shell */
.giporg-ai-source{margin:1.2rem 0 1.55rem;max-width:100%;padding:1rem 1.1rem;background:#f0f8fc;border:1px solid #dce8ee;border-radius:10px;color:#14204a}
.giporg-ai-source__label{font-size:.87rem;font-weight:700;letter-spacing:.01em;margin:0 0 .65rem}
.giporg-ai-source__grid{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}
.giporg-ai-source__grid button{appearance:none;cursor:pointer;background:#fff;border:1px solid #bacbd8;border-radius:8px;color:#14204a;padding:.55rem .8rem;min-height:44px;font-family:inherit;font-size:.86rem;font-weight:600;line-height:1.25;transition:background-color .15s}
.giporg-ai-source__grid button:hover{background:#e2f2f9}
.giporg-ai-source__grid button:focus-visible{outline:3px solid #3ac5f0;outline-offset:3px}
.giporg-ai-source__google{display:flex;align-items:center;min-height:44px;max-width:100%}
.giporg-ai-source__note{font-size:.72rem;line-height:1.5;margin:.65rem 0 0;color:#536174}
@media(max-width:600px){.giporg-ai-source{padding:.8rem}.giporg-ai-source__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.giporg-ai-source__google{grid-column:1/-1;min-width:0}.giporg-ai-source__grid button{min-width:0;white-space:normal}}

.giporg-ticker-section{padding:2.75rem 0 3.1rem;background:#fff;overflow:hidden}
.giporg-ticker-section h2{text-align:center;font-size:1.7rem;color:#14204a;margin:0 0 1.3rem}
.giporg-ticker-window{width:100%;max-width:100%;overflow:hidden;mask-image:linear-gradient(90deg,transparent,black 3%,black 97%,transparent)}
.giporg-ticker-track{display:flex;width:max-content;gap:0;animation:giporg-ticker-loop 50s linear infinite;will-change:transform;backface-visibility:hidden}
.giporg-ticker-cycle{display:flex;gap:1rem;padding-right:1rem;flex:none;width:max-content}
.giporg-ticker-item{display:block;width:300px;flex:none;color:#14204a;text-decoration:none;background:#fff;border:1px solid #dce8ee;border-radius:8px;overflow:hidden;box-shadow:0 3px 14px rgba(13,38,68,.1)}
.giporg-ticker-item img{display:block;width:100%;height:170px;object-fit:cover}
.giporg-ticker-item span{display:block;min-height:52px;padding:.75rem;font-size:.86rem;font-weight:600}
.giporg-ticker-item:hover{color:#087fb4}
.giporg-ticker-item:focus-visible{outline:3px solid #3ac5f0;outline-offset:2px}
@keyframes giporg-ticker-loop{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media(prefers-reduced-motion:reduce){.giporg-ticker-window{mask-image:none;overflow-x:auto;scrollbar-width:auto}.giporg-ticker-track{animation:none!important;transform:none!important}.giporg-ticker-cycle[aria-hidden="true"]{display:none}}

/* P00 contact and shell repair; preserve original design tokens */
.ticker-window:hover .ticker-track{animation-play-state:running!important}
.giporg-ai-source{position:relative;z-index:1}
.giporg-ai-source__google{flex-wrap:wrap}
.giporg-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;max-width:1120px;margin:28px auto;padding:22px 25px;border-radius:12px;background:#eaf6fc;border:1px solid #b6dbea;color:#14204a;box-shadow:0 5px 22px rgba(20,32,74,.06)}
.giporg-cta h3{margin:0 0 5px;font-size:clamp(18px,2vw,23px);line-height:1.28;color:#14204a}
.giporg-cta p{margin:0;color:#405b75;font-size:14px;line-height:1.6}
.giporg-cta__link{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;padding:13px 19px;min-height:44px;border-radius:8px;background:#14204a;color:#fff!important;font-weight:700;font-size:13px;text-decoration:none;white-space:normal}
.giporg-cta__link:hover{background:#204a76}
.giporg-cta__link:focus-visible{outline:3px solid #3ac5f0;outline-offset:3px}
.giporg-cta--top{margin:22px 0 0;max-width:780px;background:#f1f9fc;color:#14204a;box-shadow:none}
.hero-copy .giporg-cta--top,.contact-hero-intro .giporg-cta--top{grid-template-columns:1fr;padding:16px;gap:12px}
.contact-hero-intro .giporg-cta--top .giporg-cta__link,.hero-copy .giporg-cta--top .giporg-cta__link{justify-self:start}
.inner-hero .giporg-cta--top{margin:21px 0 0;max-width:850px;padding:16px}
.giporg-middle-wrapper,.giporg-bottom-wrapper{padding:14px 20px;background:#fff}
.giporg-middle-wrapper .giporg-cta,.giporg-bottom-wrapper .giporg-cta{margin:10px auto}
.giporg-related-context{margin:38px 0;padding:25px;background:#f0f8fc;border:1px solid #deebf4;border-radius:10px}
.giporg-related-context h3{margin-top:0!important}
.giporg-related-context ul{padding-left:22px}.giporg-related-context li{margin:10px 0;line-height:1.6}
.giporg-research-companion{margin:38px 0 0;border-top:2px solid #dce8ee;padding-top:20px}
.giporg-research-companion h2{font-size:clamp(23px,2.7vw,31px)}
.giporg-research-companion h3{margin:25px 0 12px;color:#14204a;font-size:21px;line-height:1.35}
.giporg-research-companion p{line-height:1.86;max-width:78ch}
.giporg-sources-block{background:#f0f8fc;border-left:4px solid #3ac5f0;padding:20px;margin:35px 0}
.giporg-feature-video{padding:58px 20px;background:#f0f8fc}
.giporg-feature-video__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:45px}
.giporg-feature-video__grid h2{font-size:clamp(24px,3vw,34px);color:#14204a;margin:10px 0}
.giporg-feature-video__grid p{color:#466079;line-height:1.75}
.giporg-feature-video__frame{position:relative;aspect-ratio:16/9;min-width:0;overflow:hidden;border-radius:9px;background:#0a1634}
.giporg-feature-video__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
/* Contact: balanced columns and predictable intrinsic sizing. */
.contact-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(22px,3vw,40px);align-items:start}
.contact-hero-intro,.contact-hero-side,.contact-hero-grid>*{min-width:0}
.contact-hero .container{width:min(100% - 42px,1240px)}
.contact-hero h1{font-size:clamp(32px,3.35vw,48px);line-height:1.16;overflow-wrap:normal}
.contact-methods{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.contact-method{min-width:0;min-height:64px;overflow:hidden}
.contact-method small{display:block;overflow-wrap:anywhere}
.contact-options{padding:clamp(17px,2vw,26px);width:100%;min-width:0}
.contact-hero-side{min-width:0;max-width:none;margin:0}
.contact-side-image{display:block;width:100%;height:auto;aspect-ratio:16/7;object-fit:cover;margin-top:16px;border-radius:8px}
.contact-form-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(20px,3vw,40px);align-items:start}
.contact-form-grid>*{min-width:0}
.contact-form-embed{max-width:640px;width:100%;margin:0 auto;padding:7px}
.contact-form-embed iframe{display:block;width:100%;height:720px;border:0}
.contact-actions{flex-wrap:wrap}
@media(max-width:1024px){.giporg-feature-video__grid{grid-template-columns:1fr;gap:22px}.contact-hero-grid{grid-template-columns:1fr}.contact-hero-side{max-width:780px;margin:0}.contact-form-grid{grid-template-columns:1fr}.contact-form-embed{max-width:700px;margin:0}}
@media(max-width:768px){.giporg-cta{grid-template-columns:1fr;padding:20px}.giporg-cta__link{justify-self:start}.contact-hero .container{width:min(100% - 28px,1240px)}.contact-hero-grid{gap:25px}.contact-side-image{display:none}.giporg-feature-video{padding:40px 14px}.giporg-research-companion p{max-width:100%}}
@media(max-width:430px){.contact-methods{grid-template-columns:1fr 1fr;gap:8px}.contact-method{padding:10px 7px;gap:7px}.contact-method-symbol{width:27px;height:27px;min-width:27px}.contact-method small{font-size:10px}.contact-hero h1{font-size:clamp(30px,8.1vw,36px)}.giporg-cta__link{width:100%}.giporg-middle-wrapper,.giporg-bottom-wrapper{padding:10px}.contact-form-embed iframe{height:740px}}
@media(prefers-reduced-motion:reduce){.ticker-track,.giporg-ticker-track{animation:none!important}}

.giporg-research-matrix{margin:30px 0;overflow-x:auto}.giporg-research-matrix table{border-collapse:collapse;width:100%;min-width:570px;font-size:13px}.giporg-research-matrix th{color:#fff;background:#14204a;text-align:left;padding:12px}.giporg-research-matrix td{padding:12px;border:1px solid #dde8ef;vertical-align:top}.giporg-research-matrix tr:nth-child(even){background:#f0f8fc}.giporg-source-nearby{background:#eef8fc;padding:14px;border-left:3px solid #3ac5f0}

/* Keep wide source comparison tables scrollable within their own section on narrow viewports. */
.inner-layout>*,.inner-article,.contact-guidance-grid>*,.giporg-research-matrix{min-width:0;max-width:100%}
.giporg-research-matrix{display:block;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
@media(max-width:768px){.giporg-research-matrix{width:100%;max-width:100%}.inner-article{overflow-wrap:anywhere}}

.giporg-topic-figure{margin:24px 0 32px;background:#f0f8fc;border:1px solid #dce8ee;border-radius:11px;padding:20px;max-width:650px}.giporg-topic-figure img{width:100%;height:auto;max-height:260px;object-fit:contain;display:block}.giporg-topic-figure figcaption{font-size:12px;color:#51657a;line-height:1.55;margin-top:9px}.giporg-related-context ul{columns:2;column-gap:26px}.giporg-related-context li{break-inside:avoid}.inner-layout>*{min-width:0}@media(max-width:620px){.giporg-related-context ul{columns:1}}

/* P02 editorial research comparison: content remains responsive with local scroll on mobile. */
.giporg-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;margin:20px 0 25px;border:1px solid #dce8ee;border-radius:9px}
.giporg-table-scroll table{min-width:620px;width:100%;border-collapse:collapse;font-size:14px;line-height:1.55}
.giporg-table-scroll th{background:#14204a;color:#fff;padding:12px 14px;text-align:left}
.giporg-table-scroll td{padding:12px 14px;border-top:1px solid #dce8ee;vertical-align:top}
.giporg-table-scroll tr:nth-child(even){background:#f0f8fc}
.giporg-table-scroll:focus-visible{outline:3px solid #3ac5f0;outline-offset:2px}
@media(max-width:430px){.giporg-table-scroll table{font-size:13px}}
