/* twelve31.com v7: Concept 3 (General Catalyst style) in the Twelve31 portal palette.
   Colors come from portal.twelve31.com (see PORTAL-COLORS.md). Fonts only in fonts.css. */
:root{--paper:#F5F1E8;--paper2:#EDE7DA;--card:#FFFDF8;--card2:#FBF8F1;--ink:#0D1626;--text:#384151;--mute:#6F6A60;--faint:#A8A196;--line:rgba(13,22,38,.09);--line2:rgba(13,22,38,.16);--navy:#0A1426;--navy2:#0F1C34;--navy8:#13223D;--cobalt:#1D2F52;--cobalt2:#2B4370;--accent:#4A6FE3;--gold:#C9B58E;--gold2:#E3D6BA;
--gut:clamp(16px,2.6vw,40px);--hh:76px;--r:6px;--ease:cubic-bezier(.2,.7,.2,1);
--grad:radial-gradient(700px 420px at 100% 0%,rgba(201,181,142,.22),transparent 60%),radial-gradient(640px 520px at -20% 110%,rgba(46,100,201,.35),transparent 62%),linear-gradient(160deg,#0A1426 0%,#0E1B33 60%,#172D57 100%)}
*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;overflow-x:clip;font-family:var(--font-body);font-size:17px;line-height:1.6;color:var(--text);background:var(--paper);-webkit-font-smoothing:antialiased}
body.lock{overflow:hidden}img,video,svg{display:block;max-width:100%}img{height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
h1,h2,h3,h4,p,dl,dd,figure,blockquote,ul,ol{margin:0}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);font-weight:700;letter-spacing:-.035em;line-height:1.05}
::selection{background:rgba(201,181,142,.45)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.skip{position:absolute;left:-999px;top:0}.skip:focus{left:12px;top:12px;z-index:300;background:#fff;padding:10px 14px}
.wrap{padding:0 var(--gut);max-width:1680px;margin:0 auto}.mute{color:var(--mute)}
.tag,.eyebrow,.lbl,dt,time,.no,.th,.wno,.hd-ph,.k,.d,.crumbs,figcaption,.cap,.chip,.n,.num{font-family:var(--font-mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:500}
.tag,.eyebrow{color:var(--cobalt);display:block}.dot{display:inline-block;width:8px;height:8px;background:var(--accent);border-radius:50%;margin-right:10px;vertical-align:1px}
svg{width:1em;height:1em;flex:none}.btn svg,.tlink svg{transition:transform .35s var(--ease)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:12px 22px;background:var(--navy);color:#fff;font-weight:700;font-size:15px;line-height:1.2;border-radius:var(--r);transition:background .3s,color .3s,box-shadow .3s;text-align:center}.btn:hover{background:var(--cobalt)}.btn:hover svg{transform:translateX(4px)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}.btn.ghost:hover{background:var(--ink);color:#fff}
.btn.lt{background:var(--card);color:var(--navy)}.btn.lt:hover{background:var(--gold2)}.btn.lnw{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.5)}.btn.lnw:hover{background:#fff;color:var(--navy)}
.tlink{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:15px;color:var(--ink);border-bottom:1.5px solid currentColor;padding-bottom:2px}.tlink:after{content:"\2192";transition:transform .35s var(--ease)}.tlink:hover{color:var(--cobalt2)}.tlink:hover:after{transform:translateX(4px)}
.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
/* header */
.hd{position:sticky;top:0;z-index:60;background:rgba(245,241,232,.94);backdrop-filter:saturate(1.2) blur(10px);box-shadow:0 1px 0 var(--line)}
.hd:before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--navy),#1E3566 60%,var(--gold))}
.hd-in{display:flex;align-items:center;gap:24px;height:var(--hh);padding:0 var(--gut);max-width:1680px;margin:0 auto}.logo{flex:none}.logo img{height:23px;width:auto}
.nav{display:flex;align-items:center;gap:2px;margin-left:auto;height:100%}.mm{height:100%;display:flex;align-items:center}
.mm>button,.nav-a{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:10px;font-weight:500;font-size:15px;color:var(--text);white-space:nowrap;transition:background .2s,color .2s}.mm>button:hover,.nav-a:hover{background:var(--paper2);color:var(--ink)}.mm.open>button{background:var(--navy);color:#fff}.nav-a[aria-current]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent);border-radius:0}
.mm>button svg{width:10px;height:10px;transition:transform .3s}.mm.open>button svg{transform:rotate(180deg)}
.mm-panel{position:absolute;left:0;right:0;top:100%;background:var(--card);border-top:1px solid var(--line);box-shadow:0 30px 50px -30px rgba(13,22,38,.3);visibility:hidden;opacity:0;transform:translateY(-8px);transition:opacity .3s var(--ease),transform .4s var(--ease),visibility 0s .4s}
.mm.open .mm-panel{visibility:visible;opacity:1;transform:none;transition-delay:0s}
.mm-in{display:grid;grid-template-columns:1.1fr 1.2fr 2fr;gap:44px;padding:40px var(--gut) 46px;max-width:1680px;margin:0 auto}.mm-intro .lbl,.mm-col .lbl{color:var(--mute);margin-bottom:12px}.mm-h{font-family:var(--font-display);font-size:30px;font-weight:700;letter-spacing:-.03em;line-height:1.08;color:var(--ink);margin-bottom:10px}.mm-d{color:var(--mute);font-size:15px}
.mm-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px}.mm-col a{display:block;padding:6px 0;font-size:17px;font-weight:500;color:var(--ink);transition:color .2s,transform .3s var(--ease)}.mm-col a:hover{color:var(--cobalt2);transform:translateX(4px)}
.mm-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mm-cards.n1{grid-template-columns:1fr}.mm-card .im{display:block;overflow:hidden;aspect-ratio:16/10;border-radius:var(--r)}.mm-cards.n1 .im{aspect-ratio:21/9}.mm-card img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.mm-card:hover img{transform:scale(1.05)}
.mm-card b{display:flex;align-items:center;gap:8px;margin-top:12px;color:var(--ink)}.mm-card>span:last-child{display:block;color:var(--mute);font-size:14px}
.mm-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:rgba(10,20,38,.32);opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s}.mm-scrim.on{opacity:1;visibility:visible;transition-delay:0s}
.hd-r{display:flex;align-items:center;gap:16px}.hd-ph{color:var(--text);white-space:nowrap}.hd-ph:hover{color:var(--ink)}.hd-cta{min-height:42px;padding:8px 18px;font-size:14px;white-space:nowrap}
.menu-btn{display:none;width:44px;height:44px;position:relative;color:var(--ink)}.menu-btn span,.menu-close span{position:absolute;left:11px;width:22px;height:1.5px;background:currentColor}.menu-btn span:first-child{top:18px}.menu-btn span:last-child{top:25px}
.menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;overflow-y:auto;background:var(--grad);color:#fff;padding:0 var(--gut) 36px;display:flex;flex-direction:column;visibility:hidden;opacity:0;transform:translateY(-10px);transition:opacity .35s,transform .45s var(--ease),visibility 0s .45s}
.menu.open{visibility:visible;opacity:1;transform:none;transition-delay:0s}.menu-top{display:flex;justify-content:space-between;align-items:center;min-height:64px}.menu-top img{height:21px;width:auto}.menu-close{width:44px;height:44px;position:relative;color:#fff}.menu-close span{top:21px;transform:rotate(45deg)}.menu-close span+span{transform:rotate(-45deg)}
.m-nav details,.m-top{display:block;border-bottom:1px solid rgba(255,255,255,.14)}.m-nav summary,.m-top{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;font-family:var(--font-display);font-size:30px;font-weight:700;letter-spacing:-.03em;padding:13px 0;color:#fff}.m-nav summary::-webkit-details-marker{display:none}.m-nav summary svg{width:12px;height:12px;transition:transform .3s}.m-nav details[open] summary svg{transform:rotate(180deg)}
.m-links{padding:0 0 14px}.m-links a{display:block;padding:8px 0;color:rgba(244,241,234,.82)}.m-photos{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px;margin:26px 0}.m-photos img{width:100%;height:120px;object-fit:cover;border-radius:var(--r)}
.menu-sub{display:flex;flex-direction:column;gap:14px;margin-top:auto}.menu-sub .links{display:flex;flex-direction:column;gap:6px;color:var(--gold2)}.menu-sub .links a:first-child{font-size:22px;font-weight:700;color:#fff}
/* motion */
.js .rv{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease),transform 1s var(--ease)}.js .rv.in{opacity:1;transform:none}
.rl{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}.js .rl>span{display:block;transform:translateY(105%);animation:rl 1.1s cubic-bezier(.16,.84,.24,1) .1s forwards}.rl:nth-child(2)>span{animation-delay:.2s}@keyframes rl{to{transform:none}}
.js .ci{clip-path:inset(10% 0 0 0);transition:clip-path 1.3s cubic-bezier(.16,.84,.24,1)}.js .ci.in{clip-path:inset(0)}
@media (prefers-reduced-motion:reduce){.js .rv,.js .rl>span,.js .ci{opacity:1;transform:none;animation:none;clip-path:none;transition:none}}
/* page head */
.ph{padding:clamp(40px,6vw,88px) 0 clamp(36px,4vw,56px)}.ph-g{display:grid;grid-template-columns:1.25fr 1fr;gap:40px;align-items:end}.ph-l{max-width:920px}.ph .tag{margin-bottom:22px}
.ph h1{font-size:clamp(42px,6vw,96px);line-height:.95;letter-spacing:-.05em}.ph .lead{margin-top:26px;font-size:clamp(18px,1.5vw,21px);max-width:52ch;color:var(--text)}
.ph-f{position:relative;aspect-ratio:5/4;overflow:hidden;border-radius:var(--r)}.ph-f img{width:100%;height:100%;object-fit:cover}
.crumbs{margin-bottom:18px;color:var(--mute)}.crumbs a:hover{color:var(--ink)}
/* generic sections */
.sec{padding:clamp(72px,8vw,128px) 0}.sec.tight{padding-top:24px}.sec.wrap{padding-left:var(--gut);padding-right:var(--gut)}.sec+.sec:not(.paper):not(.night):not(.dark):not(.wrap){padding-top:0}
.sec.paper{background:var(--paper2)}.sec h2{font-size:clamp(32px,3.8vw,58px);line-height:1;letter-spacing:-.045em;max-width:18ch}.sec .eyebrow{margin-bottom:18px}
.lead{font-size:clamp(18px,1.5vw,21px);line-height:1.5;color:var(--text)}.prose>*+*{margin-top:18px}.prose .lead{color:var(--ink)}.prose .btn,.prose .actions{margin-top:28px}
.split{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,5vw,80px);align-items:start}.split.rev>:first-child{order:2}.split.mid{align-items:center}.split.even{grid-template-columns:1fr 1fr}
.split h2+.prose,.split h2+.lead{margin-top:24px}.split .lead+.btn,.split .lead+p{margin-top:22px}
.media{overflow:hidden;border-radius:var(--r)}.media img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:transform 1.4s var(--ease)}.media:hover img{transform:scale(1.03)}.cap{color:var(--mute);margin-top:12px}
.big-line{font-family:var(--font-display);font-size:clamp(24px,2.3vw,34px);font-weight:700;letter-spacing:-.03em;line-height:1.15;color:var(--ink)}
.ticks{list-style:none;padding:0;border-top:1.5px solid var(--ink)}.ticks li{padding:16px 0 16px 36px;border-bottom:1px solid var(--line2);position:relative;font-size:18px;color:var(--ink)}.ticks li:before{content:"";position:absolute;left:4px;top:24px;width:14px;height:8px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
.note{margin-top:24px;color:var(--mute)}.note a,.prose a:not(.btn):not(.tlink),.lead a,.form-note a,p>a:not(.btn):not(.tlink){color:var(--cobalt);text-decoration:underline;text-underline-offset:3px}
.sec-head{margin-bottom:48px;max-width:900px}.sec-head.row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;max-width:none}.display em{font-style:normal;color:var(--cobalt2)}
/* navy bands (night / dark) */
.sec.night,.sec.dark{background:var(--grad);color:rgba(244,241,234,.86);position:relative;overflow:hidden}.sec.night .night-media{display:none}.sec.night h2,.sec.dark h2,.sec.night h3,.sec.dark h3,.sec.night b,.sec.dark b{color:#fff}.sec.night .eyebrow,.sec.dark .eyebrow{color:var(--gold2)}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tile{background:rgba(255,255,255,.05);border-radius:var(--r);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.t-im{display:block;aspect-ratio:5/4;overflow:hidden}.t-im img{width:100%;height:100%;object-fit:cover}.t-bd{display:flex;flex-direction:column;gap:6px;padding:22px}.t-bd .num{color:var(--gold2)}.t-bd b{font-family:var(--font-display);font-size:28px;letter-spacing:-.03em}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.pillar{padding:28px;border-radius:var(--r);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.pillar .n{color:var(--gold2);display:block;margin-bottom:16px}.pillar h3{font-size:24px;margin-bottom:10px}
.pillars.light{gap:0;border-top:1.5px solid var(--ink)}.pillars.light .pillar{background:none;box-shadow:none;border-bottom:1px solid var(--line2);border-radius:0;padding:22px 0;display:grid;grid-template-columns:60px 1fr;gap:12px}.pillars.light .pillar .n{color:var(--accent);margin:4px 0 0}.pillars.light>p{padding-top:20px}
/* criteria list */
.criteria{border-top:1.5px solid var(--ink);margin-top:14px}.crit{padding:16px 0;border-bottom:1px solid var(--line2)}.crit dt{color:var(--cobalt)}.crit dd{color:var(--ink);margin-top:4px}
.sticky{position:sticky;top:calc(var(--hh) + 24px)}
/* cards */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.card{display:flex;flex-direction:column;background:var(--card);border-radius:var(--r);overflow:hidden;box-shadow:0 1px 0 var(--line);transition:transform .5s var(--ease),box-shadow .5s}.card:hover{transform:translateY(-5px);box-shadow:0 20px 40px -24px rgba(13,22,38,.35)}
.card .im{aspect-ratio:3/2;overflow:hidden;background:var(--paper2)}.card .im img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.card:hover .im img{transform:scale(1.05)}
.card .bd{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1}.card .k{color:var(--cobalt)}.card h3{font-size:22px;line-height:1.2;letter-spacing:-.02em}.card .d{color:var(--mute);margin-top:auto}
.card.feature{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr}.card.feature .im{aspect-ratio:auto;min-height:380px}.card.feature .bd{padding:36px;justify-content:flex-end}.card.feature h3{font-size:clamp(28px,2.8vw,42px);letter-spacing:-.035em}
.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:9px 14px;border-radius:999px;box-shadow:inset 0 0 0 1px var(--line2);color:var(--text);transition:background .2s,color .2s}.chip:hover{background:var(--paper2)}.chip[aria-current]{background:var(--navy);color:#fff;box-shadow:none}
/* articles */
.art-top{padding:clamp(40px,6vw,80px) 0 36px}.article{max-width:820px;margin:0 auto}.article-head h1{font-size:clamp(36px,4.6vw,68px);line-height:1;letter-spacing:-.045em}.article-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:24px;color:var(--mute)}.article-meta time{margin-right:8px}
.article-img{max-width:1200px;margin:0 auto 56px;padding:0 var(--gut)}.article-img img{width:100%;border-radius:var(--r);max-height:640px;object-fit:cover}
.body{overflow-wrap:anywhere;font-size:18.5px;line-height:1.7;color:var(--text)}.body>*+*{margin-top:1.1em}.body h2{font-size:clamp(26px,2.4vw,34px);margin-top:1.8em;max-width:none}.body h3{font-size:22px;margin-top:1.6em}.body h4{font-size:18px;margin-top:1.4em}.body ul,.body ol{padding-left:1.3em}.body li+li{margin-top:.4em}.body strong{color:var(--ink)}
.body blockquote{border-left:3px solid var(--accent);padding:4px 0 4px 22px;font-size:22px;color:var(--ink)}.body img{border-radius:var(--r);margin:1.6em 0}.body table{width:100%;border-collapse:collapse;font-size:16px;display:block;overflow-x:auto}.body td,.body th{border-bottom:1px solid var(--line2);padding:10px 12px 10px 0;text-align:left;vertical-align:top}
.article-foot{display:flex;flex-wrap:wrap;gap:24px;margin-top:56px;padding-top:28px;border-top:1.5px solid var(--ink)}
.glossary dt{font-family:var(--font-display);font-size:20px;text-transform:none;letter-spacing:-.01em;color:var(--ink);font-weight:700;margin-top:24px}.glossary dd{margin-top:6px}.body h2[id]{scroll-margin-top:calc(var(--hh) + 20px);border-top:1.5px solid var(--ink);padding-top:16px}
/* portfolio */
.stories{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.story{position:relative;display:flex;flex-direction:column;background:rgba(255,255,255,.05);border-radius:var(--r);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.st-im{aspect-ratio:16/9;overflow:hidden}.st-im img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}.story:hover .st-im img{transform:scale(1.04)}
.st-logo{position:absolute;top:14px;left:14px;background:#fff;border-radius:4px;padding:10px 14px}.st-logo img{height:34px;width:auto}.st-bd{padding:22px 24px 26px;display:flex;flex-direction:column;gap:8px}.st-bd .k{color:var(--gold2)}.st-bd b{font-size:22px;line-height:1.25}
.logos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.logo-cell{background:var(--card);border-radius:var(--r);padding:14px;display:flex;flex-direction:column;gap:16px;transition:transform .5s var(--ease),box-shadow .4s}.logo-cell:hover{transform:translateY(-4px);box-shadow:0 20px 40px -26px rgba(13,22,38,.4)}
.logo-cell .lg{height:140px;background:#fff;border-radius:4px;display:flex;align-items:center;justify-content:center}.logo-cell .lg img{max-height:76px;max-width:60%;width:auto;object-fit:contain}.logo-cell .lg img.wide{max-width:72%}.logo-cell .meta{display:flex;justify-content:space-between;gap:12px;padding:0 4px 4px}.logo-cell .meta b{color:var(--ink)!important}.logo-cell .meta span{color:var(--mute);font-size:14px}
.footnote{margin-top:28px;color:var(--mute);font-size:14px;max-width:80ch}
/* quote */
.quote{display:grid;grid-template-columns:320px 1fr;gap:48px;align-items:center;max-width:1100px}.quote img{border-radius:var(--r);width:100%;aspect-ratio:3/4;object-fit:cover}.quote blockquote{font-family:var(--font-display);font-size:clamp(28px,3vw,46px);font-weight:700;letter-spacing:-.035em;line-height:1.1;color:var(--ink)}.quote figcaption{margin-top:22px;color:var(--mute)}.quote figcaption b{color:var(--ink)}
/* forms */
.form-card{background:var(--card);border-radius:12px;padding:clamp(22px,3vw,40px);box-shadow:0 1px 2px rgba(13,22,38,.04),0 10px 30px -10px rgba(13,22,38,.14)}.form-card h2{margin-bottom:22px}
.form fieldset{border:0;padding:0;margin:0 0 28px}.form legend{font-family:var(--font-mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--cobalt);padding:0 0 12px;border-bottom:1.5px solid var(--ink);width:100%;margin-bottom:18px}
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px;min-width:0}.field label{font-weight:700;font-size:14px;color:var(--ink);display:flex;justify-content:space-between;gap:10px}.opt{font-weight:400;color:var(--faint);font-size:13px}
.field input,.field select,.field textarea{font:inherit;font-size:16px;color:var(--ink);background:#fff;border:1px solid var(--line2);border-radius:10px;padding:12px 14px;min-height:48px;width:100%;transition:border-color .2s,box-shadow .2s}.field textarea{min-height:120px;resize:vertical}.field :focus{outline:0;border-color:var(--cobalt);box-shadow:0 0 0 4px rgba(13,22,38,.10)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.row3{display:grid;grid-template-columns:2fr 1.2fr 1fr;gap:0 14px}.form .actions{margin-top:8px}.form-note{margin-top:16px;font-size:14px;color:var(--mute)}
.alert{display:none;background:rgba(176,74,51,.10);color:#B04A33;border-radius:10px;padding:12px 14px;margin-bottom:16px;font-weight:500}.alert.show{display:block}.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.contact-list{list-style:none;padding:0;border-top:1.5px solid var(--ink)}.contact-list li{display:flex;flex-direction:column;gap:6px;padding:18px 0;border-bottom:1px solid var(--line2)}.contact-list .k{color:var(--mute)}.contact-list a{font-family:var(--font-display);font-size:clamp(22px,2vw,28px);font-weight:700;letter-spacing:-.025em;color:var(--ink)}.contact-list a:hover{color:var(--cobalt2)}
/* sign in */
.sis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.si{display:flex;flex-direction:column;gap:10px;background:var(--card);border-radius:var(--r);padding:24px;min-height:220px;transition:transform .5s var(--ease),background .3s}.si:hover{transform:translateY(-4px);background:#fff}.si b{font-family:var(--font-display);font-size:26px;color:var(--ink);letter-spacing:-.03em}.si .tlink{margin-top:auto;align-self:flex-start}
/* home */
.hero{padding-top:28px}.hg{display:grid;grid-template-columns:1.55fr 1fr .52fr;gap:24px;align-items:stretch}.hl{display:flex;flex-direction:column;justify-content:space-between;gap:28px}
.hero h1{font-size:clamp(50px,7.4vw,124px);line-height:.92;letter-spacing:-.05em;margin:0 0 26px}.hero h1 i{font-style:normal;color:var(--accent)}.sub{font-size:19px;line-height:1.45;max-width:44ch;margin-bottom:26px}
.hf{position:relative;height:calc(100svh - var(--hh) - 120px);min-height:500px;max-height:760px;overflow:hidden;border-radius:var(--r);background:var(--navy)}.hf img,.hf video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.hf video{opacity:0;transition:opacity 1.2s}.hf video.on{opacity:1}.hf figcaption{position:absolute;left:14px;bottom:12px;color:#fff;z-index:2}.hf:after{content:"";position:absolute;top:auto;right:0;bottom:0;left:0;height:30%;background:linear-gradient(transparent,rgba(10,20,38,.55))}
.rail{display:flex;flex-direction:column;justify-content:flex-end}.rail div{padding:16px 0 18px;border-top:1px solid var(--line2)}.rail div:first-child{border-top:1.5px solid var(--ink)}.rail dt{color:var(--mute)}.rail dd{font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.15;margin-top:12px;color:var(--ink)}.rail a:hover{color:var(--cobalt2)}
.bento{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:clamp(150px,13vw,210px);gap:12px;margin-top:clamp(64px,8vw,120px)}.bento figure{position:relative;overflow:hidden;border-radius:var(--r)}.bi,.bi picture{position:absolute;top:0;right:0;bottom:0;left:0}.bi img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}.bento figure:hover img{transform:scale(1.05)}.bento figcaption{position:absolute;left:12px;bottom:10px;color:#fff;z-index:2;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.b1{grid-column:1/6;grid-row:span 3}.b2{grid-column:6/9;grid-row:span 2}.b3{grid-column:9/13;grid-row:span 2}.b4{grid-column:6/9;grid-row:span 1}.b5{grid-column:9/13;grid-row:span 1}
.bq{grid-column:1/13;display:grid;grid-template-columns:5fr 7fr;align-items:end;gap:12px;padding:28px 0 0}.bq .tag{grid-column:1/-1}.bq .tlink{justify-self:end}
.h2{font-size:clamp(34px,4.4vw,70px)!important;line-height:.98;letter-spacing:-.045em;max-width:17ch}
.ab{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.ab-l{grid-column:1/5}.ab-r{grid-column:5/12}.big{font-family:var(--font-display);font-size:clamp(24px,2.4vw,36px);line-height:1.25;letter-spacing:-.02em;font-weight:500;color:var(--ink);margin-bottom:28px}.ab-r p:last-child{color:var(--mute);max-width:60ch}
.shd{display:grid;grid-template-columns:1fr 1fr;gap:16px 48px;align-items:end;margin-bottom:56px}.shd .tag{grid-column:1/-1}.shd .mute{max-width:46ch;font-size:18px}.shd.row{display:flex;justify-content:space-between}.shd.row .tag{margin-bottom:16px}
.tbl{border-top:1.5px solid var(--ink);margin-bottom:40px}.tr{display:grid;grid-template-columns:1fr 3fr 6fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line2);align-items:baseline;transition:background .3s,padding .4s var(--ease)}.tr:not(.th):hover{background:var(--card);padding-left:14px}.th{color:var(--mute);padding:12px 0}.tr b{font-family:var(--font-display);font-size:clamp(24px,2.2vw,32px);letter-spacing:-.03em;color:var(--ink)}.tr span:last-child{font-size:18px}.no{color:var(--accent)}
.w3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.wc{background:var(--card);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;transition:transform .5s var(--ease)}.wc:hover{transform:translateY(-6px)}.wi{position:relative;aspect-ratio:5/4;overflow:hidden;display:block}.wi img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s}.wc:hover .wi img{transform:scale(1.05)}.wno{position:absolute;top:12px;left:12px;background:var(--paper);color:var(--ink);padding:5px 9px;border-radius:3px}
.wb{padding:24px 24px 26px;display:flex;flex-direction:column;gap:10px;flex:1}.wb b{font-family:var(--font-display);font-size:32px;letter-spacing:-.04em;color:var(--ink)}.wb>span:nth-child(2){color:var(--mute)}.wb .tlink{margin-top:auto;align-self:flex-start}
.pg{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.pc{background:var(--card);border-radius:var(--r);padding:14px;display:flex;flex-direction:column;gap:16px;transition:background .3s,transform .5s var(--ease)}.pc:hover{background:#fff;transform:translateY(-4px)}.pc .pl{height:130px;background:#fff;border-radius:4px;display:flex;align-items:center;justify-content:center}.pc .pl img{max-height:70px;max-width:76%;object-fit:contain}.pm b{display:block;font-size:15px;color:var(--ink)}.pm span{color:var(--mute);font-size:13px}
.adv{display:grid;grid-template-columns:1fr 1fr;margin-top:12px;background:var(--grad);color:#fff;border-radius:var(--r);overflow:hidden}.ai{position:relative;min-height:340px;overflow:hidden}.ai picture,.ai img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s}.adv:hover .ai img{transform:scale(1.04)}.ab2{padding:40px;display:flex;flex-direction:column;gap:16px;justify-content:flex-end}.ab2 .tag{color:var(--gold2)}.ab2 b{font-family:var(--font-display);font-size:clamp(24px,2.4vw,34px);line-height:1.15;letter-spacing:-.03em;max-width:26ch}.adv .tlink{color:#fff;align-self:flex-start}
.mag{display:grid;grid-template-columns:1.1fr 1fr;gap:40px}.mg-l{display:flex;flex-direction:column;gap:12px}.mi{aspect-ratio:3/2;overflow:hidden;border-radius:var(--r);display:block;margin-bottom:8px}.mi img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s}.mg-l:hover img{transform:scale(1.04)}.mg-l b{font-family:var(--font-display);font-size:clamp(26px,2.4vw,36px);line-height:1.1;letter-spacing:-.035em;max-width:24ch;color:var(--ink)}.mg-l .tlink{align-self:flex-start}
.mg-r{border-top:1.5px solid var(--ink)}.mr{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line2);align-items:center}.mt{aspect-ratio:4/3;overflow:hidden;border-radius:4px;background:var(--paper2)}.mt img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.mr:hover img{transform:scale(1.07)}.mr time{color:var(--mute);display:block;margin-bottom:6px}.mr b{font-size:19px;line-height:1.25;color:var(--ink)}.mr:hover b{color:var(--cobalt2)}
/* cta + footer */
.cta{background:var(--grad);color:#fff;padding:clamp(64px,7vw,110px) 0}.cta .tag{color:var(--gold2)}.cg{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:center}.phone{display:block;font-family:var(--font-display);font-weight:700;font-size:clamp(50px,8.4vw,140px);letter-spacing:-.055em;line-height:.92;margin:18px 0 22px;color:#fff}.phone:hover{color:var(--gold2)}.cl>p:not(.tag){font-size:19px;max-width:44ch;margin-bottom:30px;color:rgba(244,241,234,.82)}
.cf{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:var(--r)}.cf img{width:100%;height:100%;object-fit:cover}.cf figcaption{position:absolute;left:14px;bottom:12px;right:14px;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.6)}
.ft{background:var(--navy);color:rgba(244,241,234,.7);padding:80px 0 32px}.ft-top{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.12)}.ft-logo{height:26px;width:auto}.ft-tag{font-family:var(--font-display);font-size:clamp(28px,3.4vw,54px);font-weight:700;letter-spacing:-.045em;color:#fff}
.ft-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;padding:44px 0 56px}.ft-grid a{display:block;color:rgba(244,241,234,.78);padding:3px 0;font-size:15px}.ft-grid a:hover{color:#fff}.ft .lbl{color:var(--gold2);margin-bottom:12px}.ft .lbl.sp{margin-top:22px}.ft-adv p:not(.lbl){font-size:15px}
.social{display:flex;gap:10px;margin-top:16px}.social a{width:38px;height:38px;display:flex!important;align-items:center;justify-content:center;border-radius:10px;background:rgba(255,255,255,.07);padding:0!important}.social svg{width:16px;height:16px;fill:currentColor}
.ft-bot{display:flex;flex-wrap:wrap;gap:12px 24px;color:rgba(244,241,234,.5);font-size:13px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12)}.ft-bot span{margin-right:auto}.ft-bot nav{display:flex;flex-wrap:wrap;gap:20px}.ft-bot a:hover{color:#fff}
/* responsive */
@media (max-width:1180px){.hd-ph{display:none}}
@media (max-width:1100px){:root{--hh:64px}.nav,.hd-cta{display:none}.menu-btn{display:block}.hd-r{margin-left:auto}.hg{grid-template-columns:1fr 1fr}.rail{grid-column:1/-1;flex-direction:row}.rail div{flex:1;padding-right:16px}.pg{grid-template-columns:repeat(3,1fr)}.sis{grid-template-columns:1fr 1fr}.ft-grid{grid-template-columns:repeat(3,1fr)}.mm-panel{display:none}}
@media (max-width:900px){.split,.split.even{grid-template-columns:1fr}.split.rev>:first-child{order:0}.tiles,.pillars,.cards{grid-template-columns:1fr 1fr}.card.feature{grid-template-columns:1fr}.card.feature .im{min-height:0;aspect-ratio:3/2}.stories{grid-template-columns:1fr}.quote{grid-template-columns:200px 1fr;gap:28px}.ph-g{grid-template-columns:1fr}.ph-f{aspect-ratio:16/9}.sticky{position:static}}
@media (max-width:760px){.hero{padding-top:20px}.hg{grid-template-columns:1fr;gap:20px}.hero h1{margin:0 0 20px;font-size:clamp(44px,14.2vw,80px)}.sub{font-size:18px;margin-bottom:22px}.hf{height:auto;min-height:0;aspect-ratio:4/5}.rail{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.rail dd{font-size:18px;margin-top:6px}
.bento{grid-template-columns:1fr 1fr;grid-auto-rows:140px;gap:8px}.b1{grid-column:1/3;grid-row:span 2}.b2{grid-column:1;grid-row:span 2}.b3{grid-column:2;grid-row:span 1}.b4{grid-column:2;grid-row:span 1}.b5{grid-column:1/3;grid-row:span 1}.bq{grid-template-columns:1fr}.bq .tlink{justify-self:start}
.ab{display:block}.ab-l{margin-bottom:16px}.shd{grid-template-columns:1fr;margin-bottom:36px}.shd.row,.sec-head.row{flex-direction:column;align-items:flex-start;gap:16px}.tr{grid-template-columns:44px 1fr;gap:6px 12px;padding:18px 0}.tr span:last-child{grid-column:2;font-size:16px}.th{display:none}.tr:not(.th):hover{padding-left:0}
.w3,.tiles,.pillars,.cards,.logos{grid-template-columns:1fr}.logos{grid-template-columns:1fr 1fr;gap:8px}.logo-cell .lg{height:96px}.logo-cell .meta{flex-direction:column;gap:2px}.pg{grid-template-columns:1fr 1fr;gap:8px}.pc .pl{height:96px}.adv{grid-template-columns:1fr}.ai{min-height:220px}.ab2{padding:24px}.mag{grid-template-columns:1fr;gap:28px}.mr{grid-template-columns:96px 1fr;gap:14px}.mr b{font-size:16px}
.cg{grid-template-columns:1fr;gap:36px}.ft-top{flex-direction:column;align-items:flex-start}.ft-grid{grid-template-columns:1fr 1fr;gap:32px 16px}.ft-bot span{width:100%}.row2,.row3{grid-template-columns:1fr}.quote{grid-template-columns:1fr}.quote img{max-width:240px}.sis{grid-template-columns:1fr}.card.feature .bd{padding:22px}.body{font-size:17.5px}.ph h1{font-size:clamp(38px,11vw,64px)}}
/* v7b home */
.h7-hero{position:relative;background:var(--navy);color:#fff;overflow:hidden}
.h7-slides{position:absolute;top:0;right:0;bottom:0;left:0}.h7-s{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;animation:h7f 21s infinite}.h7-s picture,.h7-s img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.h7-s img{animation:h7z 21s infinite}
.h7-s.s0{animation-delay:0s}.h7-s.s1{animation-delay:7s}.h7-s.s1 img{animation-delay:7s}.h7-s.s2{animation-delay:14s}.h7-s.s2 img{animation-delay:14s}
@keyframes h7f{0%{opacity:0}5%{opacity:1}33%{opacity:1}39%{opacity:0}100%{opacity:0}}@keyframes h7z{0%{transform:scale(1.08)}40%{transform:scale(1)}100%{transform:scale(1)}}
.h7-s figcaption{position:absolute;right:var(--gut);bottom:calc(var(--pathh,190px) + 22px);z-index:3;color:rgba(255,255,255,.85);font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase}
.h7-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(90deg,rgba(10,20,38,.92) 0%,rgba(10,20,38,.7) 40%,rgba(10,20,38,.15) 78%),linear-gradient(0deg,rgba(10,20,38,.85) 0%,rgba(10,20,38,0) 40%)}
.h7-in{position:relative;z-index:2;min-height:calc(100svh - var(--hh) - 196px);display:flex;flex-direction:column;justify-content:flex-end;padding-top:80px;padding-bottom:48px}.h7-in .tag{color:var(--gold2);margin-bottom:22px}
.h7-hero h1{color:#fff;font-size:clamp(54px,9.6vw,164px);line-height:.9;letter-spacing:-.055em}.h7-hero h1 i{font-style:normal;color:var(--accent)}.h7-sub{font-size:clamp(19px,1.8vw,24px);margin-top:22px;color:rgba(244,241,234,.9);max-width:30ch}
.h7-paths{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-bottom:var(--gut)}
.h7-p{display:grid;grid-template-columns:1fr auto;align-items:end;gap:6px 24px;background:var(--card);color:var(--text);border-radius:var(--r);padding:20px 24px;transition:transform .5s var(--ease),background .3s}.h7-p:hover{transform:translateY(-4px)}.h7-p .tag{grid-column:1/-1}.h7-p b{font-family:var(--font-display);font-size:clamp(24px,2.1vw,32px);letter-spacing:-.04em;color:var(--ink);line-height:1.05}.h7-p>span:nth-child(3){grid-column:1;color:var(--mute)}
.h7-go{grid-column:2;grid-row:2/4;align-self:end;display:inline-flex;align-items:center;gap:10px;font-weight:700;color:var(--ink);white-space:nowrap}.h7-p:hover .h7-go svg{transform:translateX(4px)}
.h7-p.dk{background:var(--grad);color:rgba(244,241,234,.8);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}.h7-p.dk b,.h7-p.dk .h7-go{color:#fff}.h7-p.dk .tag{color:var(--gold2)}.h7-p.dk>span:nth-child(3){color:rgba(244,241,234,.75)}
.t7s{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.t7{position:relative;display:block;aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;background:var(--navy);color:#fff}
.t7-im,.t7-im picture{position:absolute;top:0;right:0;bottom:0;left:0}.t7-im img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}.t7:hover .t7-im img{transform:scale(1.05)}
.t7-logo{background:var(--grad);display:flex!important;align-items:center;justify-content:center;padding-bottom:30%}.t7-logo img{width:auto!important;height:auto!important;max-width:58%;max-height:110px;object-fit:contain;background:#fff;border-radius:6px;padding:18px 22px}
.t7:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,rgba(10,20,38,.96) 0%,rgba(10,20,38,.8) 26%,rgba(10,20,38,.2) 52%,rgba(10,20,38,0) 64%)}
.t7-bd{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:24px;display:flex;flex-direction:column;gap:6px}.t7-bd .tag{color:var(--gold2)}.t7-bd b{font-family:var(--font-display);font-size:clamp(24px,2.2vw,32px);letter-spacing:-.035em;line-height:1.05}.t7-d{color:rgba(244,241,234,.85);font-size:16px;max-width:34ch}
.t7-go{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px;margin-top:8px;color:#fff}.t7:hover .t7-go svg{transform:translateX(4px)}.h7-fine{margin-top:16px;color:var(--mute);font-size:14px}
.h7-note{background:var(--paper2)}.h7-ng{display:grid;grid-template-columns:minmax(220px,380px) 1fr;gap:clamp(32px,6vw,96px);align-items:center}.h7-chris img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--r)}.h7-chris figcaption{margin-top:14px;color:var(--mute)}.h7-chris b{color:var(--ink)}
.h7-nt blockquote{font-family:var(--font-display);font-size:clamp(30px,3.6vw,56px);font-weight:700;letter-spacing:-.04em;line-height:1.05;color:var(--ink);margin:18px 0 26px;max-width:22ch}.h7-lx{font-size:clamp(18px,1.5vw,21px);color:var(--text);max-width:52ch;margin-bottom:22px}.h7-lx span{display:block;margin-top:8px;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.h7-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px;border-top:1.5px solid var(--ink)}.h7-facts div{padding-top:16px}.h7-facts dt{color:var(--mute)}.h7-facts dd{font-family:var(--font-display);font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--ink);margin-top:10px;line-height:1.15}
.adv{margin-top:72px}.adv.solo{grid-template-columns:1fr}.adv.solo .ab2{padding:clamp(28px,4vw,56px);flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px 48px}.adv.solo .ab2 .tag{width:100%}.adv.solo .ab2 b{max-width:34ch}
@media (max-width:1100px){.t7s{grid-template-columns:1fr 1fr}.h7-facts{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.h7-in{min-height:62svh;padding-bottom:28px}.h7-hero h1{font-size:clamp(46px,14.6vw,90px)}.h7-paths{grid-template-columns:1fr;gap:8px}.h7-p{grid-template-columns:1fr;padding:20px}.h7-go{grid-column:1;grid-row:auto;margin-top:6px}.h7-s figcaption{display:none}
.t7s{grid-template-columns:1fr}.t7{aspect-ratio:4/4.4}.h7-ng{grid-template-columns:1fr}.h7-chris{max-width:260px}.h7-facts{grid-template-columns:1fr 1fr}.h7-hero:before{background:linear-gradient(0deg,rgba(10,20,38,.92) 0%,rgba(10,20,38,.55) 55%,rgba(10,20,38,.35) 100%)}}
@media (prefers-reduced-motion:reduce){.h7-s,.h7-s img{animation:none}.h7-s.s0{opacity:1}}
.phone.mail{font-size:clamp(28px,4.4vw,68px);letter-spacing:-.04em;line-height:1.05;overflow-wrap:anywhere}


/* v8: JS slider (touch + dots); CSS animation is the no-JS fallback */
.h7-js .h7-s,.h7-js .h7-s img{animation:none}.h7-js .h7-s{opacity:0;transition:opacity 1.2s ease}.h7-js .h7-s.on{opacity:1;z-index:1}.h7-js .h7-s img{transform:scale(1.06);transition:transform 7.5s ease-out}.h7-js .h7-s.on img{transform:scale(1)}
.h7-slides{touch-action:pan-y}.h7-dots{position:absolute;z-index:3;right:var(--gut);top:calc(var(--hh) + 18px);display:flex;gap:8px}.h7-dots[hidden]{display:none}.h7-dots button{width:34px;height:4px;padding:0;border:0;border-radius:2px;background:rgba(255,255,255,.4);cursor:pointer;position:relative}.h7-dots button:before{content:"";position:absolute;left:0;right:0;top:-14px;bottom:-14px}.h7-dots button.on{background:#fff}
@media (max-width:760px){.h7-dots{top:16px}}
@media (prefers-reduced-motion:reduce){.h7-js .h7-s,.h7-js .h7-s img{transition:none;transform:none}}
/* v8: tablet hero (iPad portrait/landscape) */
@media (min-width:761px) and (max-width:1100px){.h7-p{grid-template-columns:1fr;padding:20px 22px}.h7-go{grid-column:1;grid-row:auto;margin-top:6px}}
@media (min-width:761px) and (max-width:1100px) and (orientation:portrait){.h7-in{min-height:calc(100svh - var(--hh) - 360px)}.h7-hero:before{background:linear-gradient(0deg,rgba(10,20,38,.94) 0%,rgba(10,20,38,.6) 50%,rgba(10,20,38,.25) 100%)}}
@media (min-width:761px) and (max-height:900px) and (orientation:landscape){.h7-in{min-height:calc(100svh - var(--hh) - 230px);padding-top:56px}}
/* v8b: hero legibility, caption placement, tile crops */
.h7-s figcaption{top:calc(var(--hh) + 54px);bottom:auto;right:var(--gut);text-align:right;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.h7-hero h1,.h7-sub{text-shadow:0 2px 24px rgba(10,20,38,.55)}
.h7-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:75%;z-index:1;pointer-events:none;background:linear-gradient(0deg,rgba(10,20,38,.9) 0%,rgba(10,20,38,.72) 45%,rgba(10,20,38,0) 100%)}
@media (min-width:761px) and (max-width:1100px) and (orientation:portrait){.h7-hero:after{height:85%;background:linear-gradient(0deg,rgba(10,20,38,.96) 0%,rgba(10,20,38,.86) 50%,rgba(10,20,38,.5) 75%,rgba(10,20,38,0) 100%)}}
@media (max-width:760px){.h7-hero:after{height:85%;background:linear-gradient(0deg,rgba(10,20,38,.95) 0%,rgba(10,20,38,.8) 50%,rgba(10,20,38,0) 100%)}}
.t7 img[src*="ai-dental-visit"]{object-position:82% 30%}
.t7 img[src*="ai-software-team"]{object-position:48% 40%}
/* v8c: bright photos */
.t7 img[src*="ai-production-line-bright"]{object-position:100% 50%}
.t7 img[src*="ai-spice-blending-bright"]{object-position:90% 50%}
.h7-s img[src*="ai-production-line-bright"]{object-position:70% 50%}
.h7-hero:before{background:linear-gradient(90deg,rgba(10,20,38,.93) 0%,rgba(10,20,38,.84) 34%,rgba(10,20,38,.45) 60%,rgba(10,20,38,.06) 84%),linear-gradient(0deg,rgba(10,20,38,.85) 0%,rgba(10,20,38,0) 40%)}
@media (max-width:1100px) and (orientation:portrait){.h7-hero:before{background:linear-gradient(0deg,rgba(10,20,38,.94) 0%,rgba(10,20,38,.7) 50%,rgba(10,20,38,.35) 100%)}}
.t7 img[src*="ai-spice-packing-bright"]{object-position:90% 50%}
@media (max-width:1100px) and (orientation:portrait){.h7-s img[src*="ai-production-line-bright"]{object-position:100% 50%}}
@media (max-width:760px){.h7-s img[src*="ai-production-line-bright"]{object-position:100% 50%}}
