/* Maps & location intelligence - Rismor editorial service story and conceptual map. */
.geo-page{--geo-ink:#11364f;--geo-blue:#246f9d;--geo-teal:#0d7184;--geo-cream:#fbf7f0;--geo-line:#c9dce4;background:#fff;color:var(--geo-ink)}
.geo-page em{font-style:normal;color:#187a91}
.geo-page .geo-pad{padding-block:clamp(68px,8.2vw,122px)}
.geo-page .geo-light{color:#bbe1ef}
.geo-page .geo-section-head{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(0,.62fr);gap:clamp(28px,5vw,95px);align-items:end;margin-bottom:45px}
.geo-page .geo-section-head h2{font-size:clamp(36px,3.9vw,61px);line-height:1.12;letter-spacing:-.055em;margin:18px 0 0}
.geo-page .geo-section-head>p{font-size:16px;line-height:1.79;color:#4a6b7c;max-width:540px;margin:0}
.geo-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(115deg,#fff 3%,#f4f8f9 57%,#edf3f3 100%)}
.geo-hero-lines{position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0,transparent 126px,#6d9eaf09 127px),repeating-linear-gradient(0deg,transparent 0,transparent 126px,#6d9eaf09 127px),radial-gradient(ellipse at 78% 45%,#c3e7e96b,transparent 39%)}
.geo-hero-layout{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.96fr);gap:clamp(34px,4.5vw,76px);align-items:center;padding-top:var(--rismor-interior-hero-top);padding-bottom:clamp(66px,8vw,125px)}
.geo-breadcrumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 24px;color:#5d7d8c;font-size:13px}
.geo-breadcrumb a{color:#145f85;text-underline-offset:4px}
.geo-breadcrumb a:hover{color:#0a415f}
.geo-page a:focus-visible,.geo-page summary:focus-visible{outline:3px solid #13819a;outline-offset:5px}
.geo-hero h1{font-size:clamp(42px,4.5vw,73px);line-height:1.07;letter-spacing:-.06em;color:#103249;margin:17px 0 30px}
.geo-hero-copy>p:not(.overline){font-size:16px;line-height:1.82;color:#4a6375;max-width:690px}
.geo-hero-copy p.geo-hero-lead{color:#173e55;font-size:clamp(18px,1.46vw,22px);font-weight:650;line-height:1.67}
.geo-hero-copy .button-row{margin:31px 0 20px}
.geo-hero-copy .geo-hero-foot{font-size:13px!important;color:#537689!important}
.geo-map-board{position:relative;min-width:0;margin-top:clamp(20px,3vw,55px);padding:20px;background:#fff;border:1px solid #a8c9d6;box-shadow:0 30px 70px #0d3d4a1e}
.geo-map-board:before,.geo-map-board:after{content:"";position:absolute;width:24px;height:24px;border:2px solid #247b92}
.geo-map-board:before{top:-4px;left:-4px;border-right:0;border-bottom:0}
.geo-map-board:after{bottom:-4px;right:-4px;border-left:0;border-top:0}
.geo-map-toolbar{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:0 2px 15px;border-bottom:1px solid #c9dce5;color:#376e83;font-size:10px;letter-spacing:.085em;font-weight:800}
.geo-map-canvas{position:relative;overflow:hidden;border:1px solid #d0e2e8;margin:18px 0 0;background:#f2f7f8}
.geo-map-canvas svg{display:block;width:100%;height:auto;min-width:0}
.geo-map-note{position:absolute;padding:13px 14px;background:#fff;border:1px solid #b5d1dc;box-shadow:0 8px 25px #29526728;min-width:138px;max-width:55%}
.geo-map-note>span{display:block;font-size:9px;color:#276d85;font-weight:800;letter-spacing:.09em}
.geo-map-note strong{display:block;font-size:13px;color:#143b52;margin:6px 0 3px;line-height:1.26}
.geo-map-note small{display:block;font-size:11px;line-height:1.3;color:#638397}
.geo-map-note-event{top:7%;right:5%;border-left:3px solid #c67522}
.geo-map-note-question{left:3%;bottom:11%;border-left:3px solid #167c8c}
.geo-map-legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap;color:#567e8e;font-size:11px;padding:16px 2px;border-bottom:1px solid #d2e3e9}
.geo-map-legend span{display:inline-flex;gap:6px;align-items:center}
.geo-map-legend i{height:9px;width:9px;display:inline-block;border-radius:50%}
.geo-map-legend .geo-legend-event{background:#c57a32}.geo-map-legend .geo-legend-place{background:#0b7181}.geo-map-legend .geo-legend-route{background:#fff;border:2px dashed #197f90;width:13px;height:13px}
.geo-map-conclusion{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:17px 2px 3px}
.geo-map-conclusion span{font-size:10px;color:#43829a;font-weight:800;letter-spacing:.07em}
.geo-map-conclusion strong{font-size:16px;color:#123f58;text-align:right;line-height:1.3}
.geo-opening{display:grid;grid-template-columns:minmax(175px,.32fr) minmax(0,1fr);gap:clamp(40px,8vw,145px)}
.geo-margin{padding:24px 0 0;border-top:3px solid #207e95}
.geo-margin .handwritten{font-size:clamp(22px,2.3vw,32px);line-height:1.58;transform:rotate(-3deg);color:#32859d;margin-top:40px}
.geo-opening h2{font-size:clamp(36px,3.9vw,61px);letter-spacing:-.056em;line-height:1.13;margin:0 0 30px}
.geo-opening>div>p{font-size:clamp(16px,1.2vw,18px);line-height:1.83;color:#4c697b;max-width:910px}
.geo-opening strong{color:#193c55}
.geo-capabilities{background:#eff6f7}
.geo-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:3px solid #247f93}
.geo-services article{padding:clamp(26px,3.3vw,46px);border-bottom:1px solid #c6dce1;min-width:0}
.geo-services article:nth-child(odd){padding-left:0;border-right:1px solid #c6dce1}
.geo-services article>span,.geo-possibility-grid article>span,.geo-method-steps span{font-size:10px;color:#26738b;font-weight:800;letter-spacing:.09em}
.geo-services h3{font-size:clamp(26px,2.7vw,39px);letter-spacing:-.04em;line-height:1.18;margin:24px 0 15px;max-width:550px}
.geo-services p{font-size:16px;line-height:1.82;color:#4e6e7d;max-width:620px;margin:0}
.geo-scenario{background:linear-gradient(125deg,#071c33,#104461);color:#fff}
.geo-scenario-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.87fr);gap:clamp(40px,6vw,110px);align-items:center}
.geo-scenario h2,.geo-method h2{font-size:clamp(36px,3.85vw,59px);line-height:1.13;letter-spacing:-.056em;color:#fff;margin:20px 0 28px}
.geo-scenario h2 em,.geo-method h2 em{color:#aedfe5}
.geo-scenario-layout>div:first-child>p:not(.overline),.geo-method-layout>div:first-child>p:not(.overline){font-size:16px;line-height:1.84;color:#d5e7eb}
.geo-scenario strong,.geo-method strong{color:#fff}
.geo-question-board{border:1px solid #86bfc6;background:#1a53709c;padding:clamp(22px,2.8vw,37px)}
.geo-board-top{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #a7d8db6b;padding-bottom:17px;color:#bce5e7;font-size:9px;font-weight:800;letter-spacing:.09em}
.geo-board-row{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;padding:19px 0;border-bottom:1px solid #93c3ce63}
.geo-board-row>span{color:#bce5e7;font-size:13px;font-weight:800}
.geo-board-row strong{font-size:clamp(16px,1.55vw,21px);line-height:1.3}
.geo-board-row small{display:block;margin-top:6px;color:#c3e0e7;font-size:12px;line-height:1.5}
.geo-board-bottom{font-size:10px;letter-spacing:.08em;color:#b9e3e8;font-weight:800;padding-top:24px}
.geo-work{background:#fdfbf8}
.geo-work-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,.9fr);gap:clamp(40px,6vw,105px);align-items:center}
.geo-work-image{position:relative;box-shadow:0 22px 60px #172f4016;border:1px solid #d6e1df;overflow:hidden;background:#edf5f2}
.geo-work-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.geo-work-image-note{position:absolute;left:0;bottom:0;background:#103950;color:#fff;padding:13px 19px;font-size:10px;font-weight:800;letter-spacing:.09em}
.geo-work h2{font-size:clamp(35px,3.65vw,55px);line-height:1.14;letter-spacing:-.053em;margin:19px 0 27px}
.geo-work-layout>div:nth-child(2)>p:not(.overline){font-size:16px;line-height:1.83;color:#4c6878}
.geo-work-layout strong{color:#1a4056}
.geo-text-link{display:inline-block;font-weight:800;color:#146f8b;font-size:16px;text-underline-offset:5px;margin-top:17px}
.geo-possibility{background:#fff}
.geo-possibility-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:3px solid #247f93}
.geo-possibility-grid article{padding:28px clamp(16px,2.5vw,38px) 4px 0;min-width:0}
.geo-possibility-grid article+article{border-left:1px solid #c7dce2;padding-left:clamp(16px,2.5vw,38px)}
.geo-possibility-grid h3{font-size:clamp(25px,2.45vw,35px);line-height:1.21;letter-spacing:-.03em;margin:21px 0 17px}
.geo-possibility-grid p{font-size:15px;line-height:1.82;color:#587481}
.geo-method{background:linear-gradient(110deg,#071a2f,#0c3750);color:#fff}
.geo-method-layout{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,.9fr);gap:clamp(45px,6vw,110px);align-items:center}
.geo-method-steps{border-top:3px solid #b8e1e4}
.geo-method-steps>div{display:grid;grid-template-columns:35px minmax(0,1fr);gap:5px 14px;border-bottom:1px solid #9fc8cf72;padding:21px 0}
.geo-method-steps span{grid-row:1/3;color:#b9dce5;font-size:13px}
.geo-method-steps strong{font-size:18px;line-height:1.3}
.geo-method-steps small{font-size:13px;color:#bcd8e0;line-height:1.5}
.geo-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:3px solid #25829a}
.geo-trust-grid article{padding:30px clamp(16px,2vw,33px) 0 0}
.geo-trust-grid article+article{border-left:1px solid #c9dde3;padding-left:clamp(16px,2vw,33px)}
.geo-trust-grid span{font-weight:800;color:#327c90;font-size:20px}
.geo-trust-grid h3{font-size:clamp(22px,2vw,30px);line-height:1.2;letter-spacing:-.03em;margin:19px 0}
.geo-trust-grid p{font-size:15px;line-height:1.81;color:#526f7e}
.geo-faq{background:#eff6f7}
.geo-faq-layout{display:grid;grid-template-columns:minmax(0,.69fr) minmax(0,1fr);gap:clamp(38px,6vw,105px)}
.geo-faq h2{font-size:clamp(35px,3.45vw,55px);line-height:1.16;letter-spacing:-.052em;margin:18px 0}
.geo-faq-items{border-top:3px solid #2a7e93}
.geo-faq-items details{border-bottom:1px solid #c3dae1;padding:21px 0}
.geo-faq-items summary{cursor:pointer;color:#153f55;font-size:clamp(17px,1.42vw,21px);font-weight:750;line-height:1.45;list-style-position:outside}
.geo-faq-items p{font-size:15px;line-height:1.82;color:#536e7d;margin:14px 0 0;padding-right:20px}
.geo-closing .closing-inner h2{max-width:790px}
@media(max-width:1100px){
.geo-hero-layout,.geo-scenario-layout,.geo-method-layout,.geo-work-layout{grid-template-columns:1fr}
.geo-hero-layout{gap:14px}
.geo-hero-copy{max-width:880px}
.geo-map-board{max-width:720px;margin-top:25px}
.geo-page .geo-section-head{grid-template-columns:1fr;gap:16px}
.geo-page .geo-section-head>p{max-width:750px}
.geo-scenario-layout,.geo-method-layout{gap:36px}
.geo-possibility-grid{grid-template-columns:1fr}
.geo-possibility-grid article,.geo-possibility-grid article+article{border-left:0;border-bottom:1px solid #c9dde3;padding:27px 0 18px}
.geo-trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.geo-trust-grid article:nth-child(3){border-left:0;padding-left:0}
.geo-faq-layout{grid-template-columns:1fr}
}
@media(max-width:650px){
.geo-page .geo-pad{padding-block:65px}
.geo-hero-layout{padding-bottom:66px}
.geo-hero h1{font-size:clamp(37px,8.8vw,52px);margin:13px 0 23px}
.geo-hero-copy p.geo-hero-lead{font-size:18px}
.geo-hero-copy>p:not(.overline){font-size:15px}
.geo-hero-copy .button-row .btn{width:100%}
.geo-breadcrumb{margin-bottom:17px}
.geo-map-board{padding:13px;margin-top:15px}
.geo-map-toolbar{font-size:9px}
.geo-map-canvas svg{width:100%;height:auto}
.geo-map-note{padding:8px 9px;min-width:0;max-width:52%}
.geo-map-note>span{font-size:8px}
.geo-map-note strong{font-size:10px;margin:3px 0 1px}
.geo-map-note small{font-size:9px}
.geo-map-legend{font-size:10px;gap:9px}
.geo-map-conclusion{align-items:flex-start;flex-direction:column}
.geo-map-conclusion strong{text-align:left}
.geo-opening{grid-template-columns:1fr}
.geo-margin{display:none}
.geo-page .geo-section-head h2,.geo-opening h2{font-size:clamp(34px,8vw,45px)}
.geo-services{grid-template-columns:1fr}
.geo-services article,.geo-services article:nth-child(odd){border-right:0;padding:26px 0}
.geo-services h3{font-size:28px;margin:17px 0 10px}
.geo-question-board{padding:20px 16px}
.geo-work-image-note{font-size:9px}
.geo-trust-grid{grid-template-columns:1fr}
.geo-trust-grid article,.geo-trust-grid article+article,.geo-trust-grid article:nth-child(3){border-left:0;padding:23px 0;border-bottom:1px solid #cfdee3}
.geo-closing .button-row .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){.geo-page{scroll-behavior:auto}}
