:root{--navy:#101d42;--navy-deep:#09132e;--blue:#203f7d;--orange:#ff7b20;--orange-dark:#b84308;--ink:#152342;--muted:#586478;--line:#dbe1ea;--pale:#f3f6fa;--white:#fff;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:1rem;line-height:1.6;background:#fff}button,input,select,textarea{font:inherit}a{color:inherit;text-underline-offset:4px}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}svg{width:24px;height:24px;flex:none}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15}button:disabled{cursor:not-allowed;opacity:.6}:focus-visible{outline:3px solid var(--orange-dark);outline-offset:4px}.container{width:min(1200px,calc(100% - 64px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;left:16px;top:-100px;z-index:20;padding:12px 20px;background:#fff;color:var(--ink);font-weight:700}.skip-link:focus{top:12px}.topbar{background:var(--navy-deep);color:#d8dfed;font-size:.875rem}.topbar .container{display:flex;justify-content:space-between;gap:16px;padding-block:8px}.topbar a{text-decoration:none}.site-header{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:block;line-height:0}.brand img{display:block;width:134px;height:89px;object-fit:contain}.navigation{display:flex;align-items:center;gap:32px}.navigation>a{font-size:.9375rem;font-weight:700;text-decoration:none}.navigation>a:not(.button):hover{color:var(--orange-dark)}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;background:var(--orange);color:var(--navy-deep);padding:14px 24px;border:1px solid transparent;border-radius:5px;text-decoration:none;font-weight:700;line-height:1.4;transition:background .18s,box-shadow .18s}.button:hover{background:#ff944e;box-shadow:0 4px 16px #00000015}.button-small{min-height:46px;padding:11px 20px}.menu-toggle{display:none}.hero{background:var(--navy);color:#fff;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.4fr .8fr;align-items:center;gap:96px;padding-block:84px 72px}.eyebrow{font-size:.875rem;letter-spacing:.12em;text-transform:uppercase;color:#ffac73;font-weight:700;margin-bottom:20px}.eyebrow.dark{color:var(--orange-dark)}h1{font-size:clamp(2.75rem,4.9vw,4.6rem);letter-spacing:-.045em;max-width:770px;margin-bottom:28px;font-weight:800}h1 span{color:var(--orange)}.hero-description{color:#ccd5e6;max-width:585px;font-size:1.125rem;line-height:1.7;margin-bottom:32px}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.text-link{color:#f0f4fa;font-size:.9375rem;font-weight:700}.hero-panel{padding:34px 30px;background:#ffffff06;border:1px solid #536184;border-top:3px solid var(--orange);border-radius:5px}.panel-kicker{color:#aebdd8;font-size:.875rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:20px}.hero-panel h2{font-size:2.1rem;letter-spacing:-.035em;margin-bottom:18px}.hero-panel p:not(.panel-kicker){color:#c2cde1;margin-bottom:24px}.hero-panel ul{padding:0;margin:0;list-style:none}.hero-panel li{padding:10px 0;border-top:1px solid #ffffff1f;font-size:.9375rem}.panel-link{display:block;margin-top:22px;color:#ffac73;font-size:.875rem;font-weight:700}.hero-bottom{display:flex;flex-wrap:wrap;gap:22px 48px;border-top:1px solid #ffffff20;padding-block:23px;color:#c7d1e4;font-size:.875rem}.hero-bottom span:first-child{color:#fff;font-weight:700}.section{padding-block:88px}.section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:72px;align-items:end;margin-bottom:38px}.section h2,.anchor-section h2{font-size:clamp(2rem,3.3vw,3.2rem);letter-spacing:-.045em;margin-bottom:0}.section-heading>p{max-width:480px;color:var(--muted);margin:0;font-size:1.0625rem}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service{padding:28px 26px;border:1px solid var(--line);border-radius:7px;display:flex;flex-direction:column;transition:border-color .18s,box-shadow .18s}.service:hover,.service:focus-within{border-color:#c5713a;box-shadow:0 8px 24px #14264f0a}.service-top{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:.875rem;margin-bottom:25px;line-height:1.4}.service-number{font-size:1rem;color:var(--orange-dark);font-weight:700}.service h3{font-size:1.25rem;letter-spacing:-.018em;margin-bottom:14px}.service p{font-size:1rem;color:var(--muted);margin-bottom:26px}.service-link{font-size:.875rem;font-weight:700;margin-top:auto;align-self:flex-start;color:var(--blue)}.anchor-section{background:var(--navy-deep);padding-block:68px;color:#fff;border-left:8px solid var(--orange)}.anchor-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:92px;align-items:center}.anchor-section h2 span{color:#ffac73}.anchor-copy h3{font-size:1.35rem;margin-bottom:18px}.anchor-copy p{color:#c5d0e3;margin-bottom:28px}.scope-section{background:var(--pale)}.scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.scope-grid article{border-top:1px solid #bac5d7;padding-top:24px}.scope-label{font-size:.875rem;color:var(--orange-dark);display:block;margin-bottom:20px}.scope-grid h3{font-size:1.5rem;margin-bottom:14px;letter-spacing:-.025em}.scope-grid p{margin-bottom:0;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;align-items:start}.contact-info>p:not(.eyebrow){color:var(--muted);margin-block:24px 30px;max-width:425px}.contact-list{margin:0}.contact-list>div{padding-block:19px;border-top:1px solid var(--line)}.contact-list dt{font-size:.875rem;color:var(--muted);margin-bottom:6px}.contact-list dd{margin:0;overflow-wrap:anywhere}.contact-list a{font-weight:600;text-decoration:none}.contact-list a:hover{text-decoration:underline}.whatsapp-link{display:inline-flex;align-items:center;gap:10px}.whatsapp-link svg{color:#15744e}.form-card{border:1px solid var(--line);border-top:3px solid var(--orange);padding:32px;border-radius:7px;box-shadow:0 16px 45px #14264f08}.form-heading h3{font-size:1.5rem;letter-spacing:-.025em;margin-bottom:8px}.form-heading p{font-size:.875rem;color:var(--muted);margin-bottom:26px}.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{min-width:0;display:flex;flex-direction:column;gap:7px}.full{grid-column:1/-1}.field label{font-size:.9375rem;font-weight:700}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:50px;border:1px solid #b3bed0;border-radius:4px;padding:12px;color:var(--ink);background:#fff;font-size:1rem}.field input::placeholder,.field textarea::placeholder{color:#68758a;opacity:1}.field textarea{resize:vertical;min-height:120px}.field small{font-size:.875rem;color:var(--muted)}.wa-button{display:flex;align-items:center;justify-content:center;gap:10px;background:#176b48;color:#fff;border:0;border-radius:4px;min-height:53px;padding:14px 18px;font-weight:700;line-height:1.4}.wa-button:hover:not(:disabled){background:#105336}.form-note{font-size:.875rem;color:var(--muted);line-height:1.55;margin:4px 0 0}.form-status{margin:0;color:#9d271d;font-size:.9375rem}.form-status:empty{display:none}.site-footer{background:var(--navy-deep);color:#c4cee1;padding-block:36px 22px;font-size:.875rem}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:28px}.footer-main strong{font-size:1.125rem;color:#fff}.footer-main p{margin:6px 0 0}.footer-main>a{overflow-wrap:anywhere}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff20;padding-top:20px}@media(min-width:1800px){.container{width:min(1320px,calc(100% - 80px))}}@media(max-width:1050px){.hero-grid{gap:40px}.navigation{gap:22px}.contact-grid{gap:40px}.anchor-grid{gap:48px}.service{padding:25px 22px}.section-heading{gap:40px}}@media(max-width:820px){html{scroll-padding-top:92px}.container{width:calc(100% - 40px)}.header-inner{min-height:86px;gap:16px;flex-wrap:wrap}.brand img{width:114px;height:76px}.menu-toggle:not([hidden]){display:inline-flex;align-items:center;gap:12px;min-height:46px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:4px;padding:8px 12px;font-weight:700}.menu-toggle svg{fill:none;stroke:currentColor;stroke-width:1.7}.navigation{width:100%;padding-bottom:18px;display:flex;flex-direction:column;gap:0;align-items:stretch}.navigation.is-collapsed{display:none}.navigation>a{padding:12px 14px;min-height:46px}.hero-grid{grid-template-columns:1fr;gap:35px;padding-block:56px 42px}.hero-content{max-width:650px}.hero-panel{display:none}.hero-bottom{gap:14px 28px;padding-block:20px}.section{padding-block:64px}.section-heading{grid-template-columns:1fr;gap:22px}.section-heading>p{max-width:600px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.anchor-grid{grid-template-columns:1fr;gap:28px}.anchor-section{padding-block:54px}.scope-grid{gap:25px}.contact-grid{grid-template-columns:1fr;gap:34px}.contact-info>p:not(.eyebrow){max-width:650px}.contact-list{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.footer-main{align-items:flex-start;flex-wrap:wrap}}@media(max-width:540px){.container{width:calc(100% - 32px)}.topbar .container{justify-content:center}.topbar a{display:none}h1{font-size:2.65rem;letter-spacing:-.04em}.hero-description{font-size:1.0625rem}.hero-actions{align-items:flex-start;gap:20px;flex-direction:column}.hero-actions .button{width:100%}.eyebrow{letter-spacing:.075em}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:.875rem}.section-heading h2 br,.contact-info h2 br{display:none}.service-grid,.scope-grid,.contact-list{grid-template-columns:1fr}.service-top{margin-bottom:20px}.service p{margin-bottom:20px}.service{padding:25px}.scope-grid{gap:32px}.form-card{padding:24px 20px}.quote-form{grid-template-columns:1fr}.anchor-section{border-left-width:4px}.anchor-copy .button{width:100%}.footer-main{flex-direction:column;gap:22px}.footer-bottom{flex-wrap:wrap}.contact{padding-block:56px}.field select{padding-right:4px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Photographic service cards, with strong contrast beneath the copy. */
.service{position:relative;isolation:isolate;overflow:hidden;background:var(--navy-deep);color:#fff;min-height:460px;border-color:#25395e;padding:26px;border-radius:8px}
.service-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .35s ease}
.service::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(6,17,39,.28) 0%,rgba(6,17,39,.45) 26%,rgba(6,17,39,.94) 45%,rgba(6,17,39,.98) 100%)}
.service .service-top{align-self:flex-start;min-height:40px;margin-bottom:100px;padding:8px 10px;border-radius:4px;background:rgba(6,17,39,.84);color:#f2f5fa}
.service .service-number{color:#ffb17b}
.service h3{color:#fff;font-size:1.3rem}
.service p{color:#e0e7f2}
.service .service-link{color:#ffd2b3;padding-block:7px;text-decoration-thickness:1px}
.service:hover .service-image{transform:scale(1.035)}
.service:hover,.service:focus-within{border-color:var(--orange);box-shadow:0 10px 26px #14264f20}
.service :focus-visible{outline-color:#ffb17b}
@media(max-width:540px){.service{min-height:440px;padding:24px}.service .service-top{margin-bottom:105px}}

.image-note{font-size:.875rem;color:var(--muted);margin:18px 0 0}
@media(prefers-reduced-motion:reduce){.service-image{transition:none}.service:hover .service-image{transform:none}}
.topbar-contact{display:flex;align-items:center;justify-content:flex-end;gap:22px;flex-wrap:wrap}
.topbar-contact a,.footer-contacts a{display:inline-flex;align-items:center;gap:7px;text-decoration:none}
.topbar-contact a:hover,.footer-contacts a:hover{text-decoration:underline}
.topbar-contact svg,.footer-contacts svg{width:18px;height:18px;color:#55c895}
.footer-contacts{display:flex;flex-direction:column;align-items:flex-start;gap:10px;overflow-wrap:anywhere}
@media(max-width:540px){.topbar .location{display:none}.topbar .topbar-contact{justify-content:center;gap:2px 16px}.topbar a{display:inline-flex}.topbar .container{padding-block:10px}.footer-contacts{gap:12px}}
.purpose-section{background:#fff;border-top:1px solid var(--line)}
.purpose-heading{max-width:680px;margin-bottom:34px}
.purpose-heading h2{font-size:clamp(2rem,3.3vw,3.2rem);letter-spacing:-.045em;margin:0}
.purpose-grid{display:grid;grid-template-columns:1fr;gap:20px}
.purpose-card{padding:36px 38px 40px;background:var(--pale);border-top:3px solid var(--orange);border-radius:5px}
.purpose-index{display:block;margin-bottom:28px;color:var(--orange-dark);font-size:.875rem;font-weight:700;letter-spacing:.09em}
.purpose-card h3{font-size:1.625rem;letter-spacing:-.025em;margin-bottom:18px}
.purpose-card p{max-width:900px;color:var(--muted);font-size:1.0625rem;line-height:1.7;margin:0}
.purpose-mission{background:var(--navy);color:#fff}
.purpose-mission .purpose-index{color:#ffac73}
.purpose-mission p{color:#e0e7f2;font-size:1.1875rem}
.purpose-values ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 44px}
.purpose-values li{padding:19px 0 22px;border-top:1px solid #cbd4e1;line-height:1.55}
.purpose-values li strong{display:block;color:var(--ink);font-size:1.0625rem;margin-bottom:7px}
.purpose-values li span{display:block;color:var(--muted);font-size:1rem}
@media(max-width:820px){.purpose-card{padding:30px}.purpose-values ul{gap:0 26px}}
@media(max-width:540px){.purpose-values ul{grid-template-columns:1fr}.purpose-card{padding:26px}.purpose-index{margin-bottom:20px}}

/* Let grid content shrink to the mobile viewport, including with enlarged text. */
@media(max-width:820px){
  .hero-grid,.section-heading,.anchor-grid,.contact-grid{grid-template-columns:minmax(0,1fr)}
  .hero-grid>*,.section-heading>*,.anchor-grid>*,.contact-grid>*,
  .service-grid>*,.scope-grid>*,.purpose-grid>*{min-width:0}
  .section h2,.anchor-section h2,.purpose-heading h2,h1{overflow-wrap:anywhere}
}
@media(max-width:540px){
  .service-grid,.scope-grid,.contact-list,.purpose-values ul{grid-template-columns:minmax(0,1fr)}
  .hero-bottom{grid-template-columns:repeat(2,minmax(0,1fr))}
  .section h2,.anchor-section h2,.purpose-heading h2{font-size:clamp(1.75rem,7.5vw,2rem);letter-spacing:-.035em;line-height:1.18}
  .service h3,.scope-grid h3,.purpose-card h3{overflow-wrap:anywhere}
}
