@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#081522;--ink:#edf4f8;--blue:#8dc9ed;--muted:#a8bbc9;--line:#294052;--wash:#102638;--heading:'Manrope',sans-serif;--body:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.skip-link{position:fixed;top:-100px;left:20px;z-index:20;padding:16px;background:var(--ink);color:var(--paper)}.skip-link:focus{top:10px}.nav{height:96px;padding:0 5%;display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:10}.wordmark{font-family:var(--heading);font-size:29px;font-weight:800;letter-spacing:-2px;white-space:nowrap}.wordmark sub{font-size:.5em;letter-spacing:-1px}.wordmark span{font-size:18px;font-weight:500;letter-spacing:-.7px;margin-left:7px}.nav nav{display:flex;gap:35px;margin-left:auto;font-size:14px}.nav a:hover{color:var(--blue)}.language{border:1px solid var(--line);border-radius:100px;background:transparent;padding:10px 14px;font-size:12px;cursor:pointer}.hero{min-height:calc(100svh - 96px);position:relative;padding:75px 5% 95px;display:flex;align-items:center;overflow:hidden}.hero-copy{position:relative;z-index:2;width:50%}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:600;margin:0 0 25px}.hero h1{font-family:var(--heading);font-weight:500;font-size:clamp(64px,7.6vw,120px);line-height:1.01;letter-spacing:-.065em;margin:0 0 28px}.hero h1 em{font-style:normal;color:var(--blue)}.intro{color:var(--muted);line-height:1.65;font-size:18px;margin-bottom:30px}.button{display:inline-flex;gap:32px;align-items:center;background:var(--ink);color:var(--paper);padding:17px 25px;border-radius:100px;font-size:14px;border:0;cursor:pointer}.button:hover{background:var(--blue)}.button span{font-size:21px}.hero-art{width:58%;height:85%;position:absolute;right:-4%;top:7%;display:grid;place-items:center}.fluid{width:70%;aspect-ratio:1;border-radius:45% 55% 62% 38%/38% 30% 70% 62%;background:radial-gradient(ellipse at 40% 25%,#fff 0%,#d4edf3 18%,#75b5d9 32%,#e9f8ff 43%,#2187c1 51%,#a9d9e7 65%,#e3f3f7 80%);box-shadow:inset -15px -18px 25px #488caa44,25px 40px 70px #a5bac14d;transform:rotate(-25deg)}.art-note{position:absolute;bottom:13%;font-size:10px;letter-spacing:.18em}.hero-foot{position:absolute;bottom:26px;left:5%;right:5%;display:flex;justify-content:space-between;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.section{padding:110px 5%}.section h2{font-family:var(--heading);font-size:clamp(38px,4.7vw,70px);font-weight:500;line-height:1.1;letter-spacing:-.055em;margin:0 0 30px}.section-intro{max-width:510px;color:var(--muted);line-height:1.8}.services{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid var(--line)}.services article{padding:32px 35px 20px 0}.services article+article{padding-left:35px;border-left:1px solid var(--line)}.number{font-size:12px;color:var(--blue)}h3{font-family:var(--heading);font-size:23px;font-weight:500;letter-spacing:-.04em}.services p{color:var(--muted);line-height:1.7;max-width:290px}.price{display:block;font-size:13px;margin-top:32px}footer{display:flex;justify-content:space-between;padding:35px 5%;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}@media(max-width:700px){.nav{height:76px;padding:0 6%;gap:16px}.nav nav{gap:14px;font-size:11px}.nav nav a:last-child{display:none}.wordmark{font-size:24px}.wordmark span{display:none}.language{font-size:10px;padding:8px}.hero{padding:55px 6% 80px;min-height:900px;align-items:flex-start}.hero-copy{width:100%}.hero h1{font-size:72px}.hero-art{top:410px;height:380px;width:100%;right:0}.intro{font-size:16px}.hero-foot{left:6%;right:6%;gap:10px;font-size:10px}.hero-foot a{white-space:nowrap}.section{padding:75px 6%}.services{grid-template-columns:1fr;margin-top:35px}.services article+article{border-left:0;border-top:1px solid var(--line);padding-left:0}.services article{padding-bottom:30px}footer{gap:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* The style tile and website share these exact tokens and components. */
.nav{position:sticky;top:0;height:84px}.brand{width:200px;display:flex;align-items:center}.brand img{width:100%;height:auto;mix-blend-mode:lighten}.language .active{font-weight:700;color:var(--ink)}.language span{color:var(--muted)}.story{--travel:3.65;position:relative;height:calc((var(--travel) + 1)*100svh - 84px)}.stage{position:sticky;top:84px;height:calc(100svh - 84px);overflow:hidden;background:var(--paper)}.poster,#sequence{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.poster{z-index:0}#sequence{z-index:1;opacity:0}.stage-gradient{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(8,21,34,.97),rgba(8,21,34,.87) 25%,rgba(8,21,34,.25) 47%,transparent 59%);pointer-events:none}.story-copy{position:absolute;z-index:3;left:5%;top:50%;transform:translateY(-52%);width:43%;max-width:610px;will-change:opacity,transform}.story-copy[hidden]{display:none}.story-copy h1,.story-copy h2{font-family:var(--heading);font-size:clamp(57px,6.6vw,108px);line-height:1.03;font-weight:500;letter-spacing:-.065em;margin:0 0 25px}.story-copy em{font-style:normal;color:var(--blue)}.story-copy .intro{font-size:17px;max-width:360px}.hero-foot{z-index:4;left:5%;right:5%;bottom:23px;align-items:center}.scroll-hint{display:flex;gap:10px;align-items:center}.scroll-hint i{font-style:normal;font-size:23px}.hero-foot a{font-size:11px;text-decoration:underline;text-underline-offset:4px}.story-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#edf4f812;z-index:4}.story-progress>div{width:100%;height:100%;background:var(--blue);transform-origin:left;transform:scaleX(0)}.media-status{position:absolute;right:5%;top:20px;font-size:10px;color:var(--muted);z-index:4}.section-top{display:flex;justify-content:space-between}.section-index{font-size:11px;color:var(--muted)}.section-heading{display:grid;grid-template-columns:1.35fr 1fr;gap:50px;align-items:end}.section-heading h2{margin-bottom:0}.section-heading .section-intro{margin:0 0 6px;max-width:440px}.projects{background:#0b1b2b}.project-grid{margin-top:55px;display:grid;grid-template-columns:repeat(2,1fr);gap:30px}.portfolio-empty{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.25fr;align-items:center;gap:60px;background:var(--wash);padding:50px 7%;min-height:290px;border-radius:3px}.portfolio-empty h3{font-size:30px;margin:15px 0}.portfolio-empty p{line-height:1.7;color:var(--muted);max-width:430px}.portfolio-empty .eyebrow{font-size:9px;color:var(--muted)}.water-ring{display:block;width:230px;height:145px;margin:auto;border:3px solid #78a9be;border-radius:50%;box-shadow:0 0 0 12px #bad7e154,0 0 0 26px #bad7e13d,0 0 0 41px #bad7e121;transform:rotate(-15deg);background:radial-gradient(ellipse,#e6f3f600 30%,#abcbd957 60%,#f9ffff 70%)}.project-card img{width:100%;height:auto;aspect-ratio:1.4;object-fit:cover;background:var(--wash)}.project-card h3{margin:15px 0 8px}.project-card p{color:var(--muted);font-size:13px}.project-card a:hover{text-decoration:underline}.services{margin-top:55px}.services article{display:flex;flex-direction:column}.services h3{margin-bottom:8px}.services ul{list-style:none;margin:18px 0 24px;padding:0;font-size:13px;line-height:2.4;color:var(--muted)}.services li:before{content:'↗';padding-right:12px;color:var(--blue)}.services p{min-height:84px;margin-top:0}.price{font-size:17px;font-weight:500;margin-top:auto}.text-button{display:inline-flex;gap:10px;align-items:center;padding:14px 0;background:transparent;border:0;border-bottom:1px solid var(--line);font:inherit;font-size:13px;color:var(--ink);cursor:pointer;text-align:left}.text-button:hover{color:var(--blue)}.pricing-note{font-size:12px;line-height:1.7;color:var(--muted);max-width:760px;margin-top:32px}.approach{background:var(--wash)}.approach h2{max-width:750px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:55px}.steps article{border-top:1px solid var(--line);padding-top:25px}.steps p{color:var(--muted);line-height:1.7;font-size:14px}.steps h3{font-size:22px}.contact{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.contact h2{font-size:clamp(55px,7.2vw,110px);margin-bottom:0}.contact-body>p:first-child{font-size:21px;line-height:1.6;max-width:450px}.contact-note{font-size:12px;line-height:1.8;color:var(--muted);max-width:380px;margin-top:24px}#contact-email{margin-top:24px;font-size:20px;border-bottom:1px solid var(--ink)}footer{flex-wrap:wrap;align-items:center;gap:25px}footer small{width:100%;font-size:10px;letter-spacing:.03em}.footer-brand{font-family:var(--heading);font-size:20px;font-weight:600;letter-spacing:-1px}footer>a:last-of-type{margin-left:auto;text-decoration:underline;text-underline-offset:4px}dialog{border:0;border-radius:4px;padding:45px;max-width:540px;width:calc(100% - 32px);background:var(--paper);color:var(--ink);max-height:90svh;overflow:auto}dialog::backdrop{background:#000b15a6;backdrop-filter:blur(5px)}dialog h2{font-family:var(--heading);font-size:35px;font-weight:500;letter-spacing:-.045em;line-height:1.1}.dialog-close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:30px;color:var(--ink);cursor:pointer}.dialog-intro{font-size:13px;line-height:1.7;color:var(--muted)}label{display:block;font-size:13px;margin:18px 0}input,textarea{width:100%;margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:3px;background:#0b1b2b;font:inherit;color:var(--ink);font-size:14px}textarea{resize:vertical}input:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:2px}#brief-status{font-size:12px;line-height:1.7}.noscript-note{padding:30px;background:var(--wash)}body.static-motion .story{height:calc(100svh - 84px)}body.static-motion .stage{position:relative;top:0}body.static-motion .scroll-hint,body.static-motion .story-progress{display:none}body.static-motion .adaptation{display:none}body.static-motion .opening{display:block!important;opacity:1!important;transform:translateY(-52%)!important}
@media(min-width:1600px){.story-copy{left:calc((100vw - 1440px)/2)}.section{padding-left:calc((100vw - 1440px)/2);padding-right:calc((100vw - 1440px)/2)}}
@media(max-width:900px){.nav nav{gap:20px}.brand{width:170px}.story-copy{width:45%}.story-copy h1,.story-copy h2{font-size:7.7vw}.hero-foot .audience{max-width:180px;line-height:1.6}.section-heading{grid-template-columns:1fr;gap:25px}.section-heading .section-intro{max-width:570px}.services article{padding-right:20px}.services article+article{padding-left:20px}.steps{gap:25px}.contact{gap:35px}.portfolio-empty{gap:30px;padding:40px 5%}.water-ring{width:190px;height:120px}}
@media(max-width:700px){.nav{height:70px;padding:0 6%;gap:12px}.brand{width:125px;flex-shrink:0}.nav nav{gap:15px;margin-left:auto}.nav nav a:last-child{display:none}.language{padding:7px;font-size:10px}.story{height:calc((var(--travel) + 1)*100svh - 70px)}.stage{top:70px;height:calc(100svh - 70px)}.poster,#sequence{top:46%;height:48%;width:100%;object-fit:cover;object-position:75% 50%}.stage-gradient{background:linear-gradient(180deg,var(--paper) 0%,var(--paper) 43%,transparent 60%)}.story-copy{top:5%;left:6%;width:88%;transform:none;max-width:440px}.story-copy h1,.story-copy h2{font-size:clamp(46px,9.8vw,65px);line-height:1.03;margin-bottom:14px}.story-copy .eyebrow{font-size:9px;margin-bottom:14px}.story-copy .intro{font-size:13px;line-height:1.5;margin:0 0 17px;max-width:290px}.story-copy .button{padding:12px 18px;font-size:11px;gap:22px}.hero-foot{bottom:18px;left:6%;right:6%;padding-top:12px;font-size:9px}.hero-foot .audience{display:none}.hero-foot a{font-size:9px}.scroll-hint i{font-size:18px}.media-status{top:auto;bottom:65px;font-size:9px}.section{padding:70px 6%}.section h2{font-size:43px}.section-intro{font-size:14px}.portfolio-empty{grid-template-columns:1fr;gap:32px;padding:45px 25px}.water-ring{width:145px;height:90px}.portfolio-empty h3{font-size:25px}.portfolio-empty p{font-size:13px}.portfolio-empty .eyebrow{display:block;margin:0}.project-grid{grid-template-columns:1fr;margin-top:35px}.services{grid-template-columns:1fr}.services article,.services article+article{padding:26px 0}.services p{min-height:0;max-width:none}.services ul{margin:10px 0 20px}.services h3{font-size:27px}.steps{grid-template-columns:1fr;gap:25px;margin-top:35px}.steps h3{font-size:24px}.contact{grid-template-columns:1fr;gap:25px}.contact h2{font-size:72px}.contact-body>p:first-child{font-size:18px}footer{padding:30px 6%;gap:20px}footer>span{font-size:11px}footer small{line-height:1.6}dialog{padding:35px 25px}body.static-motion .story{height:calc(100svh - 70px)}body.static-motion .opening{transform:none!important}}
@media(max-height:680px) and (min-width:701px){.story-copy h1,.story-copy h2{font-size:64px}.story-copy .eyebrow{margin-bottom:12px}.story-copy .intro{font-size:14px;margin:10px 0 20px}.story-copy .button{padding:12px 20px}.hero-foot{bottom:13px;padding-top:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Djupvatten — selected identity. */
:root{color-scheme:dark}.nav{background:rgba(8,21,34,.96);backdrop-filter:blur(16px)}.button:hover{background:var(--blue);color:var(--paper)}.button:focus-visible{outline-color:var(--blue)}.brand{width:210px}.brand img{mix-blend-mode:lighten}.water-ring{border-color:#70a1bd;box-shadow:0 0 0 12px #6097bc18,0 0 0 26px #6097bc10,0 0 0 41px #6097bc08;background:radial-gradient(ellipse,#10263800 30%,#5085a530 60%,#97bed544 70%)}.sample-card{border:1px solid var(--line)}.skip-link{color:var(--paper)}@media(max-width:700px){.brand{width:125px}}
/* Marinblått & guld — current theme and CSS motion */
:root{--paper:#081522;--ink:#f0f3f7;--blue:#d8b36a;--gold:#d8b36a;--gold-light:#f4d898;--muted:#aab9c7;--line:#293d50;--wash:#102438}
.nav{border-bottom-color:#d8b36a24}.nav nav a{position:relative;padding:10px 0;transition:color .2s ease}.nav nav a:after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .28s ease}.nav nav a:hover:after,.nav nav a:focus-visible:after{transform:scaleX(1)}.brand{transition:filter .3s ease,transform .3s ease}.brand:hover{filter:drop-shadow(0 0 9px #d8b36a44);transform:translateY(-1px)}.language{transition:border-color .2s ease,background .2s ease}.language:hover{border-color:var(--gold);background:#d8b36a0c}.eyebrow{color:var(--gold)}
.button{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(115deg,var(--gold-light),var(--gold) 65%,#bc8c3e);color:var(--paper);box-shadow:0 6px 25px #d8b36a12;transition:transform .25s ease,box-shadow .25s ease}.button:before{content:'';position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 35%,#ffffff70 50%,transparent 65%);transform:translateX(-85%);transition:transform .65s ease;z-index:-1}.button:hover,.button:focus-visible{background:linear-gradient(115deg,var(--gold-light),var(--gold));transform:translateY(-3px);box-shadow:0 10px 35px #d8b36a28}.button:hover:before,.button:focus-visible:before{transform:translateX(85%)}.button>span:last-child{transition:transform .25s ease}.button:hover>span:last-child,.button:focus-visible>span:last-child{transform:translate(3px,-3px)}.text-button{transition:color .25s ease,border-color .25s ease,padding-left .25s ease}.text-button:hover,.text-button:focus-visible{color:var(--gold-light);border-color:var(--gold);padding-left:7px}.story-copy h1 em,.story-copy h2 em,.section h2 em{color:var(--gold)}.story-progress>div{background:linear-gradient(90deg,#987440,var(--gold-light))}.line-wrap{display:inline-block}.line-text{display:inline-block}.opening .line-text{animation:line-in .85s cubic-bezier(.2,.65,.2,1) both;animation-delay:var(--line-delay,0ms)}.opening .eyebrow{animation:soft-in .6s ease both}.opening .intro{animation:soft-in .8s ease .3s both}.opening .button{animation:soft-in .8s ease .45s both}
.projects{background:linear-gradient(145deg,#0b1b2b,#091728)}.services-section{position:relative;background:radial-gradient(ellipse at 100% 15%,#d8b36a09,transparent 50%)}.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;border-top:0;margin-top:50px}.services article,.services article+article{padding:32px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(150deg,#12283c,#0c1e30);position:relative;overflow:hidden;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.services article:before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:0;transition:opacity .3s ease}.services article:hover,.services article:focus-within{transform:translateY(-6px);border-color:#d8b36a80;box-shadow:0 18px 45px #00000030}.services article:hover:before,.services article:focus-within:before{opacity:1}.services h3{font-size:30px}.services p{min-height:55px;max-width:440px}.services ul{margin:12px 0 30px}.services .number{letter-spacing:.12em}.pricing-block{margin-top:auto;display:grid;grid-template-columns:auto 1fr;align-items:baseline;column-gap:10px;padding-top:24px;border-top:1px solid var(--line)}.price-label{grid-column:1/-1;font-size:9px;letter-spacing:.17em;color:var(--muted);margin-bottom:12px}.price-from{font-size:13px;color:var(--muted)}.pricing-block .price{margin:0;font:500 44px/1.1 var(--heading);letter-spacing:-.06em;color:var(--gold-light)}.price-unit{grid-column:1/-1;color:var(--muted);font-size:11px;margin:10px 0 17px}.pricing-note{padding-left:18px;border-left:2px solid var(--gold);max-width:920px}.approach{background:linear-gradient(145deg,#12263a,#0e2032)}.steps article{transition:border-color .3s ease,transform .3s ease}.steps article:hover{border-color:var(--gold);transform:translateY(-4px)}.steps .number{color:var(--gold);transition:letter-spacing .3s ease}.steps article:hover .number{letter-spacing:.2em}.portfolio-empty{border:1px solid #d8b36a20;transition:border-color .3s ease}.portfolio-empty:hover{border-color:#d8b36a55}.water-ring{border-color:var(--gold);box-shadow:0 0 0 12px #d8b36a15,0 0 0 26px #d8b36a0c,0 0 0 41px #d8b36a06;background:radial-gradient(ellipse,#10263800 30%,#d8b36a18 60%,#f4d89830 70%);animation:ring-drift 10s ease-in-out infinite}.project-card{transition:transform .3s ease}.project-card:hover{transform:translateY(-5px)}.project-card img{transition:filter .4s ease;border:1px solid var(--line)}.project-card:hover img{filter:brightness(1.12)}#contact-email{border-color:var(--gold);transition:color .25s ease,text-shadow .25s ease}#contact-email:hover{color:var(--gold-light);text-shadow:0 0 20px #d8b36a33}.contact{background:radial-gradient(ellipse at 0% 70%,#d8b36a07,transparent 65%)}footer a{transition:color .25s ease}footer a:hover{color:var(--gold)}.reveal-item{opacity:0;transform:translateY(26px);transition:opacity .7s ease var(--reveal-delay,0ms),transform .7s cubic-bezier(.2,.65,.2,1) var(--reveal-delay,0ms)}.reveal-item.is-visible{opacity:1;transform:translateY(0)}
@keyframes line-in{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes soft-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes ring-drift{0%,100%{transform:rotate(-15deg) translateY(0)}50%{transform:rotate(-10deg) translateY(-7px)}}
@media(max-width:700px){.services{grid-template-columns:1fr;gap:18px}.services article,.services article+article{padding:27px 23px}.services h3{font-size:27px}.services p{min-height:0}.pricing-block .price{font-size:40px}.contact #contact-email{font-size:18px}}
@media(hover:none){.services article:hover,.steps article:hover,.button:hover,.project-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.reveal-item{opacity:1;transform:none}.line-text,.opening .intro,.opening .button,.opening .eyebrow{opacity:1;transform:none}.water-ring{animation:none}.button:hover,.services article:hover,.steps article:hover{transform:none}}
.services .reveal-item,.steps .reveal-item{transition:opacity .7s ease var(--reveal-delay,0ms),transform .5s cubic-bezier(.2,.65,.2,1) var(--reveal-delay,0ms),border-color .3s ease,box-shadow .3s ease}

/* Expressive motion + compact four-card pricing. */
.line-wrap{overflow:hidden;vertical-align:bottom;padding-bottom:.08em;margin-bottom:-.08em;max-width:100%}
.opening .line-text,.opening .intro,.opening .eyebrow,.opening .button{animation:none}
.motion-word{display:inline-block;will-change:transform,opacity}
.story-copy.is-active .motion-word,.reveal-item.is-visible .motion-word{animation:word-flow .9s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--word-delay,0ms)}
.line-text .motion-word{animation-delay:calc(var(--word-delay,0ms) + var(--line-delay,0ms))!important}
.story-copy.is-active .eyebrow{animation:eyebrow-flow .8s ease both}
.story-copy.is-active .intro{animation:copy-flow .9s ease .3s both}
.story-copy.is-active .button{animation:copy-flow .8s ease .5s both}
.reveal-item{transform:translateY(42px);transition:opacity .85s ease var(--reveal-delay,0ms),transform .85s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms)}
.section-top.is-visible .eyebrow{animation:eyebrow-flow .85s ease both}
.section-index{transition:color .3s ease,letter-spacing .3s ease}.section:hover .section-index{color:var(--gold);letter-spacing:.2em}
.section-heading h2 em,.contact-heading h2 em,.story-copy em{background:linear-gradient(105deg,#b98b42 10%,#fbe6b4 40%,#d8b36a 60%,#b98b42 90%);background-size:240% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:gold-current 7s ease-in-out infinite}
.scroll-hint i{animation:scroll-flow 1.8s ease-in-out infinite}
.nav nav a:hover,.nav nav a:focus-visible{transform:translateY(-2px)}.nav nav a{transition:color .25s ease,transform .25s ease}.nav nav a:after{height:2px;box-shadow:0 0 12px #d8b36a70}
.brand:hover,.brand:focus-visible{transform:scale(1.04);filter:drop-shadow(0 0 12px #d8b36a80)}
.language:hover,.language:focus-visible{box-shadow:0 0 20px #d8b36a28;transform:translateY(-2px)}.language{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .25s ease}
.button{transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s ease;box-shadow:0 5px 20px #d8b36a16}
.button:hover,.button:focus-visible{transform:translateY(-5px) scale(1.025);box-shadow:0 12px 40px #d8b36a45}.button:active{transform:translateY(-1px) scale(.98)}
.button:after{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,50%),#fff9,transparent 55%);opacity:0;transition:opacity .35s ease}.button:hover:after{opacity:.65}
.button>span:first-child{transition:letter-spacing .3s ease}.button:hover>span:first-child{letter-spacing:.015em}.button:hover>span:last-child{transform:translate(5px,-5px)}
.services{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch;margin-top:42px}
.services article,.services article+article{padding:24px 21px 20px;border:1px solid #38506a;border-radius:16px;background:linear-gradient(155deg,#152c43,#0d1e30 65%);box-shadow:0 8px 25px #0002;min-width:0}
.services .service-card{transition:opacity .7s ease var(--reveal-delay,0ms),transform .5s cubic-bezier(.16,1,.3,1),border-color .3s ease,box-shadow .4s ease}
.services .service-card:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,10%),#d8b36a1c,transparent 65%);pointer-events:none;opacity:0;transition:opacity .4s ease}
.services .service-card:before{height:2px;left:21px;right:21px;top:0;opacity:.45;transform:scaleX(.3);transition:opacity .35s ease,transform .5s ease}
.services .service-card.is-visible:hover,.services .service-card.is-visible:focus-within{transform:translateY(-10px);border-color:var(--gold);box-shadow:0 20px 45px #0005,0 0 25px #d8b36a12}
.services .service-card:hover:after,.services .service-card:focus-within:after{opacity:1}.services .service-card:hover:before,.services .service-card:focus-within:before{opacity:1;transform:scaleX(1)}
.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:21px}.service-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;border:1px solid #d8b36a40;background:#d8b36a0a;color:var(--gold-light);font-size:27px;line-height:1;transition:transform .45s cubic-bezier(.16,1,.3,1),background .3s ease,box-shadow .3s ease}
.service-card:hover .service-icon,.service-card:focus-within .service-icon{transform:rotate(-8deg) scale(1.13);background:#d8b36a20;box-shadow:0 0 22px #d8b36a22}
.services h3{font-size:22px;line-height:1.22;margin:0 0 13px;min-height:54px;transition:color .3s ease;overflow-wrap:normal}.service-card:hover h3,.service-card:focus-within h3{color:var(--gold-light)}
.services p{font-size:13px;line-height:1.6;min-height:64px;margin:0;color:var(--muted)}
.services ul{font-size:12px;line-height:1.6;margin:20px 0 22px;min-height:110px}.services li{position:relative;padding-left:17px;margin:0 0 8px;transition:color .25s ease,transform .25s ease}.services li:before{position:absolute;left:0;padding:0;transition:transform .3s ease}.service-card:hover li:before{transform:translate(2px,-2px)}.services li:hover{color:var(--gold-light);transform:translateX(3px)}
.pricing-block{padding-top:18px;column-gap:7px}.price-label{font-size:8px;margin-bottom:10px;letter-spacing:.13em}.price-from{font-size:11px}.pricing-block .price{font-size:36px;letter-spacing:-.055em;transition:text-shadow .3s ease}.service-card:hover .price{text-shadow:0 0 25px #d8b36a60}.price-unit{font-size:10px;margin:8px 0 20px}
.services .text-button{position:relative;z-index:1;border:1px solid #d8b36a40;background:#d8b36a08;color:var(--gold-light);border-radius:8px;padding:11px 12px;font-size:11px;display:flex;justify-content:space-between;gap:8px;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}
.services .text-button:hover,.services .text-button:focus-visible{padding:11px 12px;background:#d8b36a20;border-color:var(--gold);box-shadow:0 0 20px #d8b36a18}.cta-arrow{font-size:18px;transition:transform .3s ease}.text-button:hover .cta-arrow,.text-button:focus-visible .cta-arrow{transform:translate(3px,-3px)}
.steps article{padding:25px 18px 18px;border:1px solid var(--line);border-radius:12px;background:#08152244;position:relative;overflow:hidden}.steps article:before{content:'';position:absolute;left:-100%;top:0;width:100%;height:2px;background:var(--gold);transition:left .55s ease}.steps article:hover:before{left:0}.steps article.is-visible:hover{transform:translateY(-8px)}.steps article:hover .number{display:inline-block;transform:scale(1.25);letter-spacing:.15em}.steps .number{display:inline-block;transition:transform .3s ease,letter-spacing .3s ease}.steps article:hover h3{color:var(--gold-light)}.steps h3{transition:color .3s ease}
.portfolio-empty:hover .water-ring{animation:ring-hover 3s ease-in-out infinite}.portfolio-empty:hover h3{color:var(--gold-light)}.portfolio-empty h3{transition:color .3s ease}
.project-card{overflow:hidden}.project-card img{transition:transform .7s cubic-bezier(.16,1,.3,1),filter .4s ease}.project-card:hover img{transform:scale(1.035);filter:brightness(1.12)}
#contact-email{position:relative;display:inline-block;border:0;padding-bottom:7px;transition:color .3s ease,transform .3s ease,text-shadow .3s ease}#contact-email[hidden]{display:none}#contact-email:after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--gold);transform-origin:left;transition:transform .35s ease}#contact-email:hover{transform:translateX(7px);text-shadow:0 0 22px #d8b36a60}#contact-email:hover:after{transform:scaleX(.55)}
dialog[open]{animation:dialog-flow .4s cubic-bezier(.16,1,.3,1)}dialog[open]::backdrop{animation:copy-flow .3s ease}input,textarea{transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}input:hover,textarea:hover{border-color:#d8b36a70}input:focus,textarea:focus{background:#13283d;box-shadow:0 0 22px #d8b36a12}.dialog-close{transition:transform .3s ease,color .3s ease}.dialog-close:hover{transform:rotate(90deg);color:var(--gold)}
@keyframes word-flow{from{opacity:0;transform:translateY(110%) rotate(4deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes eyebrow-flow{from{opacity:0;letter-spacing:.32em;transform:translateX(-18px)}to{opacity:1;letter-spacing:.16em;transform:translateX(0)}}
@keyframes copy-flow{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes gold-current{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes scroll-flow{0%,100%{transform:translateY(-4px);opacity:.4}50%{transform:translateY(6px);opacity:1}}
@keyframes ring-hover{0%,100%{transform:rotate(-15deg) scale(1)}50%{transform:rotate(4deg) scale(1.08)}}
@keyframes dialog-flow{from{opacity:0;transform:translateY(25px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:1100px){.services{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.services h3{min-height:0}.services p{min-height:42px}.services ul{min-height:90px}}
@media(max-width:600px){.services{grid-template-columns:1fr;gap:18px}.services article,.services article+article{padding:23px}.services h3{font-size:24px}.services p,.services ul{min-height:0}.services .text-button{font-size:12px}.pricing-block .price{font-size:40px}}
@media(hover:none){.services .service-card.is-visible:hover,.steps article.is-visible:hover,.button:hover,.brand:hover{transform:none}.portfolio-empty:hover .water-ring{animation:ring-drift 10s ease-in-out infinite}}
@media(prefers-reduced-motion:reduce){.motion-word,.reveal-item{opacity:1;transform:none;will-change:auto}.services .service-card.is-visible:hover,.services .service-card.is-visible:focus-within,.steps article.is-visible:hover,.button:hover,.brand:hover,#contact-email:hover{transform:none}.line-text .motion-word{animation:none!important}.story-copy em,.section-heading h2 em,.contact-heading h2 em{background:none;color:var(--gold)}.services li:hover,.service-card:hover .service-icon,.steps article:hover .number{transform:none}}
/* Keep gradient ink on the actual word boxes so nested text stays visible. */
.section-heading h2 em,.contact-heading h2 em,.story-copy em{background:none;color:var(--gold);animation:none}
em .motion-word{background:linear-gradient(105deg,#b98b42 10%,#fbe6b4 40%,#d8b36a 60%,#b98b42 90%);background-size:240% 100%;background-clip:text;-webkit-background-clip:text;color:transparent}
.story-copy.is-active em .motion-word,.reveal-item.is-visible em .motion-word{animation:word-flow .9s cubic-bezier(.16,1,.3,1) both,gold-current 7s ease-in-out infinite}
@media(prefers-reduced-motion:reduce){em .motion-word{background:none;color:var(--gold)}}
/* Tight spacing keeps the comparison readable as a single row. */
.services article,.services article+article{padding:21px 20px 18px}
.card-top{margin-bottom:14px}.service-icon{width:34px;height:34px;font-size:23px;border-radius:10px}
.services h3{min-height:52px;margin-bottom:10px}.services p{min-height:60px}
.services ul{min-height:90px;margin:14px 0 16px}.services li{margin-bottom:6px}
.pricing-block{padding-top:14px}.price-unit{margin-bottom:14px}.services .text-button{line-height:18px;padding:9px 11px}.services .text-button:hover,.services .text-button:focus-visible{padding:9px 11px}.cta-arrow{line-height:18px}
@media(max-width:1100px){.services h3{min-height:0}.services p{min-height:42px}}
@media(max-width:600px){.services p,.services ul{min-height:0}}
.story-copy.is-active .button{animation-fill-mode:backwards}
.language{white-space:nowrap;flex-shrink:0}
@media(max-width:420px){.nav{gap:12px}.nav nav{gap:12px;font-size:10px}.brand{flex-shrink:0;width:120px}.language{padding:8px 9px}}

/* Original light Higgsfield sequence; scoped contrast for the hero only. */
.stage{background:#f2f0eb;color:#081522}
.stage-gradient{background:linear-gradient(90deg,rgba(242,240,235,.98) 0%,rgba(242,240,235,.91) 23%,rgba(242,240,235,.2) 46%,transparent 58%),linear-gradient(0deg,rgba(242,240,235,.88),transparent 19%)}
.story-copy h1,.story-copy h2{color:#081522}.story-copy .intro{color:#405368}.story-copy .eyebrow{color:#75521b}
.story-copy em{color:#805b22}.story-copy em .motion-word{background-image:linear-gradient(105deg,#6d491b 10%,#876326 40%,#75521b 65%,#6d491b 90%)}
.story-copy .button,.story-copy .button:hover,.story-copy .button:focus-visible{background:linear-gradient(115deg,#17344f,#081522);color:#f7f2e8;border:1px solid #a7864a;box-shadow:0 7px 25px #08152220}
.story-copy .button:hover,.story-copy .button:focus-visible{box-shadow:0 12px 35px #08152240}.story-copy .button:after{background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,50%),#d8b36a55,transparent 55%)}
.story-copy .button:focus-visible,.hero-foot a:focus-visible{outline-color:#081522}
.stage .hero-foot{color:#33485a;border-color:#08152225}.stage .hero-foot a:hover{color:#75521b}.stage .media-status{color:#405368}.stage .story-progress{background:#08152215}.stage .story-progress>div{background:linear-gradient(90deg,#75521b,#b88e46)}
@media(max-width:700px){.stage-gradient{background:linear-gradient(180deg,#f2f0eb 0%,#f2f0eb 43%,rgba(242,240,235,0) 61%),linear-gradient(0deg,#f2f0eb 0%,transparent 19%)}}
@media(prefers-reduced-motion:reduce){.story-copy em .motion-word{background:none;color:#805b22}}

/* Allow italic overhang and accents outside each animated line. */
.line-wrap{overflow:visible;padding-bottom:0;margin-bottom:0}
em .motion-word{padding:.12em .09em;margin:-.12em -.09em;background-origin:padding-box}
/* Actual alpha-backed logo; no blend mode needed. */
.brand img,.tile-logo img{mix-blend-mode:normal}

/* Published portfolio cases: preserved screenshots and editable bilingual copy. */
.project-grid{align-items:stretch;grid-template-columns:repeat(2,minmax(0,1fr))}
.project-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#102438,#0b1b2b);display:flex;flex-direction:column;transition:border-color .3s ease,box-shadow .3s ease,transform .35s ease}
.project-card:hover,.project-card:focus-within{border-color:#d8b36a80;box-shadow:0 20px 50px #0003}
.project-media{overflow:hidden;background:#081522;aspect-ratio:16/10;border-bottom:1px solid var(--line)}
.project-card .project-media img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:contain;border:0}
.project-body{padding:26px;display:flex;flex-direction:column;flex:1}
.project-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--muted)}
.project-category{color:var(--gold);font-size:9px;letter-spacing:.13em;text-transform:uppercase}
.project-card h3{font:500 clamp(24px,2.3vw,34px)/1.15 var(--heading);letter-spacing:-.04em;margin:18px 0 12px}
.project-card p{font-size:14px;line-height:1.8;margin:0 0 24px}
.project-link{align-self:flex-start;display:inline-flex;align-items:center;gap:16px;color:var(--gold);margin-top:auto;padding:8px 0;font-size:12px;text-decoration:none;border-bottom:1px solid #d8b36a60;transition:gap .3s ease,color .3s ease}
.project-link:hover{gap:24px;color:var(--gold-light);text-decoration:none!important}
.project-link:focus-visible{outline:2px solid var(--gold);outline-offset:6px;border-radius:2px}
@media(max-width:700px){.project-grid{grid-template-columns:1fr;gap:24px}.project-body{padding:22px}.project-card h3{font-size:27px}}
@media(prefers-reduced-motion:reduce){.project-card,.project-card img,.project-link{transition:none!important}.project-card:hover,.project-card:focus-within,.project-card:hover img{transform:none}}

/* Whole-page progress sits on the lower edge of the sticky header. */
.page-progress{position:absolute;left:0;right:0;top:calc(100% + 1px);height:3px;background:#d8b36a14;pointer-events:none;z-index:5}
.page-progress[hidden]{display:none}
.page-progress-fill{position:absolute;inset:0;background:linear-gradient(90deg,#a9813b,var(--gold),var(--gold-light));transform:scaleX(0);transform-origin:left center;box-shadow:0 0 9px #d8b36a65;will-change:transform}
.page-progress-head{position:absolute;left:0;top:50%;width:8px;height:8px;border-radius:50%;background:#fff2cf;border:1px solid var(--gold-light);box-shadow:0 0 5px #fff2cf,0 0 13px #d8b36ac0,0 0 22px #d8b36a55;transform:translate(4px,-50%);will-change:transform}
.story-progress{display:none}
@media(prefers-reduced-motion:reduce){.page-progress-fill,.page-progress-head{will-change:auto;box-shadow:none}}

/* Copy and line breaks from the updated Figma hero and footer. */
.opening .intro{width:100%;max-width:432px;white-space:pre-line}
.footer-identity{display:flex;align-items:center;gap:25px;margin-right:auto;font-size:12px}
.footer-brand{display:flex;flex-shrink:0;font-size:inherit}
.footer-brand img{display:block;height:2.7em;width:auto}
footer [data-text="footerLine"]{white-space:pre-line;line-height:1.35}
.complete-solution{margin-top:32px;padding:28px 32px;border:1px solid #d8b36a55;border-radius:12px;background:linear-gradient(120deg,#d8b36a10,var(--wash))}
.complete-solution h3{margin:0 0 12px;color:var(--gold-light);font-size:clamp(23px,2.3vw,30px)}
.complete-solution p{margin:0;max-width:850px;line-height:1.75;color:var(--ink);font-size:15px}
.complete-solution .text-button{margin-top:14px;color:var(--gold-light);gap:16px;border-color:#d8b36a60}
select{width:100%;margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:3px;background:#0b1b2b;font:inherit;color:var(--ink);font-size:14px}
select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.form-honeypot{display:none}
.contact-delivery-note{font-size:12px;line-height:1.6;color:var(--muted)}
.contact-direct-email{display:block;margin-top:18px;font-size:13px;text-decoration:underline;text-underline-offset:4px}
#contact-submit:disabled{opacity:.65;cursor:wait}
#brief-status{overflow-wrap:anywhere}
@media(max-width:700px){
 .opening .intro{max-width:290px}
 .footer-identity{flex-wrap:wrap;gap:16px}
 footer [data-text="footerLine"]{width:100%;font-size:12px}
 .complete-solution{padding:24px 22px}
}
