:root{--ink:#0c3358;--ink-soft:#3d6180;--ink-faint:#6a89a4;--ground:#eef5fb;--ground-deep:#dfebf6;--paper:#fff;--accent:#17a34a;--accent-deep:#0e6b33;--accent-wash:#e6f6ec;--rule:#b6cadd;--rule-soft:#dae7f2;--accent-bright:#56cc87;--wa:#25d366;--wa-deep:#128c7e;--on-ink:#f1f7fc;--on-ink-soft:#a8c4dc;--on-ink-faint:#93b3ce;--ink-line:#1f4f7d;--ink-raise:#113f68;--rail:64px;--shell:1140px;--display:"Suez One", Georgia, serif;--body:"Assistant", system-ui, -apple-system, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;--ease:cubic-bezier(.2, .7, .3, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:96px}body{background:var(--ground);color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;font-weight:400;line-height:1.7;overflow-x:hidden}h1,h2,h3{font-family:var(--display);letter-spacing:-.01em;margin:0;font-weight:400;line-height:1.06}p,blockquote,figure{margin:0}a{color:inherit}img,svg{max-width:100%;display:block}button{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:2px}.shell{width:100%;max-width:var(--shell);margin-inline:auto;padding-inline:clamp(20px,5vw,56px)}.page{padding-inline-end:0}.eyebrow{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-deep);align-items:center;gap:10px;font-size:.7rem;font-weight:500;display:flex}.eyebrow:before{content:"";background:var(--accent);flex:none;width:26px;height:2px}.skip{inset-inline-start:-9999px;z-index:200;background:var(--ink);color:var(--paper);padding:12px 20px;position:absolute;top:0}.skip:focus{inset-inline-start:0}.topbar{z-index:60;background:color-mix(in srgb, var(--ground) 86%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--rule-soft);position:sticky;top:0}.topbar__inner{align-items:center;gap:20px;min-height:66px;display:flex}.topbar__mark{flex:none;align-items:baseline;gap:10px;text-decoration:none;display:flex}.topbar__name{font-family:var(--display);letter-spacing:-.01em;font-size:1.15rem}.topbar__trade{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);font-size:.68rem}.topbar__nav{gap:26px;margin-inline-start:auto;display:flex}.topbar__link{color:var(--ink-soft);transition:color .2s var(--ease);padding-block:4px;font-size:.95rem;font-weight:600;text-decoration:none;position:relative}.topbar__link:after{content:"";inset-inline:0;background:var(--accent);height:2px;transform-origin:var(--origin,right);transition:transform .28s var(--ease);position:absolute;bottom:0;transform:scaleX(0)}.topbar__link:hover{color:var(--ink)}.topbar__link:hover:after{transform:scaleX(1)}.langtoggle{border:1.5px solid var(--ink);cursor:pointer;font-family:var(--mono);letter-spacing:.1em;transition:background .22s var(--ease), color .22s var(--ease);background:0 0;border-radius:999px;align-items:center;gap:7px;margin-inline-start:auto;padding:6px 14px;font-size:.74rem;font-weight:600;display:inline-flex}.topbar__nav+.langtoggle{margin-inline-start:0}.langtoggle:hover{background:var(--ink);color:var(--paper)}.langtoggle svg{width:14px;height:14px}.rail{width:var(--rail);z-index:55;background:var(--paper);border-left:1px solid var(--rule);pointer-events:none;direction:ltr;position:fixed;top:0;bottom:0;right:0}.rail__ticks{background-image:linear-gradient(to bottom, var(--rule-soft) 1px, transparent 1px), linear-gradient(to bottom, var(--rule) 1px, transparent 1px);background-position:100% 0;background-repeat:repeat-y;background-size:13px 10px,27px 50px;position:absolute;inset:0}.rail__fill{top:0;background:var(--accent-wash);border-bottom:2px solid var(--accent);transition:height 80ms linear;position:absolute;inset-inline:0}.rail__marks{position:absolute;inset:0}.rail__mark{align-items:center;gap:6px;padding-inline-start:8px;display:flex;position:absolute;inset-inline:0;transform:translateY(-50%)}.rail__mark span{writing-mode:vertical-rl;text-orientation:mixed;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;transition:color .3s var(--ease);font-size:.6rem;font-weight:500}.rail__mark:after{content:"";background:var(--rule);width:30px;height:2px;transition:background .3s var(--ease);position:absolute;inset-inline-end:0}.rail__mark[data-active=true] span{color:var(--accent-deep);font-weight:600}.rail__mark[data-active=true]:after{background:var(--accent)}.rail__readout{inset-inline:0;text-align:center;font-family:var(--mono);color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:.62rem;font-weight:600;position:absolute;bottom:14px}.railbar{display:none}.hero{padding-block:clamp(56px,10vw,112px) clamp(48px,8vw,92px);position:relative;overflow:hidden}.hero:before{content:"";background-image:linear-gradient(to right, var(--rule-soft) 1px, transparent 1px), linear-gradient(to bottom, var(--rule-soft) 1px, transparent 1px);opacity:.75;pointer-events:none;background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 90% at 78% 0,#000 0%,#0000 72%);mask-image:radial-gradient(120% 90% at 78% 0,#000 0%,#0000 72%)}.hero__inner{position:relative}.hero__grid{flex-wrap:wrap;align-items:center;gap:clamp(34px,5vw,72px);display:flex}.hero__copy{flex:440px;min-width:0}.portrait{flex:0 340px;min-width:0}.portrait figure{padding-block-end:14px;padding-inline-start:14px;position:relative}.portrait figure:before{content:"";background:var(--accent);width:calc(100% - 14px);height:calc(100% - 34px);position:absolute;inset-block-end:0;inset-inline-start:0}.portrait img{aspect-ratio:4/5;object-fit:cover;object-position:50% 28%;border:2px solid var(--ink);filter:saturate(1.06)contrast(1.02);width:100%;position:relative}.portrait figcaption{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-faint);margin-top:12px;font-size:.66rem;position:relative}.hero__name{margin-top:22px;font-size:clamp(3.4rem,12vw,8rem);line-height:.92}.hero__trade{font-family:var(--mono);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:14px;margin-top:16px;font-size:clamp(.76rem,1.6vw,.95rem);font-weight:500;display:flex}.hero__trade:after{content:"";background:var(--rule);flex:1;height:1px}.hero__claim{font-family:var(--display);color:var(--accent-deep);max-width:16ch;margin-top:clamp(26px,4vw,40px);font-size:clamp(1.75rem,4.6vw,3.1rem);line-height:1.14}.hero__lede{max-width:52ch;color:var(--ink-soft);margin-top:20px;font-size:clamp(1.05rem,1.6vw,1.2rem)}.hero__actions{flex-wrap:wrap;gap:14px;margin-top:34px;display:flex}.hero__stats{border-top:2px solid var(--ink);flex-wrap:wrap;margin-top:clamp(48px,7vw,76px);display:flex}.hero__stat{border-inline-start:1px solid var(--rule);flex:150px;padding:20px 4px 0}.hero__stat:first-child{border-inline-start:0;padding-inline-start:0}.hero__stat:not(:first-child){padding-inline-start:22px}.hero__statvalue{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:clamp(2rem,4vw,2.7rem);line-height:1}.hero__statlabel{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-faint);margin-top:6px;font-size:.68rem}.btn{border:2px solid var(--ink);cursor:pointer;transition:transform .18s var(--ease), box-shadow .18s var(--ease), background .18s var(--ease), color .18s var(--ease);background:0 0;border-radius:2px;align-items:center;gap:10px;padding:14px 26px;font-size:1rem;font-weight:700;text-decoration:none;display:inline-flex}.btn svg{flex:none;width:19px;height:19px}.btn--primary{background:var(--ink);color:var(--paper);border-color:var(--ink);box-shadow:5px 5px 0 var(--accent)}.btn--primary:hover{box-shadow:2px 2px 0 var(--accent);transform:translate(2px,2px)}.btn--ghost:hover{background:var(--ink);color:var(--paper)}.btn--wa{background:var(--wa);border-color:var(--ink);color:var(--ink);box-shadow:5px 5px 0 var(--ink)}.btn--wa:hover{box-shadow:2px 2px 0 var(--ink);transform:translate(2px,2px)}.services{background:var(--ground-deep);border-block:1px solid var(--rule);padding-block:clamp(64px,9vw,108px);position:relative}.services:before{content:"";background-image:radial-gradient(circle, color-mix(in srgb, var(--ink) 16%, transparent) 1.6px, transparent 1.6px);opacity:.5;pointer-events:none;background-size:22px 22px;position:absolute;inset:0}.services__inner{position:relative}.sectionhead{max-width:60ch}.sectionhead h2{margin-top:16px;font-size:clamp(2rem,5vw,3.2rem)}.sectionhead p{color:var(--ink-soft);margin-top:18px;font-size:1.08rem}.services__grid{background:var(--rule);border:1px solid var(--rule);grid-template-columns:repeat(auto-fit,minmax(272px,1fr));gap:2px;margin-top:clamp(40px,5vw,60px);display:grid}.jobcard{background:var(--paper);transition:background .24s var(--ease);padding:30px 26px 32px;position:relative}.jobcard:before{content:"";top:0;background:var(--accent);height:3px;transform-origin:var(--origin,right);transition:transform .3s var(--ease);position:absolute;inset-inline:0;transform:scaleX(0)}.jobcard:hover:before{transform:scaleX(1)}.jobcard:hover{background:#fff}.jobcard__top{justify-content:space-between;align-items:center;gap:14px;display:flex}.jobcard__icon{width:42px;height:42px;color:var(--accent-deep)}.jobcard__num{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:.66rem;font-weight:600}.jobcard h3{margin-top:20px;font-size:1.32rem}.jobcard p{color:var(--ink-soft);margin-top:12px;font-size:1rem}.services__note{background:var(--accent-wash);border-inline-start:3px solid var(--accent);color:var(--ink-soft);align-items:flex-start;gap:12px;max-width:74ch;margin-top:30px;padding:16px 20px;font-size:.97rem;display:flex}.services__note svg{width:19px;height:19px;color:var(--accent-deep);flex:none;margin-top:4px}.gallery{background:var(--ground);padding-block:clamp(64px,9vw,108px)}.gallery__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,28px);margin-top:clamp(40px,5vw,60px);display:grid}.shot figure{flex-direction:column;height:100%;display:flex}.shot img{object-fit:cover;background:var(--ground);border:2px solid var(--ink);filter:saturate(1.05);width:100%}.shot--tall img{aspect-ratio:3/4}.shot--wide img{aspect-ratio:4/3}.shot figcaption{border-top:2px solid var(--accent);grid-template-columns:auto 1fr;column-gap:10px;margin-top:14px;padding-top:12px;display:grid}.shot__num{font-family:var(--mono);letter-spacing:.1em;color:var(--accent-deep);font-variant-numeric:tabular-nums;grid-row:span 2;padding-top:4px;font-size:.66rem;font-weight:600}.shot__title{font-weight:700;line-height:1.4}.shot__body{color:var(--ink-soft);font-size:.95rem;line-height:1.6}@media (width<=900px){.gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shot--wide{grid-column:span 2}}@media (width<=620px){.gallery__grid{grid-template-columns:1fr}.shot--wide{grid-column:auto}}.reviews{background:var(--paper);padding-block:clamp(64px,9vw,108px)}.reviews__grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(24px,3vw,34px);margin-top:clamp(40px,5vw,60px);display:grid}.review{border-top:2px solid var(--ink);flex-direction:column;padding-top:22px;display:flex}.review__stars{color:var(--accent);gap:3px;display:flex}.review__stars svg{width:15px;height:15px}.review__quote{flex:1;margin-top:16px;font-size:1.08rem;line-height:1.72}.review__by{border-top:1px solid var(--rule-soft);flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:22px;padding-top:14px;display:flex}.review__name{font-weight:700}.review__meta{font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);font-size:.68rem}.reviews__summary{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:clamp(28px,3.5vw,40px);text-decoration:none;display:inline-flex}.reviews__score{font-family:var(--display);font-size:2.4rem;line-height:1}.reviews__count{color:var(--ink-soft);border-bottom:1px solid var(--rule);font-size:.95rem}.reviews__summary:hover .reviews__count{color:var(--ink);border-color:var(--accent)}.reviews__source{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);margin-top:22px;font-size:.68rem}a.review__name{border-bottom:1px solid var(--rule);text-decoration:none}a.review__name:hover{border-color:var(--accent)}.reviews__empty{background:var(--accent-wash);border-inline-start:3px solid var(--accent);color:var(--ink-soft);margin-top:clamp(32px,4vw,44px);padding:22px 24px;font-size:1.05rem}.reviewcta{background:var(--ground);border:1px solid var(--rule);border-top:3px solid var(--accent);max-width:620px;margin-top:clamp(28px,3.5vw,40px);padding:clamp(26px,3.4vw,38px)}.reviewcta h3{font-size:clamp(1.5rem,3.2vw,2.1rem)}.reviewcta__lede{color:var(--ink-soft);margin-top:10px;font-size:1.05rem}.reviewcta .btn{margin-top:26px}.reviewcta .btn svg{color:var(--accent-bright)}.reviewcta__note{color:var(--ink-faint);margin-top:16px;font-size:.92rem}.videos{background:var(--ink);color:var(--on-ink);padding-block:clamp(64px,9vw,108px)}.videos .eyebrow{color:var(--accent-bright)}.videos .eyebrow:before{background:var(--accent-bright)}.videos .sectionhead p{color:var(--on-ink-soft)}.videos__grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:clamp(16px,2vw,24px);margin-top:clamp(40px,5vw,60px);display:grid}.vid{aspect-ratio:9/16;border:1px solid var(--ink-line);background:var(--ink-raise);position:relative;overflow:hidden}.vid__player{object-fit:cover;background:#000;width:100%;height:100%;display:block}.vid__btn{cursor:pointer;background:0 0;border:0;width:100%;height:100%;padding:0;display:block;position:absolute;inset:0}.vid__thumb{object-fit:cover;width:100%;height:100%;transition:transform .5s var(--ease), opacity .3s var(--ease);opacity:.9}.vid__btn:hover .vid__thumb{opacity:1;transform:scale(1.04)}.vid__label{color:var(--on-ink);text-align:start;background:linear-gradient(#0000,#06182aeb);padding:34px 14px 12px;font-size:.92rem;font-weight:600;line-height:1.35;position:absolute;inset-block-end:0;inset-inline:0}.vid__play{background:var(--accent-deep);color:#fff;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;transition:background .24s var(--ease);align-items:center;gap:10px;padding:10px 16px;font-size:.7rem;font-weight:600;display:flex;position:absolute;inset-block-start:14px;inset-inline-start:14px}.vid__btn:hover .vid__play{color:var(--ink);background:#fff}.vid__play svg{width:13px;height:13px}.contact{background:var(--ground);padding-block:clamp(64px,9vw,108px)}.contact__inner{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:clamp(34px,5vw,72px);display:grid}.contact__actions{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.contact__who{align-items:center;gap:16px;margin-bottom:26px;display:flex}.contact__who img{object-fit:cover;object-position:center;border:2px solid var(--ink);border-radius:50%;flex:none;width:68px;height:68px}.contact__mono{background:var(--ink);width:68px;height:68px;color:var(--paper);border:2px solid var(--ink);box-shadow:0 0 0 3px var(--accent);font-family:var(--display);letter-spacing:.02em;border-radius:50%;flex:none;place-items:center;font-size:1.5rem;line-height:1;display:grid}.contact__whoname{font-family:var(--display);font-size:1.2rem}.contact__whotrade{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:.68rem}.contact__facts{border-top:2px solid var(--ink)}.fact{border-bottom:1px solid var(--rule);grid-template-columns:minmax(96px,auto) 1fr;align-items:baseline;gap:16px;padding-block:18px;display:grid}.fact dt{font-family:var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--ink-faint);font-size:.68rem}.fact dd{margin:0;font-weight:600}.fact dd a{border-bottom:2px solid var(--accent);font-variant-numeric:tabular-nums;padding-bottom:1px;text-decoration:none}.footer{background:var(--ink);color:var(--on-ink-faint);font-family:var(--mono);letter-spacing:.06em;padding-block:30px;font-size:.72rem}.footer__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 26px;display:flex}.orb{z-index:80;direction:ltr;background:0 0;border:0;align-items:center;gap:12px;padding:0;text-decoration:none;display:flex;position:fixed;bottom:24px;left:24px}.orb__disc{background:var(--wa);border:2px solid var(--ink);width:62px;height:62px;transition:transform .24s var(--ease), box-shadow .24s var(--ease);border-radius:50%;flex:none;place-items:center;display:grid;position:relative;box-shadow:0 10px 26px #0e1c2b4d}.orb__disc svg{color:#fff;width:32px;height:32px}.orb__disc:after{content:"";border:2px solid var(--wa);animation:pulse 2.8s var(--ease) infinite;border-radius:50%;position:absolute;inset:-2px}@keyframes pulse{0%{opacity:.7;transform:scale(1)}70%,to{opacity:0;transform:scale(1.55)}}.orb:hover .orb__disc{transform:translateY(-3px)scale(1.05);box-shadow:0 14px 30px #0e1c2b5c}.orb__label{background:var(--ink);color:var(--paper);white-space:nowrap;opacity:0;transition:opacity .24s var(--ease), transform .24s var(--ease);pointer-events:none;border-radius:2px;padding:9px 15px;font-size:.88rem;font-weight:600;transform:translate(-8px)}.orb:hover .orb__label,.orb:focus-visible .orb__label{opacity:1;transform:translate(0)}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(22px)}.reveal[data-shown=true]{opacity:1;transform:none}@media (width>=981px){.page{padding-inline-end:var(--rail)}}@media (width<=980px){.rail{display:none}.railbar{top:0;z-index:70;pointer-events:none;background:0 0;height:3px;display:block;position:fixed;inset-inline:0}.railbar span{background:var(--accent);height:100%;transform-origin:var(--origin,right);display:block}.topbar__nav{display:none}.topbar__nav+.langtoggle{margin-inline-start:auto}.contact__inner{grid-template-columns:1fr}}@media (width<=620px){body{font-size:1rem}.hero__stat{flex:50%;padding-block-start:16px}.hero__stat:nth-child(odd){border-inline-start:0;padding-inline-start:0}.hero__actions .btn,.contact__actions .btn{flex:100%;justify-content:center}.orb{bottom:16px;left:16px}.orb__disc{width:56px;height:56px}.orb__label{display:none}.fact{grid-template-columns:1fr;gap:4px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}
