/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.static{position:static}}:root{color-scheme:light;--page:#f3f7fb;--surface:#eaf1f8;--surface-strong:#fff;--ink:#0f172a;--muted:#64748b;--line:#d6e1ec;--green:#123b63;--green-dark:#0b2742;--sage:#e0f2fe;--terracotta:#2563eb;--sand:#c8d9eb;--gold:#38bdf8;--shadow:0 28px 70px #0f172a1f;background:var(--page);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 82% 18%, #38bdf829, transparent 34%), linear-gradient(180deg, #f8fbfff0, #f3f7fbfa 42%), var(--page);min-width:320px;color:var(--ink);margin:0}body.modal-open{overflow:hidden}body:before{z-index:-1;content:"";background-image:linear-gradient(#123b630e 1px,#0000 1px),linear-gradient(90deg,#123b630e 1px,#0000 1px);background-size:44px 44px;position:fixed;inset:0;mask-image:linear-gradient(#000,#0000 72%)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.site-nav{z-index:20;backdrop-filter:blur(18px);background:#f3f7fbdb;border-bottom:1px solid #d6e1ecd1;justify-content:space-between;align-items:center;gap:24px;width:min(1180px,100% - 32px);min-height:88px;margin:0 auto;padding:18px 0;display:flex;position:sticky;top:0}.brand,.nav-links,.hero-actions,.contact-actions{align-items:center;display:flex}.brand{letter-spacing:0;gap:12px;font-size:.95rem;font-weight:650}.brand-mark{background:var(--green);color:#fff;border-radius:12px;place-items:center;width:38px;height:38px;font-size:.82rem;font-weight:650;display:grid}.nav-links{color:var(--muted);gap:30px;font-size:.94rem;font-weight:550}.nav-links a{transition:color .16s}.nav-links a:hover{color:var(--ink)}.nav-cta,.button{border-radius:999px;justify-content:center;align-items:center;min-height:44px;font-size:.94rem;font-weight:600;transition:transform .17s,background .17s,border-color .17s,color .17s;display:inline-flex}.nav-cta{background:var(--green);color:#fff;padding:0 18px;box-shadow:0 10px 22px #123b632e}.button{padding:0 22px}.nav-cta:hover,.button:hover{transform:translateY(-1px)}.button-primary{border:1px solid var(--green);background:var(--green);color:#fff}.button-primary:hover{background:var(--green-dark)}.button-secondary{border:1px solid var(--line);color:var(--ink);background:#ffffff94}.button-secondary:hover{border-color:var(--ink)}.hero,.section,.case-hero,.case-facts,.case-story,.case-wide-image,.case-decisions,.case-result{width:min(1180px,100% - 32px);margin:0 auto}.hero{grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);align-items:center;gap:62px;min-height:calc(100vh - 88px);padding:56px 0 84px;display:grid}.hero-copy{max-width:680px}.eyebrow{color:var(--terracotta);letter-spacing:.16em;text-transform:uppercase;margin:0 0 18px;font-size:.78rem;font-weight:700}.hero h1,.section-heading h2,.contact-section h2,.case-copy h1,.case-story h2,.case-decisions h2,.case-result h2{color:var(--ink);letter-spacing:0;margin:0;font-weight:600;line-height:1.04}.hero h1{max-width:720px;font-size:clamp(3rem,6.2vw,5.7rem)}.hero-lead{max-width:610px;color:var(--muted);margin:24px 0 0;font-size:clamp(1.05rem,1.7vw,1.22rem);line-height:1.72}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px}.hero-visual{min-height:540px;position:relative}.visual-glow{filter:blur(70px);background:#38bdf838;border-radius:999px;height:360px;position:absolute;inset:26px -18px auto 44px}.dashboard-card{border:1px solid var(--line);background:var(--surface-strong);box-shadow:var(--shadow);border-radius:28px;position:relative;overflow:hidden}.dashboard-bar{background:#f8fbff;border-bottom:1px solid #e2eaf3;align-items:center;gap:8px;height:54px;padding:0 20px;display:flex}.dashboard-bar span{border-radius:999px;width:11px;height:11px}.dashboard-bar span:first-child{background:#60a5fa}.dashboard-bar span:nth-child(2){background:#38bdf8}.dashboard-bar span:nth-child(3){background:#0f766e}.dashboard-layout{grid-template-columns:.74fr 1.26fr;gap:18px;padding:20px;display:grid}.dashboard-sidebar{background:var(--green);border-radius:22px;min-height:430px;padding:24px}.sidebar-dot{background:#fff3;border-radius:999px;width:36px;height:36px;margin-bottom:48px}.sidebar-line{background:#fff3;border-radius:999px;width:82%;height:10px;margin-bottom:16px;display:block}.sidebar-line.short{width:58%}.sidebar-line.active{background:#ffffff94}.dashboard-content{gap:18px;display:grid}.dashboard-header,.metric-box,.chart-box,.floating-note{background:var(--surface-strong);border:1px solid #e2eaf3;border-radius:22px}.dashboard-header{justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;display:flex}.dashboard-header span,.metric-box span,.floating-note span{color:var(--muted);font-size:.78rem;font-weight:600;display:block}.dashboard-header strong{margin-top:4px;font-size:1.08rem;font-weight:650;display:block}.dashboard-header p{background:var(--sage);color:var(--green);border-radius:999px;margin:0;padding:7px 11px;font-size:.78rem;font-weight:650}.metric-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.metric-box{background:var(--page);padding:18px}.metric-box strong{margin-top:14px;font-size:clamp(1.45rem,2.2vw,2.15rem);font-weight:600;line-height:1.05;display:block}.chart-box{align-items:end;gap:12px;min-height:190px;padding:22px;display:flex}.chart-box div{background:var(--green);border-radius:10px 10px 0 0;flex:1;min-width:18px}.chart-box div:nth-child(odd){background:var(--gold)}.floating-note{padding:16px 18px;position:absolute;bottom:30px;right:18px;box-shadow:0 16px 36px #1717171a}.floating-note strong{margin-top:4px;font-weight:650;display:block}.section{padding:88px 0}.intro-section{padding-top:20px}.intro-section p{max-width:940px;color:var(--ink);margin:0;font-size:clamp(1.8rem,4vw,3.45rem);font-weight:500;line-height:1.12}.section-heading{max-width:760px;margin-bottom:34px}.inline-heading{grid-template-columns:minmax(0,.72fr) minmax(280px,.58fr);align-items:end;gap:34px;max-width:none;display:grid}.section-heading h2,.contact-section h2{font-size:clamp(2rem,4vw,3.65rem)}.section-heading>p:not(.eyebrow),.inline-heading>p,.project-copy>p,.service-card>p,.process-card p,.contact-card p,.story-text p,.case-shot-card p,.case-result p{color:var(--muted);line-height:1.72}.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.service-card,.process-card,.contact-card{border:1px solid var(--line);background:#ffffff8f;border-radius:18px}.service-card{min-height:286px;padding:24px}.service-card h3,.process-card h3,.project-copy h3,.case-shot-card h3{letter-spacing:0;margin:0;font-weight:600}.service-card h3{font-size:1.25rem}.service-card ul,.project-copy ul{flex-wrap:wrap;gap:8px;margin:24px 0 0;padding:0;list-style:none;display:flex}.service-card li,.project-copy li{background:var(--sage);color:var(--green);border-radius:999px;padding:7px 10px;font-size:.8rem;font-weight:650}.projects-section{border-top:1px solid #d6e1ece0;border-bottom:1px solid #d6e1ece0}.project-list{gap:18px;display:grid}.project-card{border:1px solid var(--line);background:#ffffff9e;border-radius:24px;grid-template-columns:minmax(280px,.9fr) minmax(0,.75fr);align-items:stretch;gap:28px;padding:18px;display:grid}.project-media{background:linear-gradient(135deg, #123b631a, #38bdf82e), var(--surface);border-radius:18px;min-height:360px;overflow:hidden}.project-media img{object-fit:cover;object-position:left top;width:100%;height:100%;min-height:360px}.project-media>div{text-align:center;place-content:center;min-height:360px;padding:28px;display:grid}.project-media span,.project-label{color:var(--terracotta);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:700}.project-media strong{margin-top:10px;font-size:clamp(2rem,4vw,3.2rem);font-weight:550;line-height:1.05;display:block}.project-copy{align-self:center;padding:22px 8px}.project-copy h3{margin-top:10px;font-size:clamp(1.8rem,3vw,3rem)}.text-link{color:var(--green);margin-top:26px;font-weight:650;display:inline-flex}.text-link:after{content:"→";margin-left:8px}.text-link.muted{color:var(--muted)}.process-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.process-card{min-height:220px;padding:24px}.process-card span{color:var(--terracotta);font-size:.82rem;font-weight:700}.process-card h3{margin-top:62px;font-size:1.25rem}.contact-section{grid-template-columns:minmax(0,.9fr) minmax(320px,.7fr);align-items:end;gap:34px;display:grid}.contact-card{padding:28px}.contact-actions{flex-wrap:wrap;gap:12px;margin-top:24px}.case-body{background:var(--page)}.case-hero{grid-template-columns:minmax(0,.8fr) minmax(420px,1fr);align-items:center;gap:54px;min-height:calc(100vh - 88px);padding:58px 0 84px;display:grid}.back-link{color:var(--green);margin-bottom:28px;font-weight:650;display:inline-flex}.case-copy h1{max-width:680px;font-size:clamp(2.75rem,5.8vw,5.3rem)}.case-copy>p:not(.eyebrow){max-width:600px;color:var(--muted);margin-top:22px;font-size:1.1rem;line-height:1.72}.case-cover{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:hidden}.case-cover img{object-fit:contain;object-position:center;background:0 0;width:100%;height:min(620px,68vh);padding:0}.case-facts{border:1px solid var(--line);background:var(--line);border-radius:20px;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.case-facts div{background:#ffffff9e;min-height:120px;padding:22px}.case-facts span{color:var(--muted);font-size:.82rem;font-weight:600}.case-facts strong{margin-top:16px;font-size:1.08rem;font-weight:600;display:block}.case-story,.case-result{grid-template-columns:minmax(0,.78fr) minmax(0,1fr);align-items:start;gap:44px;padding:88px 0;display:grid}.story-text{gap:18px;display:grid}.story-text p,.case-result p{margin:0;font-size:1.05rem}.case-wide-image{border:1px solid var(--line);background:var(--surface-strong);box-shadow:var(--shadow);border-radius:28px;overflow:hidden}.case-wide-image img{object-fit:cover;object-position:left top;width:100%;max-height:760px}.case-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.case-shot-card{border:1px solid var(--line);background:#ffffff9e;border-radius:22px;overflow:hidden}.case-shot-button{cursor:zoom-in;background:#fff;border:0;width:100%;padding:0;display:block}.case-shot-button img{aspect-ratio:16/10;object-fit:cover;object-position:left top;width:100%;transition:transform .22s}.case-shot-button:hover img{transform:scale(1.02)}.case-shot-card div{padding:20px}.case-shot-card h3{font-size:1.2rem}.case-decisions{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,.74fr) minmax(0,1fr);align-items:start;gap:44px;padding:88px 0;display:grid}.case-decisions ol{gap:12px;margin:0;padding:0;list-style:none;display:grid}.case-decisions li{border:1px solid var(--line);color:var(--ink);background:#ffffff9e;border-radius:18px;padding:20px;line-height:1.62}.case-result{align-items:center}.case-result .button{margin-top:24px}.image-modal{z-index:100;backdrop-filter:blur(12px);background:#080d17c7;justify-content:center;align-items:center;padding:32px 64px;display:none;position:fixed;inset:0}.image-modal.is-open{display:flex}.modal-stage{grid-template-rows:minmax(0,1fr) auto;gap:18px;width:min(1420px,100%);height:min(92vh,940px);display:grid;position:relative}.modal-figure{pointer-events:none;grid-template-rows:minmax(0,1fr) auto;gap:12px;min-height:0;margin:0;display:grid}.modal-figure img{object-fit:contain;object-position:center;pointer-events:auto;width:100%;height:100%;min-height:0}.modal-figure figcaption{color:#ffffffd1;text-align:center;font-size:1.02rem;font-weight:600}.modal-close,.modal-arrow,.modal-thumb{cursor:pointer;border:0}.modal-close,.modal-arrow{z-index:2;color:#fff;background:0 0;border-radius:999px;place-items:center;transition:opacity .17s,transform .17s;display:grid;position:absolute}.modal-close:hover,.modal-arrow:hover{opacity:.72;transform:scale(1.04)}.modal-close{width:38px;height:38px;font-size:2rem;line-height:1;top:4px;right:4px}.modal-arrow{width:56px;height:56px;font-size:3.1rem;font-weight:300;top:43%}.modal-arrow-left{left:8px}.modal-arrow-right{right:8px}.modal-thumbs{background:0 0;border:0;border-radius:0;justify-content:center;gap:10px;max-width:min(920px,100%);min-height:70px;margin:0 auto;padding:0;display:flex;overflow-x:auto}.modal-thumb{opacity:.58;background:0 0;border:2px solid #0000;border-radius:8px;flex:0 0 78px;padding:0;transition:border-color .17s,opacity .17s,transform .17s;overflow:hidden}.modal-thumb:hover,.modal-thumb.is-active{border-color:var(--gold);opacity:1;transform:translateY(-1px)}.modal-thumb img{object-fit:cover;object-position:left top;width:100%;height:54px}@media (width<=1040px){.hero,.project-card,.contact-section,.case-hero,.case-story,.case-decisions,.case-result{grid-template-columns:1fr}.hero{min-height:auto}.service-grid,.process-grid,.case-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.site-nav{flex-wrap:wrap;min-height:auto;position:static}.nav-links{order:3;gap:16px;width:100%;padding-bottom:4px;overflow-x:auto}.nav-cta{display:none}.hero,.section,.case-hero,.case-story,.case-decisions,.case-result{padding:54px 0}.hero h1,.case-copy h1{font-size:clamp(2.7rem,13vw,4.25rem)}.hero-visual{min-height:auto}.dashboard-layout{grid-template-columns:1fr}.dashboard-sidebar{display:none}.floating-note{width:max-content;margin:14px 0 0 auto;position:static}.inline-heading,.service-grid,.process-grid,.case-facts,.case-gallery-grid{grid-template-columns:1fr}.intro-section p{font-size:clamp(1.65rem,8vw,2.55rem)}.service-card,.process-card{min-height:auto}.process-card h3{margin-top:32px}.project-card{border-radius:18px;padding:12px}.project-media,.project-media img,.project-media>div{min-height:260px}.case-cover,.case-wide-image{border-radius:0}.case-cover img{height:360px;padding:0}.case-shot-button img{aspect-ratio:4/3}.image-modal{padding:12px 18px}.modal-stage{height:94vh}.modal-close{width:40px;height:40px}.modal-arrow{width:42px;height:42px;font-size:1.9rem;top:43%;bottom:auto}.modal-arrow-left{left:-8px}.modal-arrow-right{right:-8px}.modal-thumb{flex-basis:72px}.modal-thumb img{height:50px}}
