/* Services concept v1. Every rule is scoped to the isolated preview. */
body.oddb-services-preview{background:#20211f;color:#20211f}
body.oddb-services-preview .oddb-header{position:fixed;background:transparent!important;box-shadow:none;height:72px;z-index:100}
.sv-page{--sv-paper:#f5f3ec;--sv-blue:#263fe5;--sv-ink:#20211f;font-family:Arial,Helvetica,sans-serif;color:var(--sv-ink);background:#20211f;padding:80px 8px 8px}
.sv-page *{box-sizing:border-box}.sv-page a{color:inherit}.sv-page a:focus-visible{outline:2px solid currentColor;outline-offset:-5px}
.sv-page .sv-label{font:10px/1.5 'Courier New',monospace;letter-spacing:.03em;text-transform:uppercase;margin:0;color:var(--sv-blue)}
.sv-page h2{font:400 clamp(32px,2.9vw,48px)/1.04 Arial,Helvetica,sans-serif;letter-spacing:-.03em;margin:28px 0 24px}.sv-page h2 em{font-family:Georgia,serif;font-weight:400}
.sv-page p{font-size:clamp(15px,1.18vw,18px);line-height:1.5;margin:0 0 20px}
.sv-hero{position:relative;min-height:620px;height:min(900px,calc(100svh - 88px));overflow:hidden;padding:55px 4vw 100px;background:var(--sv-paper);border-radius:5px;margin-bottom:1px;display:flex;align-items:center}
.sv-hero-copy{position:relative;z-index:2;width:58%;pointer-events:none}.sv-hero-copy a{pointer-events:auto}
.sv-hero h1{font:italic 400 clamp(100px,12.5vw,200px)/.96 Georgia,serif;letter-spacing:-.065em;color:var(--sv-blue);margin:28px 0 40px}
.sv-hero .sv-deck{font-size:clamp(25px,2.25vw,37px);line-height:1.2;letter-spacing:-.025em;margin-bottom:22px}
.sv-hero .sv-hero-intro{max-width:360px;font-size:15px;line-height:1.45}
.sv-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;background:var(--sv-blue);color:var(--sv-paper)!important;text-decoration:none;font-size:13px;padding:15px 23px;border-radius:2px;margin-top:8px;transition:background .25s}
.sv-button:hover{background:var(--sv-ink)}
.sv-berry{position:absolute;width:61%;height:92%;right:-3%;bottom:2%;object-fit:contain;filter:drop-shadow(0 25px 18px #28212416);animation:sv-breathe 12s ease-in-out infinite;transform-origin:55% 90%}
.sv-hero-nav{position:absolute;bottom:25px;left:4vw;right:4vw;display:flex;gap:30px;justify-content:space-between;border-top:1px solid #20211f38;padding-top:15px;z-index:3}
.sv-hero-nav a{font:10px/1.5 'Courier New',monospace;text-transform:uppercase;text-decoration:none;padding:10px 0}.sv-hero-nav a:hover{color:var(--sv-blue)}
.sv-mosaic{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:1px;padding:0;background:#20211f}
.sv-panel{min-width:0;position:relative;background:var(--sv-paper);border-radius:5px;padding:clamp(25px,2.7vw,48px);scroll-margin-top:80px;display:flex;flex-direction:column;align-items:flex-start}
.sv-strategy{grid-column:1/10}.sv-idea{grid-column:10/17;background:#263fe5;color:#f5f3ec;overflow:hidden}.sv-identity{grid-column:17/25}
.sv-palette{grid-column:1/6;background:#f1d1a7}.sv-digital{grid-column:6/16}.sv-olympia{grid-column:16/25}
.sv-minalima{grid-column:1/11}.sv-editorial{grid-column:11/20}.sv-edition{grid-column:20/25;background:#263fe5;color:#f5f3ec;overflow:hidden}
.sv-process{grid-column:1/8}.sv-steps{grid-column:8/19;background:#fff}.sv-outcomes{grid-column:19/25;background:#f1d1a7}
.sv-technology{grid-column:1/16;background:#263fe5;color:#f5f3ec}.sv-contact{grid-column:16/25}
.sv-idea .sv-label,.sv-edition .sv-label,.sv-technology .sv-label{color:inherit}
.sv-deliverables{list-style:none;padding:8px 0 0;margin:0 0 25px;width:100%;font-size:13px;line-height:1.4}
.sv-deliverables li{border-top:1px solid #20211f2c;padding:12px 0}.sv-deliverables li:last-child{border-bottom:1px solid #20211f2c}
.sv-panel .sv-note{margin:auto 0 0;font-size:13px;color:#66665f;max-width:350px}
.sv-link{font-size:13px;text-decoration:underline;text-underline-offset:5px;display:inline-block;padding:12px 0;margin-top:auto}
.sv-panel .sv-art-caption{font-size:clamp(22px,2.4vw,36px);line-height:1.1;letter-spacing:-.025em;margin:auto 0 0}
.sv-orbits{display:block;width:100%;height:auto;aspect-ratio:1;max-width:340px;flex:none;align-self:center;margin:auto 0}
.sv-orbit-tracks{stroke:#f5f3ec55;stroke-width:1}
.sv-sun{fill:#f5f3ec}
.sv-planet-orbit{transform-box:view-box;transform-origin:50% 50%;transform:rotate(var(--phase));animation:sv-orbit var(--period) linear infinite}
.sv-orbit-inner{--period:12s;--phase:25deg;fill:#ff4b0b}
.sv-orbit-middle{--period:20s;--phase:160deg;fill:#f1d1a7}
.sv-orbit-outer{--period:32s;--phase:280deg;fill:#f5f3ec}
.sv-type-pair{font:italic 400 clamp(75px,8vw,130px)/.85 Georgia,serif;letter-spacing:-.07em;margin:70px 0 25px;color:#263fe5}.sv-type-pair span{display:block;font:400 .66em/1 Arial,sans-serif;letter-spacing:-.06em;margin-top:14px}
.sv-swatches{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0 55px}.sv-swatches i{width:clamp(20px,2.1vw,35px);height:clamp(20px,2.1vw,35px);background:#263fe5;border-radius:50%;transition:transform .7s cubic-bezier(.2,.8,.2,1)}.sv-swatches i:nth-child(2){background:#ff4b0b}.sv-swatches i:nth-child(3){background:#f5f3ec}.sv-swatches i:nth-child(4){background:#20211f}
.sv-photo{padding:0;overflow:hidden;display:block;min-height:490px;text-decoration:none}
.sv-photo .ob-cover,.sv-photo .ob-inside{position:absolute;inset:0;transition:transform 500ms ease;background:#f5f3ec}
.sv-photo .ob-cover{z-index:2;pointer-events:none;transform:translateX(0)}
.sv-photo .ob-cover img{width:100%;height:100%;object-fit:cover;display:block}
.sv-photo .ob-inside{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(25px,3vw,50px);color:#263fe5;transform:translateX(calc(var(--ob-dir,1)*-100%))}
.sv-photo .ob-inside p:not(.sv-label){color:#20211f}.sv-photo .ob-inside .sv-link{margin-top:20px}
.sv-photo.ob-open .ob-cover{transform:translateX(calc(var(--ob-dir,1)*100%))}
.sv-photo.ob-open .ob-inside{transform:translateX(0)}
.sv-photo.ob-reset .ob-cover,.sv-photo.ob-reset .ob-inside{transition:none}
.sv-file-formats{width:100%;margin:30px 0;flex:1;display:flex;flex-direction:column;justify-content:space-evenly;gap:28px}
.sv-file-formats>div{border-top:1px solid #f5f3ec44;padding-top:18px}
.sv-file-formats dt{font:400 clamp(37px,4.1vw,66px)/1 Arial,Helvetica,sans-serif;letter-spacing:-.03em;margin:0 0 12px}
.sv-file-formats dd{font:13px/1.4 Arial,Helvetica,sans-serif;margin:0}
.sv-edition .sv-note{color:#f5f3ecb8;font-size:12px}
.sv-palette .sv-art-caption{font-size:clamp(19px,1.9vw,28px);line-height:1.25}
.sv-steps ol{padding:0;margin:0;width:100%;list-style:none}.sv-steps li{display:grid;grid-template-columns:35px 1fr;gap:18px;padding:22px 0;border-top:1px solid #20211f2c}.sv-steps li:first-child{padding-top:0;border-top:0}.sv-steps li:last-child{padding-bottom:0}.sv-steps li>span{font:11px 'Courier New',monospace;color:#263fe5;padding-top:6px}.sv-steps h3{font:400 27px/1.1 Arial,sans-serif;letter-spacing:-.025em;margin:0 0 12px}.sv-steps p{font-size:15px;margin:0;max-width:470px}
.sv-outcomes h2{font-size:clamp(30px,3.2vw,52px);margin-bottom:35px}.sv-technology{min-height:440px}.sv-technology p{max-width:500px}.sv-contact h2{color:#263fe5}
.sv-page #ob-study.sv-footer-wrap{padding:1px 0 0;background:#20211f;border:0;border-radius:0}.sv-page #ob-study .ob-footer{margin:0;background:#f5f3ec;border-radius:5px;padding:35px;--ob-foot-text:#20211f;--ob-foot-muted:#61635b}.sv-page #ob-study .ob-footer p{font-size:13px}.sv-page #ob-study .ob-footer a{color:inherit}
@keyframes sv-breathe{0%,100%{transform:rotate(-1deg) translateY(0)}50%{transform:rotate(1deg) translateY(-8px)}}
@keyframes sv-orbit{from{transform:rotate(var(--phase))}to{transform:rotate(calc(var(--phase) + 360deg))}}
@media(min-width:701px) and (max-width:1000px){.sv-hero{min-height:650px}.sv-hero .sv-deck{font-size:26px}.sv-hero-intro{max-width:290px!important}.sv-berry{width:62%;right:-9%}.sv-panel{padding:26px}.sv-strategy{grid-column:1/15}.sv-idea{grid-column:15/25}.sv-identity{grid-column:1/16}.sv-palette{grid-column:16/25}.sv-digital{grid-column:1/14}.sv-olympia{grid-column:14/25}.sv-minalima{grid-column:1/12}.sv-editorial{grid-column:12/25}.sv-edition{grid-column:1/9}.sv-process{grid-column:9/25}.sv-steps{grid-column:1/16}.sv-outcomes{grid-column:16/25}.sv-technology{grid-column:1/15}.sv-contact{grid-column:15/25;min-height:320px}.sv-type-pair{margin-top:35px}.sv-edition-art{width:100%;margin:30px 0}.sv-photo{min-height:440px}}
@media(max-width:700px){.sv-page{padding:80px 5px 5px}.sv-hero{height:auto;min-height:calc(100svh - 85px);padding:40px 25px 85px;display:block}.sv-hero-copy{width:100%}.sv-hero h1{font-size:clamp(78px,17vw,119px);margin:20px 0}.sv-hero .sv-deck{font-size:25px}.sv-hero .sv-hero-intro{font-size:14px;max-width:310px}.sv-hero .sv-button{margin-top:0}.sv-berry{position:relative;width:100%;height:clamp(210px,32svh,300px);right:auto;bottom:auto;margin:5px 0 -10px;display:block}.sv-hero-nav{left:25px;right:25px;bottom:18px;gap:0;flex-wrap:wrap;padding-top:8px}.sv-hero-nav a{width:50%;font-size:9px;padding:7px 0}.sv-mosaic{padding:0;grid-template-columns:repeat(2,minmax(0,1fr))}.sv-mosaic>.sv-panel{grid-column:1/-1;padding:30px 25px}.sv-page h2{font-size:37px}.sv-page p{font-size:16px}.sv-mosaic>.sv-idea,.sv-mosaic>.sv-palette,.sv-mosaic>.sv-edition{min-height:310px}.sv-orbits{width:250px;max-width:100%;height:auto;align-self:center;margin:25px 0}.sv-idea .sv-art-caption{font-size:29px}.sv-palette{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:15px}.sv-palette .sv-label{grid-column:1/-1}.sv-type-pair{font-size:100px;margin:20px 0}.sv-palette .sv-art-caption{grid-column:2;grid-row:2;font-size:22px}.sv-swatches{grid-column:1/-1;margin:5px 0}.sv-swatches i{width:35px;height:35px}.sv-mosaic>.sv-photo{padding:0;min-height:430px}.sv-photo .ob-inside{padding:30px 25px}.sv-edition-art{width:200px;aspect-ratio:.85;align-self:center;margin:35px 0}.sv-edition-art span{font-size:85px}.sv-edition .sv-art-caption{font-size:28px}.sv-technology{min-height:0}.sv-page #ob-study.sv-footer-wrap{padding:1px 0 0}.sv-page #ob-study .ob-footer{padding:30px 25px}.sv-panel .sv-note{font-size:13px}.sv-steps p{font-size:15px}.sv-photo-reveal h2{font-size:40px}.sv-outcomes h2{font-size:46px}.sv-contact h2{font-size:42px}.sv-contact{min-height:410px}}
@media(prefers-reduced-motion:reduce){.sv-page *, .sv-page *:before,.sv-page *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.sv-page #ob-study .ob-footer .ob-footer-logo{color:#263fe5}

@media(max-width:700px){.sv-file-formats{gap:24px;margin:28px 0}.sv-file-formats>div{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:18px}.sv-file-formats dt{font-size:52px;margin:0}}

/* Expanded service groups follow the same broken vertical grid rhythm. */
.sv-additional-services{grid-column:1/-1;display:grid;grid-template-columns:repeat(24,minmax(0,1fr));gap:1px;min-width:0}
.sv-commerce{grid-column:1/10}.sv-campaigns{grid-column:10/18;background:#fff}.sv-motion{grid-column:18/25;background:#f1d1a7}
.sv-technology .sv-deliverables li{border-color:#f5f3ec44}.sv-technology .sv-note{color:#f5f3ecbd}.sv-technology .sv-link{margin-top:20px}
.sv-orbit-caption-title{display:block;font-size:clamp(24px,2.4vw,36px);line-height:1.1;margin-bottom:14px}
.sv-orbit-caption-copy{display:block;font:15px/1.45 Arial,Helvetica,sans-serif;letter-spacing:0;max-width:260px}
@media(min-width:701px) and (max-width:1000px){.sv-commerce{grid-column:1/13}.sv-campaigns{grid-column:13/25}.sv-motion{grid-column:1/25}.sv-motion .sv-deliverables{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}}
@media(max-width:700px){.sv-additional-services{grid-column:1/-1;grid-template-columns:1fr}.sv-additional-services>.sv-panel{grid-column:1;padding:30px 25px}.sv-orbit-caption-title{font-size:29px}.sv-orbit-caption-copy{font-size:15px}}

/* Integrated offer: two unequal panels, on the same surface as the services grid. */
/* A single destination emphasis after using the hero's service links. */
/* A single stationary outline above both sliding faces. */
.sv-panel.sv-destination-highlight::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:8;box-shadow:inset 0 0 0 6px #ff4a00,inset 0 0 0 8px #f5f3ec;animation:sv-destination-highlight 3.8s ease-in-out both}
@keyframes sv-destination-highlight{0%,32%,64%,82%{opacity:1;box-shadow:inset 0 0 0 6px #ff4a00,inset 0 0 0 8px #f5f3ec}16%,48%{opacity:1;box-shadow:inset 0 0 0 3px #ff4a00,inset 0 0 0 5px #f5f3ec}100%{opacity:0;box-shadow:inset 0 0 0 6px #ff4a00,inset 0 0 0 8px #f5f3ec}}
@media(prefers-reduced-motion:reduce){.sv-panel.sv-destination-highlight::after{animation:none}}

.sv-integrated-offer{grid-column:1/-1;display:grid;grid-template-columns:14fr 10fr;gap:1px;min-width:0}
.sv-integrated-copy h2{color:#263fe5;font-size:clamp(36px,3.8vw,59px)}
.sv-integrated-copy>p:not(.sv-label):not(.sv-note){max-width:640px}
.sv-integrated-copy .sv-note{max-width:600px}
.sv-integrated-scope{background:#f1d1a7}
.sv-integrated-scope dl{width:100%;margin:28px 0 0}
.sv-integrated-scope dl>div{border-top:1px solid #20211f2c;padding:20px 0}
.sv-integrated-scope dl>div:last-child{padding-bottom:0}
.sv-integrated-scope dt{font:400 clamp(19px,1.7vw,26px)/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.02em;margin-bottom:9px}
.sv-integrated-scope dd{font:15px/1.45 Arial,Helvetica,sans-serif;margin:0;max-width:390px}
@media(max-width:700px){.sv-integrated-offer{grid-template-columns:1fr}.sv-integrated-offer>.sv-panel{padding:30px 25px}.sv-integrated-copy h2{font-size:38px}.sv-integrated-scope dt{font-size:23px}}

/* Keep the technical heading on its two chosen lines on narrow screens. */
@media(max-width:700px){.sv-page .sv-technology h2{font-size:clamp(22px,7vw,37px)}}

/* The elements uses the shared sliding-panel controller and timing. */
.sv-mosaic>.sv-palette{display:grid;grid-template-columns:minmax(0,1fr);padding:0;gap:0;overflow:hidden;align-items:stretch}
.sv-palette>.ob-cover,.sv-palette>.ob-inside{grid-area:1/1;position:relative;inset:auto;min-width:0;padding:clamp(25px,2.7vw,48px);display:flex;flex-direction:column;align-items:flex-start;transition:transform 500ms ease}
.sv-palette>.ob-cover{z-index:2;background:#f1d1a7;pointer-events:none;transform:translateX(0)}
.sv-palette>.ob-inside{background:#f5f3ec;color:#20211f;justify-content:center;transform:translateX(calc(var(--ob-dir,1)*-100%))}
.sv-palette.ob-open>.ob-cover{transform:translateX(calc(var(--ob-dir,1)*100%))}
.sv-palette.ob-open>.ob-inside{transform:translateX(0)}
.sv-palette.ob-reset>.ob-cover,.sv-palette.ob-reset>.ob-inside{transition:none}
.sv-elements-detail{width:100%;margin:28px 0 0}
.sv-elements-detail>div+div{border-top:1px solid #20211f2c;margin-top:23px;padding-top:23px}
.sv-elements-detail dt{font:400 clamp(20px,1.65vw,25px)/1.12 Arial,Helvetica,sans-serif;letter-spacing:-.03em;margin-bottom:12px;color:#263fe5}
.sv-elements-detail dd{font:14px/1.45 Arial,Helvetica,sans-serif;margin:0}
@media(min-width:701px) and (max-width:1000px){.sv-palette>.ob-cover,.sv-palette>.ob-inside{padding:26px}}
@media(max-width:700px){.sv-palette>.ob-cover,.sv-palette>.ob-inside{padding:30px 25px}.sv-palette>.ob-cover{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:15px}.sv-elements-detail{margin-top:24px}.sv-elements-detail>div+div{margin-top:18px;padding-top:18px}}

/* Only the deliverables list moves to a second face; all other content stays. */
.sv-additional-services>.sv-list-reveal,.sv-mosaic>.sv-list-reveal{display:grid;grid-template-columns:minmax(0,1fr);padding:0;overflow:hidden}
.sv-list-reveal>.ob-cover,.sv-list-reveal>.ob-inside{grid-area:1/1;position:relative;inset:auto;min-width:0;padding:clamp(25px,2.7vw,48px);display:flex;flex-direction:column;align-items:flex-start;transition:transform 500ms ease;background:var(--sv-card-bg,#f5f3ec)}
.sv-commerce{--sv-card-bg:#f5f3ec}.sv-campaigns{--sv-card-bg:#fff}.sv-motion{--sv-card-bg:#f1d1a7}
.sv-list-reveal>.ob-cover{z-index:2;pointer-events:none;transform:translateX(0)}
.sv-list-reveal>.ob-cover a{pointer-events:auto}
.sv-list-reveal>.ob-inside{justify-content:center;transform:translateX(calc(var(--ob-dir,1)*-100%))}
.sv-list-reveal.ob-open>.ob-cover{transform:translateX(calc(var(--ob-dir,1)*100%))}
.sv-list-reveal.ob-open>.ob-inside{transform:translateX(0)}
.sv-list-reveal.ob-reset>.ob-cover,.sv-list-reveal.ob-reset>.ob-inside{transition:none}
.sv-list-reveal>.ob-inside .sv-deliverables{margin:0;padding:0}
@media(min-width:701px) and (max-width:1000px){.sv-list-reveal>.ob-cover,.sv-list-reveal>.ob-inside{padding:26px}}
@media(max-width:700px){.sv-additional-services>.sv-list-reveal{padding:0}.sv-list-reveal>.ob-cover,.sv-list-reveal>.ob-inside{padding:30px 25px}}

.sv-technology.sv-list-reveal{--sv-card-bg:#263fe5}

/* Editorial unity: each panel has one job; the process row and format glossary are removed. */
@media(min-width:1001px){.sv-editorial{grid-column:11/25}}
.sv-integrated-scope h2{font-size:clamp(32px,3.1vw,46px);margin-bottom:28px}
.sv-integrated-scope>p:not(.sv-label){max-width:440px}

/* Additional context in the two wider covers, with typography rather than new artwork. */
.sv-copy-expansion{width:100%;margin-top:auto;padding-top:38px}
.sv-copy-expansion h3{font:italic 400 clamp(22px,2.2vw,30px)/1.15 Georgia,serif;letter-spacing:-.035em;margin:0 0 20px;color:#263fe5}
.sv-copy-expansion p{font-size:clamp(15px,1.1vw,17px);line-height:1.5;max-width:620px;margin:0}
.sv-technology .sv-copy-expansion h3{color:#f5f3ec}
@media(max-width:700px){.sv-copy-expansion{padding-top:35px}.sv-copy-expansion h3{font-size:clamp(20px,5.3vw,24px)}.sv-copy-expansion p{font-size:15px}}

/* The whole panel is the display; lettering and background share one square grid. */
.sv-mosaic>.sv-dot-study{padding:0;min-height:490px;isolation:isolate}
.sv-dot-stage{position:absolute;inset:0;width:100%;height:100%;overflow:hidden}
.sv-dot-canvas{display:block;width:100%;height:100%}
.sv-dot-canvas[hidden],.sv-dot-fallback[hidden]{display:none}
.sv-dot-fallback{height:100%;display:flex;align-items:center;justify-content:center;font:700 clamp(30px,3.4vw,48px)/1.15 'Courier New',monospace;letter-spacing:.06em}
@media(max-width:700px){.sv-mosaic>.sv-dot-study{min-height:490px}}

.sv-dot-study[data-dot-mode="calm"],.sv-dot-study[data-dot-mode="reduced"]{cursor:pointer}
.sv-dot-study:focus-visible{outline:3px solid #f5f3ec;outline-offset:-5px}

/* Let the section canvas show through panel corner cut-outs. */
.sv-page .sv-mosaic,.sv-page #ob-study.sv-footer-wrap{background:transparent}
