/* Reusable components, independently implemented. */
.eyebrow{font-size:14px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin-bottom:18px;line-height:1.4}.eyebrow::before{content:'//';color:var(--gold);margin-inline-end:8px}[dir=rtl] .eyebrow{letter-spacing:0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:13px 30px;border:1px solid transparent;border-radius:999px;background:var(--aqua);color:var(--navy);font-size:14px;font-weight:800;line-height:1.5;text-transform:uppercase;text-align:center;transition:background .2s,transform .2s}.button:hover{background:#8ad9df;transform:translateY(-1px)}.button-outline{border-color:currentColor;background:transparent;color:inherit}.button-outline:hover{background:#5fc7ce25}.button-dark{background:var(--navy);color:white}.header-contact{min-height:44px;padding:10px 24px}.actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:34px}.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,470px);align-items:end;gap:32px 70px;margin-bottom:48px}.section-heading>div{min-width:0}.section-intro{color:var(--muted);margin:0!important}.section-heading>.button{justify-self:start;grid-column:2}.section-heading:has(>.button)>div{grid-row:span 2}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 22px}.content-card,.service-card{min-width:0}.content-card img,.service-card>img{width:100%;aspect-ratio:1.286;object-fit:cover;border-radius:var(--radius);transition:transform .3s}.content-card a{display:block}.content-card a:hover img{transform:translateY(-4px)}.card-copy{padding-block:20px}.card-copy h3{font-size:24px}.card-copy p,.service-card p{font-size:14px;color:var(--muted)}.card-copy time{display:block;color:var(--muted);font-size:14px;margin-bottom:12px}.service-card h2,.service-card h3{font-size:24px;margin-top:24px}.service-card>img{aspect-ratio:1.6}.split-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.split-layout>div{min-width:0}.split-layout .button{margin-top:32px}.filter-bar{display:flex;gap:30px;overflow:auto;align-items:center;border-block:1px solid var(--line);margin-block:36px 48px;min-height:76px;scrollbar-width:thin}.filter-bar button{flex:none;background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);padding:16px 0;font-size:14px;font-weight:700;min-height:44px}.filter-bar button[aria-pressed=true]{border-color:var(--aqua);color:var(--ink)}.collection-team{grid-template-columns:repeat(4,minmax(0,1fr));gap:50px 22px}.collection-team .service-card>img{aspect-ratio:.78;filter:grayscale(1)}.collection-team .service-card:hover>img{filter:none}.collection-team .service-card h2{font-size:18px;margin-top:16px}.collection-team .service-card p{font-size:14px;margin-top:6px}.collection-studio .content-card img{aspect-ratio:.85}.collection-portfolio .content-card img{aspect-ratio:1.286}.collection-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:50px}.collection-layout .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-sidebar{display:grid;gap:32px;align-content:start}.blog-sidebar section{padding:24px;border:1px solid var(--line);border-radius:var(--radius)}.blog-sidebar h2{font-size:22px;margin-bottom:20px}.blog-sidebar p{font-size:14px;color:var(--muted)}.post-card img,.post-card .post-placeholder{display:block;width:100%;aspect-ratio:1.5;border-radius:var(--radius);background:linear-gradient(135deg,#e0f2f4,#f3f7f7)}.site-search{display:flex;flex-wrap:wrap;gap:12px}.site-search label{display:grid;gap:8px;flex:1 1 180px;min-width:0}.site-search input{width:100%;min-height:48px;padding:12px;border:1px solid var(--line);border-radius:8px;font-size:16px}.search-summary{margin-block:24px}.cta{background:var(--cream);padding-block:var(--section)}.cta>.shell{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{max-width:650px;font-size:40px}.cta .button{flex:none}
.contact-grid{display:block}.contact-grid>div:first-child{display:grid;grid-template-columns:1fr 1fr;column-gap:80px;align-items:end;margin-bottom:48px}.contact-grid>div:first-child>.eyebrow{grid-column:1/-1}.contact-grid>div:first-child>p:not(.eyebrow){margin:0;color:var(--muted)}.contact-panel{max-width:850px;background:var(--soft);padding:40px;border-radius:var(--radius)}.contact-panel h2{font-size:30px}.contact-panel>p{font-size:14px;color:var(--muted);margin-top:12px}.inquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:28px}.inquiry-form label{display:grid;gap:8px;min-width:0;font-size:14px;font-weight:700}.inquiry-form input,.inquiry-form textarea,.inquiry-form select{width:100%;min-height:48px;padding:12px 16px;border:1px solid #cedbdd;border-radius:10px;background:white;color:var(--ink);font-size:16px}.inquiry-form textarea{resize:vertical;min-height:140px}.inquiry-form .full{grid-column:1/-1}.inquiry-form button.full{justify-self:start}.form-notice{padding:14px;border-inline-start:3px solid var(--aqua);background:white}.office-grid{display:grid;gap:70px;margin-top:90px}.office-card{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;align-items:center;border-top:1px solid var(--line);padding-top:54px}.office-card address{font-style:normal;max-width:38ch;margin-block:20px}.office-card iframe{width:100%;min-height:360px;border:0;border-radius:var(--radius);background:var(--soft)}.office-card p{margin-top:12px}.office-card .button{margin-top:24px}
.package-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:36px 0 44px}.package-tabs button{padding:10px 20px;min-height:44px;border:1px solid var(--line);border-radius:999px;background:white;font-size:14px;font-weight:700;max-width:100%;white-space:normal}.package-tabs button[aria-selected=true]{background:var(--navy);color:#fff}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.package-card{display:flex;flex-direction:column;min-width:0;padding:32px;border:1px solid var(--line);border-radius:22px;min-height:540px}.package-card:nth-child(2){background:var(--navy);color:white}.package-card h2{font-size:24px;font-weight:700;letter-spacing:0}.package-card>p:not(.package-price){font-size:14px;color:var(--muted)}.package-card:nth-child(2)>p:not(.package-price){color:#c0cbd5}.package-price{font-size:64px;line-height:1.1;font-weight:800;margin-block:28px;overflow-wrap:anywhere}.package-price.price-text{font-size:36px}.package-card ul{display:grid;gap:12px;list-style:none;padding:24px 0;margin:24px 0;border-top:1px solid var(--line);font-size:14px;flex:1}.package-card li::before{content:'✓';color:var(--aqua);margin-inline-end:8px}.package-card .button{padding-inline:16px}
.about-page>section+section{margin-top:80px}.about-split{display:grid;grid-template-columns:1.214fr 1fr;gap:110px;align-items:center}.about-split>div{min-width:0}.about-split .section-heading{display:block;margin-bottom:24px}.about-split .section-intro{margin-top:24px!important}.about-split img{width:100%;aspect-ratio:1.2;object-fit:cover;border-radius:24px}.about-photo{position:relative}.about-photo>img{height:390px;aspect-ratio:auto}.about-stamp{position:absolute;top:-20px;inset-inline-end:-20px;display:grid;place-items:center;text-align:center;width:145px;height:145px;padding:18px;border-radius:50%;background:white;color:var(--ink);font-size:12px;font-weight:700;border:1px solid #f3f5f5;transform:rotate(-14deg)}.about-stamp svg{position:absolute;inset:0;width:100%;height:100%;fill:currentColor;font-size:12px;letter-spacing:2px}.about-stamp img{width:75px;aspect-ratio:auto;border-radius:0;object-fit:contain}.about-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.about-values article{border-top:1px solid var(--line);padding-top:24px}.about-values h2{font-size:26px}.about-values p{font-size:14px;color:var(--muted)}.about-wide-photo img{width:100%;aspect-ratio:2;object-fit:cover;border-radius:24px;margin-bottom:40px}.about-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;margin-top:40px}.about-steps article{padding-top:20px;border-top:1px solid var(--line)}.about-steps p{font-size:14px;color:var(--muted)}.about-team{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.about-team img{aspect-ratio:.78;object-fit:cover;border-radius:22px;filter:grayscale(1)}.about-team h3{margin-top:16px;font-size:18px}.about-team p{font-size:14px;color:var(--muted)}.about-cta{text-align:center;background:var(--cream);padding:64px 24px}.about-cta .button{margin-top:30px}
.project-cover{min-height:420px;padding:150px 0 54px;display:flex;align-items:end;background:linear-gradient(90deg,#051422e6,#05142255),var(--project-cover) center/cover;color:white}.project-cover h1{max-width:760px}.project-cover p:last-child{max-width:620px}.project-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:60px;align-items:start}.gallery{display:grid;gap:24px}.gallery a{display:block}.gallery img{width:100%;height:auto;border-radius:16px}.gallery-studio{grid-template-columns:repeat(2,minmax(0,1fr))}.project-facts{display:grid;gap:24px;margin:0}.project-facts dt{font-size:14px;color:var(--muted)}.project-facts dd{margin:8px 0 0;font-size:20px;font-weight:700;overflow-wrap:anywhere}.project-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;margin-top:64px}.lightbox{border:0;border-radius:16px;padding:56px 16px 16px;background:var(--navy);color:white;max-width:95vw;max-height:95dvh}.lightbox::backdrop{background:#000d}.lightbox img{max-height:75dvh;max-width:85vw;object-fit:contain}.lightbox button{background:none;border:0;color:white;min-width:44px;min-height:44px;font-size:26px}.lightbox [data-close]{position:absolute;top:5px;inset-inline-end:5px}.lightbox-controls{display:flex;justify-content:space-between;align-items:center}
@media(max-width:1050px){.section-heading{gap:30px}.split-layout,.about-split{gap:40px}.collection-team{grid-template-columns:repeat(3,minmax(0,1fr))}.collection-layout{grid-template-columns:1fr}.blog-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.package-card{padding:24px}.project-layout{grid-template-columns:1fr 240px;gap:30px}}
@media(max-width:800px){.section-heading{grid-template-columns:1fr}.section-heading>.button{grid-column:auto}.section-heading:has(>.button)>div{grid-row:auto}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-layout,.about-split,.contact-grid>div:first-child,.office-card{grid-template-columns:1fr}.about-values,.about-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.about-team{grid-template-columns:repeat(2,minmax(0,1fr))}.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cta h2{font-size:36px}.project-layout{grid-template-columns:1fr}.project-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.project-cover{min-height:350px}.contact-grid>div:first-child>p:last-child{margin-top:20px}}
@media(max-width:600px){.about-photo>img{height:auto;aspect-ratio:1.35}.section-heading{margin-bottom:32px}.card-grid,.collection-layout .card-grid,.blog-sidebar,.package-grid,.about-values,.about-steps{grid-template-columns:1fr}.collection-team{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 14px}.collection-team .service-card h2{font-size:16px}.cta>.shell{display:block;text-align:center}.cta h2{font-size:32px}.cta .button{margin-top:30px}.contact-panel{padding:24px}.inquiry-form{grid-template-columns:1fr}.office-card{gap:30px}.office-card iframe{min-height:300px}.about-stamp{width:110px;height:110px;font-size:10px;inset-inline-end:0}.about-stamp img{width:60px}.about-page>section+section{margin-top:64px}.project-facts{grid-template-columns:1fr}.gallery-studio{gap:14px}.project-cover{padding-top:130px}.package-price{font-size:56px}}

.project-delivered{margin-block:32px}.project-delivered h2{font-size:22px}.project-delivered ul{padding-inline-start:20px;margin-block:20px}

.section-heading-linked{grid-template-columns:1fr auto}.section-heading-linked>div{max-width:560px}.section-heading-linked .section-intro{margin-top:14px!important}.section-heading-linked>.button{align-self:end;justify-self:end}.studio-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.studio-tags span{border:1px solid var(--line);border-radius:30px;padding:6px 14px;font-size:13px}@media(max-width:800px){.section-heading-linked{grid-template-columns:1fr}.section-heading-linked>.button{justify-self:start}}
