*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,'Segoe UI',Arial,sans-serif;background:var(--bg);color:var(--text);transition:background .25s,color .25s}body[data-theme=dark]{--bg:#061426;--surface:#0a213a;--surface2:#0e2a47;--text:#f7f8fb;--muted:#b5c4d5;--line:#27405a;--gold:#e5b956;--nav:#061426;--cardText:#fff}body[data-theme=light]{--bg:#f5f7fb;--surface:#fff;--surface2:#eaf0f7;--text:#122844;--muted:#52667d;--line:#d4dce8;--gold:#b17a18;--nav:#fff;--cardText:#fff}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.container{width:min(1480px,calc(100% - 72px));margin:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:#fff;color:#000;z-index:999;padding:10px}.header{position:sticky;top:0;z-index:50;background:var(--nav);border-bottom:1px solid var(--line);box-shadow:0 2px 15px #0002}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:83px}.brand{display:flex;align-items:center;gap:11px;flex-shrink:0}.brand-symbol{font-family:Georgia,serif;font-size:60px;font-weight:900;font-style:italic;line-height:.8;background:linear-gradient(120deg,#55caff,#0561b6 45%,#ffde81 48%,#d18a17);color:transparent;background-clip:text;position:relative}.brand-symbol span{position:absolute;font:normal 19px Arial;color:#e6b14e;top:-5px;right:-10px}.brand-name{font:700 23px Georgia,serif;letter-spacing:1px;color:var(--gold);white-space:nowrap}.brand-name small{display:block;font:600 8px Arial;letter-spacing:2.1px;margin-top:4px;color:var(--gold)}nav{display:flex;align-items:center;gap:clamp(9px,1.2vw,24px)}nav a{font-size:12px;font-weight:600;white-space:nowrap}nav a:hover,.text-link:hover{color:var(--gold)}.header-actions{display:flex;align-items:center;gap:9px}.small-btn{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:10px;min-width:42px;height:39px;padding:0 10px}.theme-btn{font-size:25px}.mobile-menu{display:none}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:13px 20px;font-size:13px;font-weight:750;transition:transform .2s,filter .2s}.button:hover{transform:translateY(-2px);filter:brightness(1.1)}.gold{background:linear-gradient(115deg,#ffe5a0,#d69b2f);color:#061426}.outline{border:1px solid #e6b95c;background:#071b2dd9;color:#fff}.hero{position:relative;min-height:560px;background:linear-gradient(100deg,#061426 0%,#061426 40%,#071a30 100%);overflow:hidden;color:#fff}.hero-visual{position:absolute;inset:0 0 0 39%;background-image:linear-gradient(90deg,#061426 0%,#06142655 24%,transparent 65%),url('assets/globe.webp');background-position:center;background-size:cover;opacity:.88}.hero-inner{min-height:560px;display:flex;align-items:center;justify-content:space-between;position:relative;gap:20px}.hero-copy{width:min(680px,75%);padding:65px 0}.eyebrow{font-size:11px;letter-spacing:4px;font-weight:800;color:var(--gold);margin:0 0 17px}.hero h1{font:700 clamp(48px,6vw,100px)/.98 Georgia,serif;letter-spacing:-2px;margin:0;white-space:nowrap;text-shadow:0 2px 15px #0008}.hero h1 span{color:#efc66b}.signature{font:500 clamp(15px,2vw,26px) Georgia,serif;color:#f7d68b;letter-spacing:4px;margin:10px 0 23px}.hero-desc{max-width:570px;line-height:1.7;color:#e1eaf4;font-size:16px}.actions{display:flex;flex-wrap:wrap;gap:13px;margin:26px 0 32px}.pill-row{display:flex;flex-wrap:wrap;gap:18px;font-size:12px;color:#e3edf7}.pill-row>span{border:1px solid #e4b65b77;border-radius:40px;padding:9px 12px}.hero-side{align-self:center;display:grid;gap:16px}.hero-side>div{background:#04172b9c;border:1px solid #e6ba6b66;border-radius:10px;padding:12px 20px;min-width:135px}.hero-side b{display:block;font:700 30px Georgia;color:#f4ce7e}.hero-side span{font-size:11px}.section{padding:76px 0}.section-alt{background:var(--surface)}.section h2{font:700 clamp(30px,3.2vw,48px)/1.13 Georgia,serif;margin:0 0 15px}.section-sub{color:var(--muted);line-height:1.6;margin:0 0 28px}.companies{padding-top:58px}.company-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.company-card{position:relative;min-height:500px;border:1px solid #44617b;border-radius:13px;overflow:hidden;background:#082039;box-shadow:0 12px 30px #0002;color:#fff;transition:transform .2s,border-color .2s}.company-card:hover{transform:translateY(-5px);border-color:#d9b05d}.card-photo{position:absolute;inset:0;background-image:linear-gradient(180deg,#06142611 0%,#06142630 28%,#061426cc 58%,#061426 88%),var(--photo);background-size:cover;background-position:center}.card-content{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:500px;padding:18px}.card-logo{display:flex;align-items:center;gap:9px;min-height:68px;max-width:100%;filter:drop-shadow(0 2px 3px #0009)}.card-logo img{width:60px;height:60px;object-fit:contain}.card-logo strong{font:700 26px Georgia,serif;color:#fff}.card-logo small{display:block;font:700 9px Arial;letter-spacing:1px;color:#f7d589}.rse-brand img{width:195px;height:90px;object-fit:contain;object-position:left center}.rovaira-seal{display:grid;place-items:center;width:59px;height:59px;border:3px double #f4cb71;border-radius:50%;background:#0a3263;font:700 38px Georgia;color:#fff}.card-bottom h3{font:700 24px/1.15 Georgia,serif;margin:0 0 12px}.card-bottom p{font-size:13px;line-height:1.6;color:#e3edf5;min-height:66px}.tag-row{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0}.tag-row span{font-size:10px;border:1px solid #a4b6c577;border-radius:20px;padding:5px 8px;background:#0b264a88}.visit{border:1px solid #e9be69;border-radius:9px;display:flex;align-items:center;justify-content:space-between;gap:5px;padding:13px 10px;font-size:12px;background:#04182ccc}.visit:hover{background:#d7a74d;color:#051426}.visit b{font-size:12px;color:#f7d68b}.visit:hover b{color:#051426}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.two-col p:not(.eyebrow){color:var(--muted);font-size:16px;line-height:1.9}.text-link{display:inline-block;color:var(--gold);font-weight:700;margin-top:10px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:35px}.feature{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:26px}.feature>span{font-size:30px;color:var(--gold)}.feature h3{font-size:17px}.feature p{color:var(--muted);font-size:14px;line-height:1.7}.callout{text-align:center;max-width:860px}.callout p:not(.eyebrow){line-height:1.8;color:var(--muted)}.callout .button{margin-top:18px}.insight-links,.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:30px}.insight-links a,.contact-grid a{background:var(--surface2);border:1px solid var(--line);padding:21px 16px;border-radius:10px;font-weight:650;font-size:14px}.insight-links a:hover,.contact-grid a:hover{border-color:var(--gold);color:var(--gold)}.contact-grid a{display:flex;justify-content:space-between}.contact-grid span{color:var(--gold)}footer{background:#031020;color:#d9e4f0;padding:48px 0 20px}.footer-inner{display:flex;justify-content:space-between;gap:20px}.footer-brand{font:700 26px Georgia;color:#fff}.footer-brand span{color:#e8ba62}footer small{font-size:9px;letter-spacing:2px;color:#e8ba62}footer p{font-size:12px;color:#b6c6d8}.footer-links{display:flex;flex-wrap:wrap;gap:20px;font-size:13px}.footer-base{border-top:1px solid #314256;margin-top:30px;padding-top:20px;display:flex;justify-content:space-between;color:#9fb1c5;font-size:12px}@media(max-width:1260px){nav{gap:10px}nav a{font-size:11px}.header-contact{display:none}.brand-name{font-size:20px}.company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-card,.card-content{min-height:460px}}@media(max-width:950px){.mobile-menu{display:block;background:transparent;border:1px solid var(--line);border-radius:8px;color:var(--text);font-size:24px;padding:4px 10px;margin-left:auto}nav{display:none;position:absolute;top:75px;left:0;right:0;background:var(--nav);padding:20px 6%;box-shadow:0 20px 30px #0005;flex-direction:column;align-items:flex-start;gap:18px}nav.open{display:flex}.hero-side{display:none}.hero-copy{width:100%}.hero-visual{left:22%;opacity:.55}.feature-grid,.insight-links,.contact-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.container{width:calc(100% - 32px)}.header-inner{min-height:70px}.brand-symbol{font-size:44px}.brand-name{font-size:16px}.brand-name small{font-size:6px;letter-spacing:1px}.small-btn{min-width:35px;padding:0 7px;height:35px}.header-actions{gap:5px}.hero,.hero-inner{min-height:510px}.hero-copy{padding:55px 0}.hero h1{font-size:clamp(42px,10vw,63px)}.signature{font-size:14px;letter-spacing:1.8px}.hero-desc{font-size:14px}.eyebrow{letter-spacing:2px;font-size:10px}.company-grid,.feature-grid,.insight-links,.contact-grid,.two-col{grid-template-columns:1fr}.section{padding:52px 0}.company-card,.card-content{min-height:475px}.two-col{gap:8px}.footer-inner{flex-direction:column}.footer-links{gap:12px}.pill-row{gap:7px;font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Final brand treatment and accessible one-icon switch */
.brand-name{color:#f2c46c}.brand-raiko{color:#3bb6f5}.brand-group{color:#efc66b}
.theme-btn{width:42px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-color:#b38a48;border-radius:50%;font-size:24px;line-height:1}
.small-btn:focus-visible,a:focus-visible,.mobile-menu:focus-visible{outline:3px solid #f4c76b;outline-offset:3px}
body[data-theme=light] .brand-raiko{color:#1166ac}body[data-theme=light] .brand-group{color:#a56d10}
body[data-theme=light] .theme-btn{background:#fff}

/* FINAL REFINEMENTS: one moon/sun icon, whole-page light theme, original logos */
.brand-logo-img{width:63px;height:57px;object-fit:contain;flex:none;filter:drop-shadow(0 1px 4px #0003)}
.brand-name{font-size:21px}.brand-raiko{color:#21a8f1}.brand-group{color:#e9b64d}
.theme-btn{display:grid;place-items:center;width:43px;padding:0;border-radius:50%;font-size:25px;line-height:1}
.card-logo img{width:68px;height:66px;object-fit:contain;object-position:left center}
.rse-brand img{width:90px;height:62px;object-fit:contain}
body[data-theme=light]{--gold:#c08a26}
body[data-theme=light] .hero{background:linear-gradient(110deg,#f4f9ff 0%,#dcecff 70%,#fff);color:#0b2952}
body[data-theme=light] .hero-visual{background-image:linear-gradient(90deg,#f5faff 0%,#f5faffa8 27%,#f5faff00 80%),url('assets/globe.webp');opacity:.54;filter:saturate(1.18) brightness(1.65)}
body[data-theme=light] .hero h1{color:#0b326b;text-shadow:0 2px 10px #fff9}
body[data-theme=light] .hero h1 span{color:#c18a27}
body[data-theme=light] .signature{color:#946018}
body[data-theme=light] .hero-desc,body[data-theme=light] .pill-row{color:#19385b}
body[data-theme=light] .hero-side>div{background:#ffffffe0;border-color:#d7b26c;color:#183b65}
body[data-theme=light] .hero-side b{color:#b97e19}
body[data-theme=light] .pill-row>span{background:#ffffffb8}
body[data-theme=light] .company-card{background:#fff;color:#112b4e;border-color:#cdd9e8}
body[data-theme=light] .card-photo{background-image:linear-gradient(180deg,#ffffff22 0%,#ffffff44 27%,#ffffffe8 64%,#fff 91%),var(--photo)}
body[data-theme=light] .card-logo{filter:drop-shadow(0 1px 2px #fff)}
body[data-theme=light] .card-logo strong{color:#0b3167}
body[data-theme=light] .card-logo small{color:#95641b}
body[data-theme=light] .card-bottom p{color:#425872}
body[data-theme=light] .card-bottom h3{color:#12345b}
body[data-theme=light] .tag-row span{color:#13375d;border-color:#d7e2ed;background:#edf4fa}
body[data-theme=light] .company-card .text-link{color:#133d6d}
body[data-theme=light] .outline{background:#fff;color:#12345b;border-color:#bd8b30}
body[data-theme=light] .brand-name small{color:#9e731f}
body[data-theme=light] .brand-group{color:#b47a16}
@media(max-width:600px){.brand-logo-img{width:44px;height:43px}.brand-name{font-size:16px}.brand-name small{font-size:6px;letter-spacing:1px}.hero h1{white-space:normal}.hero-copy{width:100%}}

/* Contrast and polished company cards */
.company-card{isolation:isolate}
.company-card .card-content{gap:18px}
.company-card .card-bottom{margin-top:auto}
.company-card .visit{width:46px;height:43px;margin-left:auto;justify-content:center;padding:0;border:1px solid #e7bd68;background:#e9b952;color:#061426;box-shadow:0 4px 16px #0002}
.company-card .visit b{font-size:25px;line-height:1;color:#061426}
.company-card .visit:hover{background:#fff0bc;transform:translateY(-2px)}
.footer-brand{display:flex;align-items:center;gap:13px}
.footer-brand img{width:68px;height:55px;object-fit:contain}
.footer-brand span{font:700 23px Georgia,serif;color:#f7f8fc}
.footer-brand em{font-style:normal;color:#e8ba62}
body[data-theme=light] .hero{background:#f4f8fe;color:#0a2547}
body[data-theme=light] .hero-visual{opacity:.47;background-image:linear-gradient(90deg,#f4f8fe 0%,#f4f8feaa 38%,#f4f8fe22 100%),url('assets/globe.webp')}
body[data-theme=light] .hero-copy{background:linear-gradient(90deg,#f4f8fee8,#f4f8fe66 75%,transparent);border-radius:8px}
body[data-theme=light] .hero-desc{color:#143759;font-weight:550}
body[data-theme=light] .company-card{background:#fff;color:#0b2544;border:1px solid #ccd9e9;box-shadow:0 8px 28px #132e4b1a}
body[data-theme=light] .company-card .card-photo{background-image:linear-gradient(180deg,#ffffff05 0%,#ffffff20 23%,#ffffffd9 54%,#ffffff 74%),var(--photo)}
body[data-theme=light] .card-bottom{background:#ffffffec;border-radius:9px;padding:12px;margin:-12px}
body[data-theme=light] .card-bottom h3{color:#08284c;font-weight:700;text-shadow:none}
body[data-theme=light] .card-bottom p{color:#234260;font-weight:500}
body[data-theme=light] .tag-row span{background:#e9f1f9;color:#153656;border:1px solid #cbd8e7}
body[data-theme=light] .company-card .visit{background:#d49d34;color:#071e38;border-color:#ad761b}
body[data-theme=light] .company-card .visit b{color:#071e38}
body[data-theme=light] .card-logo{filter:drop-shadow(0 2px 3px #fff)}
body[data-theme=light] .card-logo strong{color:#082b54}
body[data-theme=light] .card-logo small{color:#78520e}
body[data-theme=light] .section-sub,body[data-theme=light] .two-col p:not(.eyebrow){color:#37516d}
body[data-theme=light] footer{background:#eaf1fa;color:#102b4b;border-top:1px solid #cbd9e8}
body[data-theme=light] .footer-brand span{color:#0b3267}
body[data-theme=light] footer small{color:#936117}
body[data-theme=light] footer p,body[data-theme=light] .footer-base{color:#35516c}
body[data-theme=light] .footer-base{border-color:#c7d5e6}
body[data-theme=light] .footer-brand em{color:#b57a19}
@media(max-width:600px){.footer-brand img{width:56px;height:47px}}

/* OCT 10 FINAL: Soft-light hero, photo stays recognizable, clear typography */
body[data-theme=light] .hero{background:linear-gradient(105deg,#e8f1fa 0%,#d8e8f6 58%,#eaf2fa 100%);color:#102b4b}
body[data-theme=light] .hero-visual{opacity:.96;filter:saturate(1.14) brightness(1.04) contrast(1.08);background-image:linear-gradient(90deg,#e8f1fa 0%,#e8f1faee 12%,#e8f1fa9c 31%,#e8f1fa20 57%,transparent 80%),url('assets/globe.webp');background-position:center center;background-size:cover}
body[data-theme=light] .hero-copy{background:none;position:relative;z-index:1}
body[data-theme=light] .hero h1{color:#123e74;text-shadow:0 2px 12px #e8f1fa}
body[data-theme=light] .hero-desc{color:#173958;text-shadow:0 1px 2px #eff6fd}
body[data-theme=light] .hero-side>div{background:#f5f9fbe8;color:#173958}
body[data-theme=light] .pill-row>span{background:#eaf3f7d9;color:#153758}
body[data-theme=light] .company-card .card-photo{background-image:linear-gradient(180deg,#ffffff08 0%,#ffffff1c 23%,#ffffffe5 67%,#fff 92%),var(--photo)}
body[data-theme=light] .company-card .card-bottom{background:#ffffffed}
body[data-theme=light] .visit{color:#081c33}
body[data-theme=light] .visit b{color:#081c33}
body[data-theme=light] .hero .outline{background:#ffffffde;color:#173958}
body[data-theme=light] .hero .gold{color:#09213d}
body[data-theme=light] .header{box-shadow:0 3px 18px #1d38531c}
body[data-theme=light] .footer-links a{color:#12375a}
@media(max-width:950px){body[data-theme=light] .hero-visual{background-image:linear-gradient(90deg,#e8f1fae6 0%,#e8f1fa9e 36%,#e8f1fa20 100%),url('assets/globe.webp')}}

/* FINAL premium photographic treatment and soft-light accessibility */
.company-card .card-photo{
 background-image:linear-gradient(180deg,rgba(2,14,31,.08) 0%,rgba(2,14,31,.18) 35%,rgba(2,14,31,.88) 70%,#061426 100%),var(--photo);
 background-position:center center;
}
body[data-theme=light] .hero-visual{
 opacity:.84 !important;filter:saturate(1.10) brightness(1.07) !important;
 background-image:linear-gradient(90deg,#f1f6fd 0%,rgba(241,246,253,.88) 19%,rgba(241,246,253,.28) 55%,rgba(241,246,253,.02) 100%),url('assets/globe.webp') !important;
}
body[data-theme=light] .hero-copy{background:linear-gradient(90deg,#f1f6fdeb,rgba(241,246,253,.58) 70%,transparent) !important}
body[data-theme=light] .company-card .card-photo{
 background-image:linear-gradient(180deg,rgba(255,255,255,.04) 0%,rgba(255,255,255,.08) 34%,rgba(255,255,255,.88) 70%,#fff 100%),var(--photo) !important;
}
body[data-theme=light] .card-bottom{background:rgba(255,255,255,.96)!important}
body[data-theme=light] .company-card .card-logo{background:rgba(255,255,255,.82);border-radius:10px;padding:5px;filter:none}
.company-card .visit:focus-visible,.small-btn:focus-visible,a:focus-visible{outline:3px solid #eab955;outline-offset:3px}

/* Clean images: logos and text are real HTML, never part of the background */
.company-card .card-photo{background-size:cover!important;background-position:center!important}
.company-card{isolation:isolate}
body[data-theme="light"] .company-card .card-photo{
background-image:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.22) 32%,rgba(255,255,255,.95) 78%,#fff 100%),var(--photo)!important}
body[data-theme="dark"] .company-card .card-photo{
background-image:linear-gradient(180deg,rgba(1,13,31,.05),rgba(1,13,31,.12) 28%,rgba(1,13,31,.91) 79%,#061426 100%),var(--photo)!important}

/* CARD IMAGE FIT V2: keep each scene's complete horizontal composition,
   instead of stretching a short landscape crop to fill a tall card. */
.company-card{height:510px;min-height:510px;display:block;background:#05192f}
.company-card .card-content{height:100%;min-height:0;position:relative;z-index:2;padding:19px;display:flex;flex-direction:column;justify-content:space-between}
.company-card .card-photo{
  position:absolute;top:0;left:0;right:0;bottom:0;
  background-image:linear-gradient(to bottom,rgba(2,13,29,.08) 0%,rgba(2,13,29,.04) 23%,rgba(2,13,29,.68) 49%,#05192f 72%),var(--photo)!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%,100% auto!important;
  background-position:top center,top center!important;
  filter:none!important;
}
.company-card .card-bottom{margin-top:auto;position:relative;z-index:2}
.company-card .card-logo{position:relative;z-index:3;align-self:flex-start;max-width:100%;background:rgba(4,22,43,.72);border:1px solid rgba(236,196,108,.26);padding:6px 10px;border-radius:10px;filter:none}
.company-card .card-logo img{width:55px;height:55px;object-fit:contain}
.company-card .card-logo strong{font-size:clamp(17px,1.6vw,23px)}
.company-card .card-bottom h3{font-size:clamp(20px,1.7vw,25px)}
.company-card .tag-row{margin-top:14px;margin-bottom:16px}
body[data-theme="light"] .company-card{background:#fff}
body[data-theme="light"] .company-card .card-photo{
  background-image:linear-gradient(to bottom,rgba(255,255,255,.02) 0%,rgba(255,255,255,.06) 24%,rgba(255,255,255,.75) 50%,#fff 74%),var(--photo)!important;
}
body[data-theme="light"] .company-card .card-logo{background:rgba(255,255,255,.92);border-color:#d6e0eb}
body[data-theme="light"] .company-card .card-logo strong{color:#0b315d!important}
body[data-theme="light"] .company-card .card-logo small{color:#9d6c1a!important}
body[data-theme="light"] .company-card .card-bottom{background:transparent!important;margin:0!important;padding:0!important}
@media(max-width:1260px){.company-card{height:490px;min-height:490px}}
@media(max-width:600px){.company-card{height:495px;min-height:495px}}


/* RAIKO four-company cards — refined photographic layout */
.company-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.company-card{height:560px;min-height:560px;position:relative;overflow:hidden;border-radius:20px;border:1px solid #46617e;background:#04152b!important;box-shadow:0 16px 38px rgba(0,0,0,.25);transition:transform .25s,border-color .25s,box-shadow .25s}
.company-card:hover{transform:translateY(-5px);border-color:#e6b757;box-shadow:0 18px 40px #0005}
.company-card .card-photo{position:absolute;inset:0;background-image:linear-gradient(to bottom,rgba(2,14,29,.07) 0%,rgba(2,14,29,.02) 32%,rgba(2,14,29,.26) 47%,rgba(2,14,29,.88) 70%,#04152b 91%),var(--photo)!important;background-size:100% 100%,auto 75%!important;background-position:center center,center top!important;background-repeat:no-repeat!important}
.company-card .card-content{height:100%;min-height:0;padding:18px 17px 16px;display:flex;flex-direction:column;justify-content:space-between;gap:12px}
.company-card .card-logo{align-self:flex-start;display:flex;gap:9px;align-items:center;max-width:100%;min-height:62px;padding:5px 8px;border:0;border-radius:12px;background:rgba(3,21,43,.40);backdrop-filter:blur(3px)}
.company-card .card-logo img{width:55px;height:55px;object-fit:contain;flex-shrink:0}
.company-card .card-logo strong{font:700 clamp(18px,1.6vw,25px)/1.04 Georgia,serif;color:#fff!important;text-shadow:0 2px 6px #000a}
.company-card .card-logo small{font:700 9px/1.5 Arial,sans-serif;letter-spacing:.8px;color:#f1c66c!important}
.company-card .rse-brand img{width:min(175px,100%);height:76px;object-fit:contain}
.company-card .card-bottom{margin-top:auto!important;padding:0!important;background:transparent!important;color:#fff!important}
.company-card .card-bottom h3{font:700 clamp(22px,1.85vw,30px)/1.12 Georgia,serif;color:#fff!important;margin:0 0 14px;text-shadow:0 2px 8px #0007}
.company-card .card-bottom p{font-size:14px;line-height:1.65;min-height:72px;color:#e7edf6!important;margin:0 0 12px}
.company-card .tag-row{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 10px}
.company-card .tag-row span{font-size:11px;line-height:1.2;border-radius:20px;border:1px solid #6482a1;background:rgba(4,26,53,.72);color:#f3f6fc!important;padding:7px 10px}
.company-card .visit{width:45px;height:43px;min-height:43px;margin-left:auto;display:flex;align-items:center;justify-content:center;border:0;border-radius:10px;background:linear-gradient(135deg,#ffe09a,#dfa83b)!important;color:#061426!important;box-shadow:0 5px 15px #0005}
.company-card .visit b{font-size:25px;color:#061426!important}
.company-card .visit:hover{background:#fff0b9!important;transform:translateY(-2px)}
/* Maintain readable card photos in both global themes. */
body[data-theme=light] .company-card{background:#04152b!important;border-color:#a6b5c9}
body[data-theme=light] .company-card .card-photo{background-image:linear-gradient(to bottom,rgba(2,14,29,.07) 0%,rgba(2,14,29,.02) 32%,rgba(2,14,29,.26) 47%,rgba(2,14,29,.88) 70%,#04152b 91%),var(--photo)!important}
body[data-theme=light] .company-card .card-logo{background:rgba(3,21,43,.45)!important;border:0!important}
body[data-theme=light] .company-card .card-logo strong{color:#fff!important}
body[data-theme=light] .company-card .card-logo small{color:#f1c66c!important}
body[data-theme=light] .company-card .tag-row span{background:rgba(4,26,53,.72)!important;border-color:#6482a1!important;color:#fff!important}
@media(max-width:1260px){.company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.company-card{height:550px;min-height:550px}.company-card .card-photo{background-size:100% 100%,auto 82%!important}}
@media(max-width:650px){.company-grid{grid-template-columns:1fr;gap:18px}.company-card{height:550px;min-height:550px}.company-card .card-photo{background-size:100% 100%,auto 78%!important}}

/* FINAL CARD LAYOUT: edge-to-edge cinematic imagery and a single click target. */
.company-grid{gap:18px;align-items:stretch}
.company-card{height:535px!important;min-height:535px!important;border-radius:19px!important;border:1px solid #405b79!important;cursor:pointer;isolation:isolate}
.company-card .card-photo{inset:0!important;background-image:linear-gradient(180deg,rgba(3,16,34,.06) 0%,rgba(3,16,34,.02) 36%,rgba(3,16,34,.35) 55%,rgba(3,16,34,.94) 78%,#04152b 100%),var(--photo)!important;background-size:100% 100%,cover!important;background-position:center center,center top!important;background-repeat:no-repeat!important;transform:none!important}
.company-card .card-content{height:100%!important;padding:18px 17px 16px!important;pointer-events:none}
.company-card .card-logo{background:rgba(5,22,43,.62)!important;max-width:100%;padding:6px 9px!important}
.company-card .card-bottom{margin-top:auto!important;pointer-events:none}
.company-card .card-bottom h3{font-size:clamp(21px,1.75vw,27px)!important;line-height:1.14!important}
.company-card .card-bottom p{min-height:68px!important;font-size:13px!important}
.company-card .tag-row{margin:9px 0 10px!important}
.company-card .visit{pointer-events:none;margin-left:auto!important}
.company-card .card-full-link{position:absolute;inset:0;z-index:10;display:block;border-radius:inherit;cursor:pointer}
.company-card .card-full-link:focus-visible{outline:4px solid #f6c966;outline-offset:-5px}
.company-card:hover .visit{background:#fff0b9!important;transform:translateY(-2px)}
body[data-theme=light] .company-card .card-photo{background-image:linear-gradient(180deg,rgba(3,16,34,.06) 0%,rgba(3,16,34,.02) 36%,rgba(3,16,34,.35) 55%,rgba(3,16,34,.94) 78%,#04152b 100%),var(--photo)!important}
@media(max-width:1260px){.company-card{height:545px!important;min-height:545px!important}}
@media(max-width:650px){.company-card{height:525px!important;min-height:525px!important}}


/* FINAL: true responsive photographic cards, no clipped text */
.company-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}
.company-card{height:570px!important;min-height:570px!important;display:flex!important;position:relative!important;overflow:hidden!important;background:#041326!important;border:1px solid #38516f!important;border-radius:20px!important;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease!important}
.company-card:hover,.company-card:focus-within{transform:translateY(-7px)!important;border-color:#eac05e!important;box-shadow:0 22px 45px #0008,0 0 0 1px #c99d42!important}
.company-card .card-photo{position:absolute!important;inset:0!important;background-image:linear-gradient(to bottom,rgba(2,13,29,.02) 0%,rgba(2,13,29,.03) 34%,rgba(2,13,29,.58) 55%,#041326 76%,#041326 100%),var(--photo)!important;background-size:100% 100%,100% auto!important;background-position:center top,center top!important;background-repeat:no-repeat!important;transform:none!important;filter:none!important}
.company-card .card-content{position:relative!important;z-index:2!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;width:100%!important;min-width:0!important;height:100%!important;padding:16px 17px 17px!important;pointer-events:none!important}
.company-card .card-logo{max-width:100%!important;min-width:0!important;display:flex!important;align-items:center!important;gap:9px!important;background:rgba(3,16,32,.58)!important;border:0!important;border-radius:12px!important;padding:6px 8px!important;backdrop-filter:blur(5px)}
.company-card .card-logo img{height:56px!important;width:56px!important;flex-shrink:0!important;object-fit:contain!important}
.company-card .card-logo strong{font:700 clamp(16px,1.45vw,23px)/1.1 Georgia,serif!important;color:white!important;overflow-wrap:anywhere!important}
.company-card .card-logo small{display:block!important;font:700 clamp(8px,.68vw,11px)/1.3 Arial,sans-serif!important;letter-spacing:.4px!important;color:#f5c86d!important;overflow-wrap:anywhere!important}
.company-card .rse-brand img{width:min(165px,100%)!important;height:65px!important;object-fit:contain!important}
.company-card .card-bottom{margin-top:auto!important;padding:0!important;background:transparent!important;min-width:0!important}
.company-card .card-bottom h3{font:700 clamp(22px,1.65vw,29px)/1.13 Georgia,serif!important;color:white!important;margin:0 0 12px!important;overflow-wrap:normal!important;word-break:normal!important;text-shadow:0 2px 7px #0009!important}
.company-card .card-bottom p{font:400 clamp(13px,.86vw,15px)/1.5 Arial,sans-serif!important;color:#e8eef6!important;margin:0 0 16px!important;min-height:68px!important;overflow-wrap:break-word!important}
.company-card .tag-row{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:0 0 13px!important;padding-right:0!important}
.company-card .tag-row span{font-size:clamp(10px,.7vw,12px)!important;white-space:normal!important;padding:7px 9px!important;color:#edf4ff!important;border:1px solid #456080!important;background:#061d36aa!important;border-radius:999px!important}
.company-card .visit{display:flex!important;align-items:center!important;justify-content:center!important;width:46px!important;height:46px!important;min-width:46px!important;border-radius:12px!important;background:linear-gradient(135deg,#ffe29a,#dba63c)!important;color:#08182a!important;margin-left:auto!important;box-shadow:0 5px 15px #0005!important}
.company-card .visit b{color:#08182a!important;font-size:27px!important}
.company-card .card-full-link{position:absolute!important;inset:0!important;z-index:10!important;border-radius:inherit!important;cursor:pointer!important}
.company-card .card-full-link:focus-visible{outline:4px solid #ffd26b!important;outline-offset:-5px!important}
body[data-theme=light] .company-card{background:#041326!important}
body[data-theme=light] .company-card .card-photo{background-image:linear-gradient(to bottom,rgba(2,13,29,.02) 0%,rgba(2,13,29,.03) 34%,rgba(2,13,29,.58) 55%,#041326 76%,#041326 100%),var(--photo)!important}
body[data-theme=light] .company-card .card-bottom,body[data-theme=light] .company-card .card-bottom h3{color:#fff!important}
body[data-theme=light] .company-card .card-bottom p{color:#e8eef6!important}
body[data-theme=light] .company-card .card-logo{background:rgba(3,16,32,.58)!important}
body[data-theme=light] .company-card .card-logo strong{color:white!important}
body[data-theme=light] .company-card .card-logo small{color:#f5c86d!important}
@media(max-width:1150px){.company-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.company-card{height:590px!important;min-height:590px!important}.company-card .card-bottom h3{font-size:28px!important}.company-card .card-bottom p{font-size:15px!important}}
@media(max-width:640px){.company-grid{grid-template-columns:1fr!important;gap:20px!important}.company-card{height:590px!important;min-height:590px!important}.company-card .card-content{padding:17px!important}.company-card .card-bottom h3{font-size:27px!important}.company-card .card-photo{background-size:100% 100%,100% auto!important}}


/* Full-width desktop layout: hero and every lower section share the same viewport scale */
:root{--page-gutter:clamp(18px,3.2vw,72px)}
.container{width:calc(100% - 2 * var(--page-gutter))!important;max-width:none!important;margin-inline:auto!important}
.header-inner,.hero-inner,.section>.container,footer .container{max-width:none!important}
.hero{min-height:clamp(560px,52vw,800px)}
.hero-inner{min-height:clamp(560px,52vw,800px)}
.hero-visual{inset:0 0 0 27%;background-size:cover;background-position:center center}
.hero-copy{width:min(740px,65%)}
.company-grid{width:100%!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:clamp(14px,1.3vw,24px)!important}
.company-card{min-width:0!important;width:100%!important;height:clamp(510px,39vw,700px)!important;min-height:510px!important}
.company-card .card-content{min-height:100%!important}
.company-card .card-bottom h3{overflow-wrap:break-word!important;word-break:normal!important;white-space:normal!important;font-size:clamp(21px,1.75vw,32px)!important}
.company-card .card-bottom p{overflow-wrap:break-word!important;white-space:normal!important;font-size:clamp(13px,.95vw,17px)!important}
.company-card .card-logo strong{font-size:clamp(17px,1.55vw,28px)!important}
.company-card .card-logo small{font-size:clamp(7px,.65vw,11px)!important}
@media(max-width:1100px){.company-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.company-card{height:600px!important}.hero-copy{width:min(700px,90%)}}
@media(max-width:650px){:root{--page-gutter:16px}.company-grid{grid-template-columns:1fr!important}.company-card{height:560px!important;min-height:560px!important}.hero,.hero-inner{min-height:540px}.hero-visual{inset:0;opacity:.42}.hero-copy{width:100%}.hero h1{white-space:normal}}


/* RAIKO GROUP 2026-10-10 — consolidated visual alignment fix */
:root { --page-gutter: clamp(18px, 3.15vw, 64px); }
html,body { width:100%; max-width:100%; overflow-x:clip; }
.container, .header-inner, .hero-inner, .section > .container, footer .container {
  box-sizing:border-box !important;
  width:calc(100% - 2 * var(--page-gutter)) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.companies .container { width:calc(100% - 2 * var(--page-gutter)) !important; }
.companies .section-top { width:100%; max-width:none; }
.company-grid {
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  width:100% !important;
  max-width:none !important;
  gap:clamp(12px,1.25vw,24px) !important;
  align-items:stretch;
}
.company-card {
  box-sizing:border-box !important;
  position:relative !important;
  width:100% !important;
  min-width:0 !important;
  height:clamp(490px,39vw,660px) !important;
  min-height:0 !important;
  overflow:hidden !important;
  border:1px solid rgba(118,157,195,.43) !important;
  border-radius:20px !important;
  background:#041428 !important;
  isolation:isolate;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.company-card:hover, .company-card:focus-within {
  transform:translateY(-5px);
  border-color:#e4b756 !important;
  box-shadow:0 15px 38px rgba(0,0,0,.32),0 0 0 1px rgba(240,193,93,.22);
}
.company-card .card-photo {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  background-image:linear-gradient(180deg,rgba(3,13,28,.04) 0%,rgba(3,13,28,.02) 36%,rgba(3,13,28,.48) 60%,#041428 88%),var(--photo) !important;
  background-repeat:no-repeat !important;
  background-position:center center !important;
  background-size:100% 100%,cover !important;
  transform:none !important;
}
.company-card .card-content {
  position:relative !important;
  z-index:2 !important;
  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:space-between !important;
  height:100% !important;
  min-height:0 !important;
  padding:clamp(14px,1.35vw,24px) !important;
}
.company-card .card-logo {max-width:100% !important;min-width:0 !important;}
.company-card .card-logo strong {font-size:clamp(17px,1.45vw,27px) !important;}
.company-card .card-logo small {font-size:clamp(8px,.62vw,11px) !important;}
.company-card .card-bottom {margin-top:auto !important;min-width:0 !important;}
.company-card .card-bottom h3 {
  font-size:clamp(20px,1.65vw,32px) !important;
  line-height:1.13 !important;
  margin:0 0 12px !important;
  white-space:normal !important;
  overflow-wrap:break-word !important;
}
.company-card .card-bottom p {
  font-size:clamp(12px,.92vw,17px) !important;
  line-height:1.5 !important;
  min-height:0 !important;
  margin:0 0 16px !important;
}
.company-card .tag-row {gap:6px !important; margin:0 0 12px !important;}
.company-card .tag-row span {font-size:clamp(10px,.66vw,12px) !important;padding:6px 8px !important;}
.company-card .visit {width:42px !important;height:42px !important;min-width:42px !important;}
.company-card .card-full-link {z-index:5 !important;}
.company-card .card-full-link:focus-visible {outline:3px solid #ffdb7b !important;outline-offset:-4px !important;}
@media(max-width:1100px){
  .company-grid {grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .company-card {height:clamp(490px,57vw,650px) !important;}
  .company-card .card-bottom h3 {font-size:clamp(23px,2.6vw,30px) !important;}
  .company-card .card-bottom p {font-size:clamp(13px,1.4vw,16px) !important;}
}
@media(max-width:640px){
  :root {--page-gutter:16px;}
  .company-grid {grid-template-columns:minmax(0,1fr) !important;gap:18px !important;}
  .company-card {height:560px !important;}
  .company-card .card-bottom h3 {font-size:27px !important;}
  .company-card .card-bottom p {font-size:15px !important;}
}
@media(prefers-reduced-motion:reduce){.company-card{transition:none !important}.company-card:hover{transform:none}}
