@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--lime:#f4e740;--ink:#003f30;--paper:#ffffff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}header{height:100px;padding:26px 4%;display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;width:100%;z-index:10}.brand{font-size:36px;font-weight:800;letter-spacing:-2px;line-height:.7}.brand span{display:block;font-size:15px;letter-spacing:1px;padding-top:9px}.head-right{display:flex;gap:30px;align-items:center}.head-right button{border:0;background:none;font-size:14px}#menu{font-size:24px}.talk{border-bottom:1px solid;padding:9px 0;font-size:13px}nav{position:fixed;top:92px;right:4%;padding:28px;background:var(--ink);color:var(--paper);z-index:30;min-width:230px;box-shadow:0 20px 60px #0003}nav a{display:block;font-size:25px;padding:12px}.hero{min-height:100vh;padding:140px 4% 24px;position:relative;overflow:hidden}.eyebrow,.label,.edition,.city-tag,.city-hint,.caption,.project>span,.project footer span,.footer,.price{font-family:monospace;font-size:11px;letter-spacing:.04em}.eyebrow{display:flex;align-items:center;gap:9px}.dot{height:7px;width:7px;border-radius:50%;background:#639700;box-shadow:0 0 0 4px #f4e7404d}h1{font-size:clamp(48px,6.9vw,106px);font-weight:500;line-height:1.02;letter-spacing:-.065em;margin:34px 0 0;position:relative;z-index:2;pointer-events:none;max-width:900px}em{font-family:Georgia,serif;font-weight:400}h1 em{color:#007554}.city{height:550px;margin-top:-120px;position:relative;margin-left:22%;width:80%}canvas{width:100%;height:100%;display:block;touch-action:pan-y}.city-tag{position:absolute;right:5%;top:21%;line-height:1.7;font-size:9px;color:#52633e}.city-hint{position:absolute;bottom:20px;right:6%;font-size:9px;color:#657356}#motion{position:absolute;bottom:10px;left:16%;height:35px;width:35px;border:1px solid #879773;border-radius:50%;background:#ffffff80}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:-10px;font-size:13px;line-height:1.7}.down{display:flex;gap:12px;align-items:center}.down:first-letter{font-size:30px}.edition{font-size:9px}.section{padding:105px 6%;border-top:1px solid #003f3030}h2{font-size:clamp(44px,6.4vw,90px);font-weight:500;line-height:1.08;letter-spacing:-.055em;margin:45px 0 65px}.about{background:var(--lime)}.about-bottom{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end}.years{font-size:130px;line-height:1;letter-spacing:-9px}.years span{display:inline-block;font-size:13px;letter-spacing:0;margin-left:25px}.about p{font-size:22px;line-height:1.6;margin:0}.services{background:#003f30;color:#ffffff}.services em{color:var(--lime)}.service-list{margin-left:25%}details{border-top:1px solid #ffffff38}details:last-child{border-bottom:1px solid #ffffff38}summary{list-style:none;display:flex;gap:20px;align-items:center;font-size:clamp(18px,2.5vw,34px);padding:27px 0;cursor:pointer}summary::-webkit-details-marker{display:none}summary small{font:11px monospace;color:#b8c2aa}summary span{margin-left:auto;font-size:27px;font-weight:400}details[open] summary span{transform:rotate(45deg)}details p{font-size:16px;line-height:1.7;max-width:620px;margin:0 40px 28px}.price{margin:30px 0 0 25%;color:#c3ceb5}.projects{display:grid;grid-template-columns:1fr 1fr;gap:26px}.project{padding:25px;min-height:360px;position:relative;overflow:hidden;transition:transform .4s}.project:hover{transform:translateY(-7px)}.puppy{background:#c5e9d9}.aqua{background:#b9dbe7}.glame{background:#ddd3c9;grid-column:1/-1;min-height:310px}.project-art{height:260px;display:flex;flex-direction:column;justify-content:center;font-size:70px;font-weight:800;letter-spacing:-5px;line-height:.9;position:relative}.project-art span{font-weight:400}.project-art i{position:absolute;right:20px;font:140px Georgia;opacity:.35}.glame .project-art{height:220px;font-family:Georgia;letter-spacing:8px}.project footer{display:flex;justify-content:space-between;font-size:14px;border-top:1px solid #003f3044;padding-top:15px}.project footer span{font-size:9px}.caption{font-size:10px;line-height:1.6;margin-top:22px;color:#606753}.contact{background:var(--lime)}.contact h2{font-size:clamp(60px,9vw,140px)}.contact-phone{font-size:clamp(25px,3.5vw,50px);letter-spacing:-.04em;display:block;width:max-content;border-bottom:2px solid}.wa{display:inline-block;background:var(--ink);color:var(--paper);padding:20px 30px;border-radius:50px;margin-top:30px}.footer{display:flex;justify-content:space-between;align-items:end;margin-top:130px;font-size:9px}.footer .brand{font-family:Manrope,Arial}.label{font-size:10px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #75a620;outline-offset:6px}@media(min-width:1500px){.city{height:650px}}@media(max-width:700px){header{height:90px;padding:22px 6%}.brand{font-size:30px}.head-right{gap:20px}.talk{display:none}.hero{padding:125px 6% 28px}.eyebrow{font-size:8px}h1{font-size:54px;margin-top:30px}.city{height:390px;margin:0 -30%;width:160%}.city-tag{top:10%;right:23%;font-size:7px}.city-hint{right:24%;font-size:7px;bottom:25px}#motion{left:23%;bottom:15px}.hero-bottom{gap:20px;align-items:center}.hero-bottom p{font-size:11px}.edition{display:none}.down{font-size:10px}.section{padding:65px 6%}h2{margin:30px 0 45px;font-size:46px}.about-bottom{grid-template-columns:1fr;gap:30px}.years{font-size:100px}.about p{font-size:18px}.service-list,.price{margin-left:0}summary{font-size:18px;padding:23px 0;gap:15px}.projects{grid-template-columns:1fr}.glame{grid-column:auto}.project{min-height:310px;padding:20px}.project-art{font-size:60px;height:235px}.project footer span{font-size:7px}.footer{margin-top:85px;gap:35px;flex-wrap:wrap}.footer>*{width:40%}.contact h2{font-size:62px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project{transition:none}}
/* Immersive scene revision */
:root{--lime:#f4e740;--paper:#ffffff}header{position:fixed;height:90px;color:#f7ffe9;mix-blend-mode:normal;transition:background .4s,color .4s}header.over-content{background:#fffffff2;color:#003f30;backdrop-filter:blur(12px)}.head-right{gap:27px}.desktop-nav{font:11px monospace}.brand{font-family:Georgia,serif;font-weight:400;letter-spacing:-1px;font-size:34px}.brand span{font:10px monospace;letter-spacing:3px}#world{position:fixed;inset:0;background:#526639;z-index:0;transition:opacity .5s}#world canvas{width:100%;height:100%;touch-action:pan-y}main{position:relative}.experience{position:relative;z-index:1}.scene-panel{height:125vh;position:relative;display:flex;align-items:center;padding:0 6%;pointer-events:none}.scene-panel .scene-copy{width:49%;margin-left:auto;opacity:0;transform:translateY(70px);transition:opacity .6s,transform .8s}.scene-panel.is-active .scene-copy{opacity:1;transform:translateY(0)}.scene-panel.second .scene-copy{margin-left:0}.scene-panel.fourth .scene-copy{margin-left:auto;margin-right:auto;text-align:center;width:70%;align-self:flex-end;margin-bottom:20vh}.scene-copy h1,.scene-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(55px,6.4vw,102px);font-weight:400;line-height:.97;letter-spacing:-.045em;text-transform:uppercase;color:#f4ffe7;margin:26px 0 30px;max-width:100%}.scene-copy h1 em,.scene-copy h2 em{font-size:1.03em;color:#f4ffe7;text-transform:none}.scene-copy p{font:11px/1.6 monospace;color:#f4ffe7;max-width:410px;text-wrap:balance}.fourth p{margin:auto}.scene-copy .pill{display:inline-block;background:#8cc834;color:#162b0c;font:10px monospace;padding:6px 11px;border-radius:30px}.scene-cta{display:inline-block;border:1px solid #edffd78a;padding:13px 19px;border-radius:40px;font:11px monospace;color:#fff;margin-top:18px;pointer-events:auto;transition:background .3s,color .3s}.scene-cta:hover{background:#f4e740;color:#203010}.scene-shade{position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 25%,#14270044 100%);z-index:1}.scene-controls{position:fixed;bottom:30px;right:4%;z-index:20;display:flex;gap:15px;color:#f3ffe5}.scene-controls button{border:1px solid #efffdb66;background:#2d3c2680;border-radius:40px;padding:12px 18px;font:10px monospace;backdrop-filter:blur(10px)}.scene-controls #motion{position:static;width:38px;height:38px;padding:0;border-color:#efffdb66;color:#f3ffe5;background:#2d3c2680}.scene-progress{position:fixed;left:4%;bottom:30px;z-index:10;color:#edffdc;display:flex;align-items:center;gap:16px;font:9px monospace;transition:opacity .4s}.scene-progress i{display:block;width:90px;height:1px;background:#efffdb44}.scene-progress b{height:1px;display:block;background:#f4e740;width:0}.section{position:relative;z-index:2;background:var(--paper)}.services{background:#003f30}.contact{background:var(--lime)}#settings-panel{position:fixed;right:4%;bottom:85px;z-index:35;background:#003f30ed;color:#f4ffe7;border:1px solid #c6f38a55;backdrop-filter:blur(20px);width:290px;padding:25px;border-radius:12px}#settings-panel h3{font-size:17px;font-weight:400;margin:0 0 22px}#settings-panel label{display:flex;align-items:center;justify-content:space-between;margin:18px 0;font-size:13px}#settings-panel p{font:10px/1.6 monospace;opacity:.65}#settings-panel select{background:#34442b;color:#efffdb;border:1px solid #7a925c;padding:5px}#cursor{position:fixed;width:20px;height:20px;left:0;top:0;border:1px solid #e8ffd4b3;border-radius:50%;pointer-events:none;z-index:100;transform:translate(-100px,-100px);transition:width .25s,height .25s,background .25s;mix-blend-mode:screen}#cursor span{opacity:0;display:block;text-align:center;line-height:48px;color:#15270b}#cursor.hovering{width:48px;height:48px;background:#f4e740;border-color:#f4e740}#cursor.hovering span{opacity:1}#scene-error{position:fixed;bottom:90px;left:5%;z-index:2;color:#fff;font:12px monospace}body.past-scene .scene-shade,body.past-scene .scene-progress{opacity:0}body.past-scene #cursor{border-color:#60852e;mix-blend-mode:normal}body.past-scene .scene-controls{display:none}.project{transform-style:preserve-3d;will-change:transform}.project-art{transition:transform .6s}.project:hover .project-art{transform:translateZ(35px) scale(1.035)}summary{transition:padding .4s,color .4s}summary:hover{padding-left:20px;color:#f4e740}.service-list details[open]{background:#f4e7400c}.service-list summary span{transition:transform .4s}.wa{transition:transform .2s,background .3s}.wa:hover{background:#3c581c}.section h2,.section .label{opacity:0;transform:translateY(35px);transition:opacity .8s,transform .8s}.section.visible h2,.section.visible .label{opacity:1;transform:none}@media(max-width:700px){header{height:80px}.desktop-nav{display:none}.scene-panel{height:115vh;padding:0 7%;align-items:flex-start}.scene-panel .scene-copy,.scene-panel.second .scene-copy{width:100%;margin:20vh 0 0}.scene-copy h1,.scene-copy h2{font-size:49px;max-width:95%;margin:20px 0}.scene-copy p{font-size:9px;width:85%}.scene-panel.fourth .scene-copy{width:100%;align-self:flex-start;margin-top:24vh;margin-bottom:0}.scene-controls{bottom:18px;right:5%}.scene-controls button{padding:10px}.scene-progress{left:6%;bottom:22px;font-size:8px;gap:10px}.scene-progress>span:last-child{display:none}.scene-progress i{width:45px}#cursor{display:none}.scene-shade{background:linear-gradient(#15270066,transparent 70%)}#settings-panel{bottom:75px;right:5%}}@media(prefers-reduced-motion:reduce){.scene-panel .scene-copy,.section h2,.section .label{transition:none;opacity:1;transform:none}#cursor{display:none}}
@media(min-width:701px){.scene-panel{align-items:flex-start}.scene-panel .scene-copy{margin-top:20vh}.scene-panel.second .scene-copy{margin-top:16vh}.scene-panel.fourth .scene-copy{margin-top:18vh;align-self:flex-start;margin-bottom:0}.scene-copy h1,.scene-copy h2{font-size:clamp(55px,5.8vw,96px)}}
/* Original work galleries */
.portfolio-intro{font-size:17px;line-height:1.6;max-width:600px;margin:-30px 0 45px}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}.portfolio-card{min-width:0}.portfolio-image{position:relative;display:block;width:100%;aspect-ratio:1;border:0;padding:0;background:#dce3d0;overflow:hidden;cursor:zoom-in}.portfolio-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .55s}.portfolio-image:hover img{transform:scale(1.035)}.portfolio-image:after{content:'↗';position:absolute;right:14px;bottom:14px;background:#f4e740;color:#17250c;border-radius:50%;width:36px;height:36px;line-height:36px;font-size:20px;opacity:0;transform:translateY(8px);transition:.25s}.portfolio-image:hover:after,.portfolio-image:focus-visible:after{opacity:1;transform:none}.portfolio-card-caption{display:flex;justify-content:space-between;align-items:start;gap:15px;padding:15px 0 0}.portfolio-card h3{font-size:14px;line-height:1.5;font-weight:500;margin:0}.portfolio-card small{font:9px monospace;color:#6b775e;white-space:nowrap;padding-top:5px}.portfolio-link{display:inline-block;font-size:16px;margin-top:50px;border-bottom:1px solid;padding:10px 0;line-height:1.6}.portfolio-page{background:#ffffff}.portfolio-main{padding:145px 6% 80px;min-height:80vh}.portfolio-back{font:10px monospace}.portfolio-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin:60px 0}.portfolio-heading h1{font:400 clamp(58px,8vw,112px)/.95 Georgia,serif;letter-spacing:-.055em;margin:25px 0 0;max-width:100%;pointer-events:auto}.portfolio-heading h1 em{color:#007554}.portfolio-heading p{font-size:14px;line-height:1.8;max-width:360px}.portfolio-filters{display:flex;gap:10px;flex-wrap:wrap;border-bottom:1px solid #263b182d;padding-bottom:24px;position:sticky;top:88px;z-index:5;background:#fffffff2;backdrop-filter:blur(12px);padding-top:10px}.portfolio-filters button{border:1px solid #263b1833;border-radius:30px;background:none;padding:12px 18px;font-size:12px;transition:.25s}.portfolio-filters button.active,.portfolio-filters button:hover{background:#f4e740;border-color:#f4e740}.portfolio-filters small{font:9px monospace;margin-left:7px;opacity:.6}.gallery-status{font:10px monospace;color:#60704e;margin:24px 0}.portfolio-footer{padding:50px 6%;background:#f4e740;display:flex;justify-content:space-between;align-items:center;font:11px/1.8 monospace}.portfolio-home{font:11px monospace}.art-dialog{position:fixed;inset:0;margin:auto;width:min(1300px,96vw);height:94vh;max-width:96vw;max-height:94vh;background:#15210f;color:#f3f8ec;border:1px solid #f1ffd42b;padding:0;border-radius:6px;box-shadow:0 30px 120px #0008}.art-dialog::backdrop{background:#071003de;backdrop-filter:blur(10px)}.art-toolbar{height:60px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 22px;border-bottom:1px solid #fff2}.art-counter{font:11px monospace}.art-close,.art-prev,.art-next{background:#f3ffd014;color:#fff;border:1px solid #f3ffd044;border-radius:50%;width:38px;height:38px;font-size:20px}.art-view{height:calc(100% - 145px);display:flex;align-items:center;justify-content:center;position:relative;padding:15px 65px}.art-view img{display:block;width:100%;height:100%;object-fit:contain}.art-prev,.art-next{position:absolute;top:50%;transform:translateY(-50%);z-index:1}.art-prev{left:15px}.art-next{right:15px}.art-meta{padding:12px 22px;height:85px;display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #fff2}.art-title{font-size:15px;margin:0 0 5px}.art-category{font:10px monospace;color:#b3c3a5}.art-site{background:#f4e740;color:#15210f;padding:11px 18px;border-radius:30px;font-size:12px;white-space:nowrap}.art-site[hidden]{display:none}.portfolio-load-error{padding:35px;border:1px solid #63784b;font-size:15px;grid-column:1/-1}.social-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.portfolio-grid,.social-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-heading{display:block}.portfolio-heading p{margin-top:30px}.portfolio-page .head-right{gap:14px}}@media(max-width:600px){.portfolio-main{padding:115px 6% 55px}.portfolio-heading{margin:40px 0}.portfolio-grid,.social-grid{gap:24px 14px}.portfolio-card h3{font-size:11px}.portfolio-card-caption{display:block}.portfolio-card small{display:block;font-size:8px}.portfolio-filters{top:78px;gap:7px}.portfolio-filters button{padding:10px 12px;font-size:10px}.portfolio-intro{font-size:14px;margin-top:-20px}.portfolio-link{font-size:14px}.portfolio-footer{gap:30px;flex-wrap:wrap;font-size:9px}.art-view{padding:8px 40px}.art-prev{left:3px}.art-next{right:3px}.art-prev,.art-next{width:30px;height:30px}.art-meta{padding:10px 15px;gap:10px}.art-title{font-size:12px}.art-site{font-size:10px;padding:10px}.portfolio-page .head-right .talk{display:none}.portfolio-home{font-size:10px}}

/* PuppyFlow collage: original card typography and layout retained. */
.puppy .project-art{isolation:isolate}.puppy-collage{position:absolute;inset:0;z-index:-2;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));gap:2px;overflow:hidden}.puppy-collage img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}.puppy .project-art:after{content:"";position:absolute;inset:0;background:rgba(197,233,217,.1);z-index:-1;pointer-events:none}

/* Full-card asymmetric PuppyFlow mosaic, 30% mint tint. */
.project.puppy{isolation:isolate}.puppy .project-art{isolation:auto}.puppy .project-art:after{display:none}.puppy-collage{inset:0;z-index:0;gap:2px;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));grid-template-areas:"a a a b b c d d" "a a a b b c d d" "a a a e f f g g" "h h i e f f g g" "h h j j k l m m" "n o j j k l m m"}.puppy:before{content:"";position:absolute;inset:0;background:rgba(197,233,217,.4);z-index:1;pointer-events:none}.puppy>span,.puppy>.project-art,.puppy>footer{position:relative;z-index:2}
.puppy-collage img:nth-child(1){grid-area:a}.puppy-collage img:nth-child(2){grid-area:b}.puppy-collage img:nth-child(3){grid-area:c}.puppy-collage img:nth-child(4){grid-area:d}.puppy-collage img:nth-child(5){grid-area:e}.puppy-collage img:nth-child(6){grid-area:f}.puppy-collage img:nth-child(7){grid-area:g}.puppy-collage img:nth-child(8){grid-area:h}.puppy-collage img:nth-child(9){grid-area:i}.puppy-collage img:nth-child(10){grid-area:j}.puppy-collage img:nth-child(11){grid-area:k}.puppy-collage img:nth-child(12){grid-area:l}.puppy-collage img:nth-child(13){grid-area:m}.puppy-collage img:nth-child(14){grid-area:n}.puppy-collage img:nth-child(15){grid-area:o}

/* AquaLeader full-card collage matching PuppyFlow treatment. */
.project.aqua{isolation:isolate}.aqua-collage{position:absolute;inset:0;z-index:0;display:grid;gap:2px;overflow:hidden;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));grid-template-areas:"a a b b c c" "a a b b c c" "d e e f f g" "d e e f f g" "h h i j k k" "h h i j l l"}.aqua-collage img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}.aqua:before{content:"";position:absolute;inset:0;background:rgba(185,219,231,.4);z-index:1;pointer-events:none}.aqua>span,.aqua>.project-art,.aqua>footer{position:relative;z-index:2}
.aqua-collage img:nth-child(1){grid-area:a}.aqua-collage img:nth-child(2){grid-area:b}.aqua-collage img:nth-child(3){grid-area:c}.aqua-collage img:nth-child(4){grid-area:d}.aqua-collage img:nth-child(5){grid-area:e}.aqua-collage img:nth-child(6){grid-area:f}.aqua-collage img:nth-child(7){grid-area:g}.aqua-collage img:nth-child(8){grid-area:h}.aqua-collage img:nth-child(9){grid-area:i}.aqua-collage img:nth-child(10){grid-area:j}.aqua-collage img:nth-child(11){grid-area:k}.aqua-collage img:nth-child(12){grid-area:l}

.aqua-collage{grid-template-areas:"m a b b c c" "m a b b c c" "d e e f f g" "d e e f f g" "h h i j k k" "h h i j l l"}.aqua-collage img:nth-child(13){grid-area:m}

/* GLAMÉ full-card asymmetric collage with 40% original card tint. */
.project.glame{isolation:isolate}.glame-collage{position:absolute;inset:0;z-index:0;display:grid;gap:2px;overflow:hidden;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));grid-template-areas:"a a b c c d e e f f f f" "a a b c c d e e f f f f" "g g g h h i i j j j j j" "g g g h h i i j j j j j"}.glame-collage img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}.glame:before{content:"";position:absolute;inset:0;background:rgba(221,211,201,.4);z-index:1;pointer-events:none}.glame>span,.glame>.project-art,.glame>footer{position:relative;z-index:2}
.glame-collage img:nth-child(1){grid-area:a}.glame-collage img:nth-child(2){grid-area:b}.glame-collage img:nth-child(3){grid-area:c}.glame-collage img:nth-child(4){grid-area:d}.glame-collage img:nth-child(5){grid-area:e}.glame-collage img:nth-child(6){grid-area:f}.glame-collage img:nth-child(7){grid-area:g}.glame-collage img:nth-child(8){grid-area:h}.glame-collage img:nth-child(9){grid-area:i}.glame-collage img:nth-child(10){grid-area:j}
@media(max-width:700px){.glame-collage{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));grid-template-areas:"a a b c c d" "a a b c c d" "e e f f g g" "e e f f g g" "h h i i j j" "h h i i j j"}}

.glame-collage{grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));grid-template-areas:"a a b c c d e e f f" "a a b c c d e e f f" "a a b g g h i i f f" "j j k g g h i i l l" "j j m m n o o o l l" "j j m m n o o o l l"}
.glame-collage img:nth-child(1){grid-area:a}.glame-collage img:nth-child(2){grid-area:b}.glame-collage img:nth-child(3){grid-area:c}.glame-collage img:nth-child(4){grid-area:d}.glame-collage img:nth-child(5){grid-area:e}.glame-collage img:nth-child(6){grid-area:f}.glame-collage img:nth-child(7){grid-area:g}.glame-collage img:nth-child(8){grid-area:h}.glame-collage img:nth-child(9){grid-area:i}.glame-collage img:nth-child(10){grid-area:j}.glame-collage img:nth-child(11){grid-area:k}.glame-collage img:nth-child(12){grid-area:l}.glame-collage img:nth-child(13){grid-area:m}.glame-collage img:nth-child(14){grid-area:n}.glame-collage img:nth-child(15){grid-area:o}
@media(max-width:700px){.glame-collage{grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));grid-template-areas:"a a a b b c d d" "a a a b b c d d" "a a a e f f g g" "h h i e f f g g" "h h j j k l m m" "n o j j k l m m"}}

.projects-extra{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:26px}.projects-extra .project{min-width:0;min-height:320px;padding:23px}.projects-extra .project-art{font-size:clamp(30px,3.4vw,50px);height:225px;letter-spacing:-2px}.projects-extra .project-art i{font-size:95px;right:0}.projects-extra .project footer{font-size:12px}.projects-extra .project footer span{font-size:7px}.aesthetik{background:#642ca5;color:#fff;isolation:isolate}.lab-collage{position:absolute;inset:0;z-index:0;display:grid;gap:2px;overflow:hidden;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));grid-template-areas:"a a b b c c" "a a b b c c" "d e e f f g" "d e e f f g" "h h i j k k" "h h i j l l"}.lab-collage img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}.aesthetik:before{content:"";position:absolute;inset:0;background:rgba(98,33,173,.4);z-index:1;pointer-events:none}.aesthetik>span,.aesthetik>.project-art,.aesthetik>footer{position:relative;z-index:2}.aesthetik footer{border-color:#ffffff66}.project-empty{background:#e2e8d8}.project-empty:nth-child(3){background:#d8e0cd}.project-empty .project-art{align-items:center;font-weight:400;color:#829270}.project-empty footer{border-color:#003f3022}
.lab-collage img:nth-child(1){grid-area:a}.lab-collage img:nth-child(2){grid-area:b}.lab-collage img:nth-child(3){grid-area:c}.lab-collage img:nth-child(4){grid-area:d}.lab-collage img:nth-child(5){grid-area:e}.lab-collage img:nth-child(6){grid-area:f}.lab-collage img:nth-child(7){grid-area:g}.lab-collage img:nth-child(8){grid-area:h}.lab-collage img:nth-child(9){grid-area:i}.lab-collage img:nth-child(10){grid-area:j}.lab-collage img:nth-child(11){grid-area:k}.lab-collage img:nth-child(12){grid-area:l}
@media(max-width:700px){.projects-extra{grid-template-columns:1fr}.projects-extra .project-art{font-size:52px}.projects-extra .project footer span{font-size:9px}}

/* Melissa Studio and readable brand names across all filled project cards. */
.project.melissa{background:#64b8bb;isolation:isolate}.melissa-collage{position:absolute;inset:0;z-index:0;display:grid;gap:2px;overflow:hidden;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));grid-template-areas:"a a b b c c" "a a b b c c" "d e e f f g" "d e e f f g" "h h i j k k" "h h i j k k"}.melissa-collage img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}.melissa:before{content:"";position:absolute;inset:0;background:rgba(74,166,171,.4);z-index:1;pointer-events:none}.melissa>span,.melissa>.project-art,.melissa>footer{position:relative;z-index:2}
.melissa-collage img:nth-child(1){grid-area:a}.melissa-collage img:nth-child(2){grid-area:b}.melissa-collage img:nth-child(3){grid-area:c}.melissa-collage img:nth-child(4){grid-area:d}.melissa-collage img:nth-child(5){grid-area:e}.melissa-collage img:nth-child(6){grid-area:f}.melissa-collage img:nth-child(7){grid-area:g}.melissa-collage img:nth-child(8){grid-area:h}.melissa-collage img:nth-child(9){grid-area:i}.melissa-collage img:nth-child(10){grid-area:j}.melissa-collage img:nth-child(11){grid-area:k}
.project:not(.project-empty) .project-art,.project:not(.project-empty) .project-art>span,.project:not(.project-empty)>footer{color:#fff;text-shadow:0 1px 2px rgba(var(--brand-shadow),.62),0 2px 6px rgba(var(--brand-shadow),.32)}.project:not(.project-empty)>span{color:#fff;text-shadow:0 1px 2px rgba(var(--brand-shadow),.55),0 2px 4px rgba(var(--brand-shadow),.24)}.project:not(.project-empty)>footer{border-color:#ffffff66}.project:not(.project-empty)>footer span{color:#fff}

/* Soft shadows use each card’s original hue, darkened by 18%. */
.project.puppy{--brand-shadow:162,191,178}.project.aqua{--brand-shadow:152,180,189}.project.glame{--brand-shadow:181,173,165}.project.aesthetik{--brand-shadow:82,36,135}.project.melissa{--brand-shadow:82,151,153}

/* One Mat full-card collage. */
.project.onemat{background:#527b70;isolation:isolate;--brand-shadow:67,101,92}.onemat-collage{position:absolute;inset:0;z-index:0;display:grid;gap:2px;overflow:hidden;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));grid-template-areas:"a a a b b b" "a a a b b b" "a a a c d d" "e e f c d d" "e e f g g g" "e e f g g g"}.onemat-collage img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}.onemat:before{content:"";position:absolute;inset:0;background:rgba(82,123,112,.4);z-index:1;pointer-events:none}.onemat>span,.onemat>.project-art,.onemat>footer{position:relative;z-index:2}
.onemat-collage img:nth-child(1){grid-area:a}.onemat-collage img:nth-child(2){grid-area:b}.onemat-collage img:nth-child(3){grid-area:c}.onemat-collage img:nth-child(4){grid-area:d}.onemat-collage img:nth-child(5){grid-area:e}.onemat-collage img:nth-child(6){grid-area:f}.onemat-collage img:nth-child(7){grid-area:g}

.onemat-collage{grid-template-areas:"a a b b c c" "a a b b c c" "d e e f f g" "d e e f f g" "h h i j k k" "h h i j k k"}
.onemat-collage img:nth-child(1){grid-area:a}.onemat-collage img:nth-child(2){grid-area:b}.onemat-collage img:nth-child(3){grid-area:c}.onemat-collage img:nth-child(4){grid-area:d}.onemat-collage img:nth-child(5){grid-area:e}.onemat-collage img:nth-child(6){grid-area:f}.onemat-collage img:nth-child(7){grid-area:g}.onemat-collage img:nth-child(8){grid-area:h}.onemat-collage img:nth-child(9){grid-area:i}.onemat-collage img:nth-child(10){grid-area:j}.onemat-collage img:nth-child(11){grid-area:k}

/* Company galleries: preserve card art and provide native accessible links. */
.project>.project-gallery-link{position:absolute;inset:0;z-index:5;display:block;border-radius:inherit}.project-gallery-link:focus-visible{outline:3px solid #f4e740;outline-offset:-5px}.portfolio-image img{display:block}.smm-back{display:block;margin:0 0 24px}.smm-back[hidden]{display:none}.portfolio-page .portfolio-heading h1{overflow-wrap:anywhere}
/* Video collage — landscape films and portrait reels. */
.video-mosaic{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:start}.video-tile{position:relative;grid-column:span 3;aspect-ratio:16/10;overflow:hidden;background:#15271e;border:1px solid #f4e74026;border-radius:4px;isolation:isolate}.video-tile.portrait{grid-column:span 2;aspect-ratio:9/16}.video-tile:nth-child(3){grid-column:span 6;aspect-ratio:21/9}.video-tile>img,.video-tile>iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0}.video-tile.portrait>img{object-fit:cover;transform:scale(1.34)}.video-tile>iframe{z-index:2}.video-tile:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#07130ee6);pointer-events:none;z-index:1}.video-play{position:absolute;inset:0;margin:auto;width:64px;height:64px;border:1px solid #ffffff80;border-radius:50%;color:#fff;background:#14291e80;font-size:22px;cursor:pointer;z-index:3;backdrop-filter:blur(8px)}.video-caption{position:absolute;bottom:18px;left:18px;z-index:1;color:#fff;font-size:14px;letter-spacing:.1em}.video-source,.video-sound{position:absolute;z-index:4;color:#fff;background:#12271ee8;border:1px solid #ffffff50;border-radius:30px;padding:9px 13px;font-size:11px;text-decoration:none;cursor:pointer}.video-source{right:12px;bottom:12px}.video-sound{top:12px;right:12px}.video-sound[hidden],.video-play[hidden]{display:none}.playing .video-caption{visibility:hidden}.video-play:focus-visible,.video-sound:focus-visible,.video-source:focus-visible{outline:3px solid #f4e740;outline-offset:3px}@media(max-width:700px){.video-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.video-tile,.video-tile:nth-child(3){grid-column:span 2;aspect-ratio:16/10}.video-tile.portrait{grid-column:span 1;aspect-ratio:9/16}.video-caption{bottom:52px;left:10px;font-size:11px}.video-source{font-size:10px;padding:7px 10px}} 
/* Compact video portfolio: more work visible at once. */
.video-mosaic{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:start}.video-mosaic .video-tile,.video-mosaic .video-tile:nth-child(3){grid-column:span 1;aspect-ratio:16/10;min-height:200px}.video-mosaic .video-tile.portrait{grid-column:span 1;aspect-ratio:9/14;min-height:0}.video-mosaic .video-play{width:46px;height:46px;font-size:17px}.video-mosaic .video-caption{left:12px;bottom:15px;font-size:11px}.video-mosaic .video-source,.video-mosaic .video-sound{font-size:10px;padding:7px 10px}@media(min-width:1600px){.video-mosaic{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1000px){.video-mosaic{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.video-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.video-mosaic .video-tile,.video-mosaic .video-tile:nth-child(3){grid-column:span 1;aspect-ratio:4/5;min-height:200px}.video-mosaic .video-tile.portrait{aspect-ratio:9/15;min-height:0}.video-mosaic .video-caption{bottom:48px;left:9px}.video-mosaic .video-sound{max-width:calc(100% - 16px);right:8px;top:8px;font-size:9px}} 
/* Masonry columns: every card follows the previous one without row gaps. */
.portfolio-grid.video-mosaic{display:block;columns:4;column-gap:8px}.video-mosaic .video-tile,.video-mosaic .video-tile:nth-child(3){display:block;width:100%;break-inside:avoid;page-break-inside:avoid;margin:0 0 8px;aspect-ratio:4/3;min-height:200px;border:0;border-radius:3px}.video-mosaic .video-tile.portrait{aspect-ratio:9/16;min-height:0}.video-mosaic .instagram-tile{aspect-ratio:9/17}.video-mosaic .video-tile>img{transition:filter .25s,transform .5s}.video-mosaic .video-tile:hover>img{filter:brightness(1.08)}@media(min-width:1600px){.portfolio-grid.video-mosaic{columns:5}}@media(max-width:1000px){.portfolio-grid.video-mosaic{columns:3}}@media(max-width:700px){.portfolio-grid.video-mosaic{columns:2;column-gap:6px}.video-mosaic .video-tile,.video-mosaic .video-tile:nth-child(3){margin-bottom:6px;aspect-ratio:4/5;min-height:200px}.video-mosaic .video-tile.portrait{aspect-ratio:9/16;min-height:0}.video-mosaic .instagram-tile{aspect-ratio:9/17}}
/* Larger YouTube films, compact Instagram windows; crop social metadata. */
.portfolio-grid.video-mosaic{display:grid;columns:auto;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row dense;grid-auto-rows:clamp(260px,26vw,360px);gap:8px;align-items:stretch}.video-mosaic .video-tile,.video-mosaic .video-tile:nth-child(3),.video-mosaic .video-tile.portrait{width:100%;height:100%;min-height:0;aspect-ratio:auto;margin:0;grid-column:span 1}.video-mosaic .video-tile.youtube-tile{grid-column:span 2}.video-mosaic .instagram-tile>iframe{top:-54px;height:calc(100% + 380px);bottom:auto}.video-mosaic .instagram-tile{overflow:hidden}.video-mosaic .instagram-tile:after{display:none}@media(min-width:1600px){.portfolio-grid.video-mosaic{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:330px}}@media(max-width:1000px){.portfolio-grid.video-mosaic{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:290px}}@media(max-width:700px){.portfolio-grid.video-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:260px;gap:6px}.video-mosaic .video-tile.youtube-tile{grid-column:span 2}.video-mosaic .instagram-tile>iframe{top:-54px;height:calc(100% + 380px)}}
.packages{background:var(--paper)}.packages-intro{max-width:620px;font-size:16px;line-height:1.7;margin:24px 0 46px;color:#bdd5c9}.package-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}.package-card{display:flex;flex-direction:column;position:relative;padding:28px 23px 23px;border:1px solid #003f3026;border-radius:20px;background:#ffffff65;transition:transform .25s,box-shadow .25s}.package-card:hover{transform:translateY(-6px);box-shadow:0 18px 45px #263d1312}.package-top{min-height:30px;display:flex;align-items:start;justify-content:space-between;gap:8px}.package-number{font:10px monospace;letter-spacing:.08em;opacity:.6}.package-badge{font-size:8px;font-weight:800;background:var(--ink);color:var(--lime);padding:7px 8px;border-radius:20px;white-space:nowrap}.package-card h3{font-size:30px;letter-spacing:-.06em;margin:24px 0 12px;font-weight:600}.package-subtitle{font-size:13px;line-height:1.6;min-height:44px;margin:0 0 27px;max-width:230px}.package-price{font-size:clamp(38px,3.5vw,60px);font-weight:500;letter-spacing:-.07em;line-height:1.1}.package-price>span{font-size:22px;vertical-align:top;display:inline-block;margin:5px 0 0 7px}.package-period{font:11px monospace;margin:10px 0 24px;opacity:.65}.package-card ul{padding:24px 0 28px;margin:0;list-style:none;border-top:1px solid #003f3026}.package-card li{position:relative;padding:0 0 15px 20px;font-size:12px;line-height:1.6}.package-card li:before{content:'✓';position:absolute;left:0;top:0;font-size:13px;font-weight:800;color:#537a22}.package-cta{margin-top:auto;display:flex;align-items:center;justify-content:space-between;border:1px solid #003f3055;padding:15px 17px;border-radius:40px;font-size:12px;font-weight:700;transition:background .2s}.package-cta:hover{background:var(--ink);color:var(--lime)}.package-best{background:var(--lime);border-color:var(--lime);box-shadow:0 12px 32px #9bcf3226}.package-best .package-cta{background:var(--ink);color:var(--lime)}.package-best .package-cta:hover{background:#35442a}.package-note{max-width:940px;font-size:11px;line-height:1.8;color:#b1ccbf;margin:25px 0 0}@media(max-width:1100px){.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.package-price{font-size:58px}.package-subtitle{min-height:0}}@media(max-width:600px){.package-grid{grid-template-columns:1fr;gap:18px}.package-card{padding:26px}.package-card h3{margin-top:18px}.package-subtitle{max-width:none}.packages-intro{font-size:14px;margin-bottom:30px}.package-card li{font-size:13px}.package-badge{font-size:9px}.package-cta{font-size:13px}}@media(prefers-reduced-motion:reduce){.package-card{transition:none}.package-card:hover{transform:none}}

.gift-tag{position:absolute;right:14px;top:-22px;width:116px;min-height:146px;padding:30px 10px 14px;background:#e43d40;color:#fff;clip-path:polygon(18% 0,82% 0,100% 16%,100% 100%,0 100%,0 16%);transform:rotate(8deg);transform-origin:50% 10%;text-align:center;box-shadow:0 9px 20px #0004;z-index:2;display:flex;flex-direction:column;gap:4px;pointer-events:none}.gift-tag:before{content:'';position:absolute;width:10px;height:10px;border:3px solid #ffb2a9;border-radius:50%;background:#003f30;top:9px;left:calc(50% - 5px)}.gift-tag b{font-size:36px;line-height:1}.gift-tag span{font-size:12px;font-weight:700}.gift-tag small{font-size:10px!important;letter-spacing:1px;margin:2px 0 0!important}.package-card:has(.gift-tag){position:relative;overflow:visible;padding-top:130px}.package-card:has(.gift-tag):before{content:'';position:absolute;right:74px;top:-43px;height:48px;width:2px;background:#a78b65;transform:rotate(8deg);z-index:3}

.package-card .gift-tag{transform:rotate(0);transform-origin:50% 14px}
.package-card:has(.gift-tag):before{right:71px;top:-43px;height:35px;transform:none}

/* Homepage Premium: anchor and braided cord stay inside its card. */
#packages .package-card:has(.gift-tag){position:relative;padding-top:168px}
#packages .package-card .gift-tag{top:30px;right:14px;transform:rotate(0);transform-origin:50% 14px}
#packages .package-card:has(.gift-tag):before{right:69px;top:12px;width:6px;height:36px;transform:none;border:1px solid #8b663d;border-radius:4px;background:repeating-linear-gradient(135deg,#72502e 0 2px,#d8b884 2px 4px,#ad824e 4px 6px);box-shadow:1px 0 2px #0005;z-index:3}
#packages .package-card:has(.gift-tag):after{content:'';position:absolute;right:67px;top:10px;width:10px;height:7px;border:1px solid #79522e;border-radius:50%;background:#c7a16b;box-shadow:0 1px 2px #0004;z-index:4}
/* Supplied odda marks: use the light lettering on coloured/dark surfaces. */
a.brand{position:relative;display:inline-flex;align-items:center;flex:0 0 auto;width:174px;height:72px;line-height:1;letter-spacing:normal}a.brand .brand-logo{display:block;width:100%;height:100%;object-fit:contain;padding:0}a.brand .brand-logo-white{display:none}body:has(#world) header:not(.over-content) .brand-logo-dark,.contact .brand-logo-dark,.calculator-page .brand-logo-dark{display:none}body:has(#world) header:not(.over-content) .brand-logo-white,.contact .brand-logo-white,.calculator-page .brand-logo-white{display:block}.footer a.brand,.portfolio-footer a.brand{width:230px;height:105px}.service-page a.brand{width:174px}.brand:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:5px}@media(max-width:700px){header a.brand,.service-page header a.brand{width:125px;height:57px}header{padding-top:10px;padding-bottom:10px}.head-right{gap:14px}.footer a.brand,.portfolio-footer a.brand{width:190px;height:87px}}@media(max-width:420px){header a.brand,.service-page header a.brand{width:105px}.head-right{gap:9px}}
.contact a.brand .brand-logo-dark,.calculator-page a.brand .brand-logo-dark{display:none}.contact a.brand .brand-logo-white,.calculator-page a.brand .brand-logo-white{display:block}
/* Optical alignment follows the odda wordmark rather than the mascot. */
a.brand,.service-page a.brand{width:150px;height:66px}a.brand .brand-logo{transform:translateY(-12%)}.footer a.brand,.portfolio-footer a.brand{width:200px;height:91px}@media(max-width:700px){header a.brand,.service-page header a.brand{width:110px;height:51px}.footer a.brand,.portfolio-footer a.brand{width:166px;height:76px}}@media(max-width:420px){header a.brand,.service-page header a.brand{width:94px;height:45px}}
/* A growing audience beneath a translucent lime veil. */
#contact{position:relative;isolation:isolate;overflow:hidden;background:#354825;min-height:800px;color:#10200b}
#contact .growth-scene{position:absolute;inset:0;z-index:-3;background:radial-gradient(ellipse at 78% 35%,#829e56 0%,#263c25 65%,#172a20 100%);pointer-events:none}
.growth-scene canvas{display:block;width:100%;height:100%}
#contact .growth-tint{position:absolute;inset:0;z-index:-2;background:rgba(210,255,67,.45);pointer-events:none}
#contact:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(210,255,67,.82),rgba(210,255,67,.42) 38%,transparent 76%);pointer-events:none}
#contact h2{position:relative;max-width:900px;text-shadow:0 1px 24px #d2ff4320}
#contact .wa{position:relative;background:#13200c;color:#fff;border-color:#13200c}
#contact .footer{position:relative;margin-top:150px}
@media(max-width:700px){#contact{min-height:850px}#contact .growth-scene{inset:200px -170px 80px -130px}#contact:after{background:linear-gradient(180deg,rgba(210,255,67,.88),rgba(210,255,67,.6) 40%,transparent 72%)}#contact .footer{margin-top:290px}#contact h2{font-size:clamp(48px,12vw,75px)}}
.growth-backup{position:absolute;inset:0;width:100%;height:100%;display:block}.growth-scene:has(canvas) .growth-backup{display:none}.growth-cluster{animation:audience-float 7s ease-in-out infinite;animation-delay:var(--delay)}.growth-message{animation:message-glow 4s ease-in-out infinite;animation-delay:var(--delay)}.growth-trail{stroke-dasharray:12 9;animation:trail-flow 6s linear infinite}@keyframes audience-float{50%{translate:0 -7px}}@keyframes message-glow{50%{opacity:.45}}@keyframes trail-flow{to{stroke-dashoffset:-126}}@media(prefers-reduced-motion:reduce){.growth-cluster,.growth-message,.growth-trail{animation:none}}
#contact>.label,#contact>h2,#contact>.contact-phone,#contact>.wa,#contact>.footer{position:relative;z-index:1;opacity:1;transform:none}

/* Align the lettering, leaving the mascot free to extend above it. */
.footer,.portfolio-footer{align-items:center}.footer a.brand .brand-logo,.portfolio-footer a.brand .brand-logo{transform:translateY(-10%)}
html[lang=en] .head-right{gap:clamp(8px,1.3vw,22px)}html[lang=en] .package-card{min-width:0}html[lang=en] .package-card h3{overflow-wrap:normal}html[lang=en] .gift-tag span{font-size:11px}html[lang=en] .scene-copy h1,html[lang=en] .scene-copy h2{font-size:clamp(48px,7vw,110px)}html[lang=en] #contact h2{font-size:clamp(56px,8vw,125px)}#lang,#language{white-space:nowrap;font-size:11px}html[lang=en] .package-cta{white-space:normal}html[lang=en] .service-list summary{overflow-wrap:anywhere}@media(max-width:700px){html[lang=en] .head-right>a:not(.desktop-nav){font-size:11px}html[lang=en] .scene-copy h1,html[lang=en] .scene-copy h2{font-size:clamp(42px,11vw,72px)}}
