/* Finishing layer. Load after the page styles; motion remains in its own stylesheet. */
:root{
  --refinement-rim:rgba(255,255,255,.14);
  --refinement-highlight:rgba(255,255,255,.09);
  --refinement-card:rgba(31,31,35,.86);
  --refinement-shadow:0 9px 28px rgba(0,0,0,.1);
}
html[data-theme="light"]{
  --refinement-rim:rgba(29,29,34,.1);
  --refinement-highlight:rgba(255,255,255,.95);
  --refinement-card:rgba(255,255,255,.83);
  --refinement-shadow:0 9px 28px rgba(30,30,35,.045);
}

/* 1. The same fine edge and legible surface across service and equipment cards. */
.film-service,.gear-tool{
  border-color:var(--refinement-rim);
  background:var(--refinement-card);
  box-shadow:inset 0 1px 0 var(--refinement-highlight),var(--refinement-shadow);
}
.drone-equipment,.gear-drone,.gear-next,.home-contact-inner,.contact-panel{
  border-color:var(--refinement-rim);
  box-shadow:inset 0 1px 0 var(--refinement-highlight);
}
.home-work-image,.film-featured-play,.film-project-play,.drone-film-button,.gear-photo{
  outline:1px solid var(--refinement-rim);
  outline-offset:-1px;
}

/* 2. A consistent reading rhythm, while retaining each section's scale. */
.home-heading h2,.home-drone h2,.home-about h2,.film-section-heading h2,
.film-approach h2,.gear-section-heading h2,.drone-film-copy h2,.portfolio-process h2{
  text-wrap:balance;
}
.home-work-card h3,.home-film-caption h3,.film-project-caption h3,
.film-service h3,.gear-tool h3,.drone-services h3{
  letter-spacing:-.025em;
  line-height:1.3;
}
.film-service p,.gear-tool>p,.drone-services p{line-height:1.75}
.home-heading>p,.film-section-heading>p{max-width:34ch}
.home-film-caption,.film-featured-caption,.portfolio-video-caption{column-gap:24px}
.home-film-caption>div,.portfolio-video-caption>div{min-width:0}
.portfolio-gallery figcaption{column-gap:10px;padding-top:13px;line-height:1.55}
.portfolio-gallery figcaption>span{min-width:2ch;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.portfolio-gallery figcaption>p{min-width:0;overflow-wrap:break-word}
.film-caption-duration,.gallery-category-current small,.home-collection-status{font-variant-numeric:tabular-nums}

/* 3. Clear active controls and a quieter, compact gallery rail. */
.photo-gallery-page .gallery-toolbar{
  border-color:var(--refinement-rim);
  box-shadow:inset 0 1px 0 var(--refinement-highlight),0 7px 25px rgba(0,0,0,.055);
}
.photo-gallery-page .gallery-view-switch{border-color:var(--refinement-rim)}
.photo-gallery-page .gallery-view-switch button[aria-pressed="true"]{font-weight:600}
.photo-gallery-page .gallery-category-current small{letter-spacing:.01em}

/* 4. Related-page navigation shares one comfortable pill treatment. */
.gear-section-nav a,.drone-sections a,.portfolio-more-links a{
  min-height:46px;
  border-color:var(--refinement-rim);
  font-weight:500;
  line-height:1.4;
}
.gear-section-nav,.drone-sections{gap:9px}
.portfolio-more-links{gap:10px}

/* 5. Contact details and footer links align cleanly and remain easy to tap. */
.home-contact-bottom,.contact-bottom{align-items:flex-start}
.home-email,.contact-mail{line-height:1.4;overflow-wrap:anywhere}
.footer-links,.home-footer nav{align-items:center;gap:4px 22px}
.footer-links a,.home-footer nav a{display:inline-flex;align-items:center;min-height:44px}

/* 6. A visible focus ring follows the actionable element, not its photo crop. */
.home-work-card:focus-visible,.home-film-button:focus-visible,
.film-featured-play:focus-visible,.film-project-play:focus-visible,
.drone-film-button:focus-visible,.gear-photo:focus-visible,
.gallery-category-trigger:focus-visible,.gallery-view-switch button:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:4px;
}

@media(max-width:600px){
  .photo-gallery-page .gallery-toolbar{padding:6px 8px;gap:8px;border-radius:19px}
  .photo-gallery-page .gallery-toolbar .gallery-category-trigger{min-height:48px;gap:7px;padding-inline:4px}
  .photo-gallery-page .gallery-category-current strong{font-size:13px;line-height:1.35}
  .photo-gallery-page .gallery-category-current small{font-size:10px;line-height:1.5;margin-top:2px}
  .photo-gallery-page .gallery-toolbar .gallery-view-switch{gap:1px;padding:2px;background:var(--glass)}
  .photo-gallery-page .gallery-toolbar .gallery-view-switch button{min-height:44px;font-size:10px;padding-inline:10px}
  .photo-gallery-page .portfolio-gallery figcaption{padding-top:10px;column-gap:9px}
  .photo-gallery-page .portfolio-gallery[data-view="overview"] figcaption{column-gap:6px;line-height:1.5}
  .home-work-ordered .home-work-card h3{margin-top:17px;margin-bottom:6px}
  .film-project-caption{padding-top:13px}
  .film-project-caption h3{line-height:1.4}
  .gear-section-nav a,.drone-sections a{padding-inline:15px;font-size:11px}
  .portfolio-more-links a{padding-inline:17px;font-size:12px}
  .home-contact-bottom,.contact-bottom{gap:24px}
  .footer,.home-footer{row-gap:14px}
  .footer-links,.home-footer nav{column-gap:20px}
}
@media(max-width:360px){
  .photo-gallery-page .gallery-toolbar{padding-inline:6px;gap:6px}
  .photo-gallery-page .gallery-category-current strong{font-size:12px}
  .photo-gallery-page .gallery-toolbar .gallery-view-switch button{font-size:10px;padding-inline:7px}
  .photo-gallery-page .gallery-toolbar .gallery-category-trigger svg{width:14px;height:14px}
  .footer-links,.home-footer nav{column-gap:17px}
}

/* Clearer gallery actions, with the same quiet glass finish on every service. */
html body .home-work-open{
 display:inline-flex;align-items:center;justify-content:center;min-height:44px;
 padding:11px 17px;margin-top:18px;border:1px solid var(--line);border-radius:15px;
 background:var(--glass);font-weight:500;font-size:12px;line-height:1.4;
 box-shadow:inset 0 1px 0 var(--border-lit);transition:background-color .25s,color .25s,border-color .25s,box-shadow .3s;
}
html body .home-work-open::after{display:none}
html body .home-work-ordered .home-work-open{padding:11px 17px}
html body .clarity-action,
html body .portfolio-intro .button,
html body .film-intro .button,
html body .drone-hero .button{
 border-radius:17px;box-shadow:inset 0 1px 0 var(--border-lit),0 5px 16px #0000000e;
}
html body .clarity-primary{background-image:linear-gradient(165deg,#ffffff15,transparent 65%)}
html body .clarity-secondary{background-image:linear-gradient(140deg,var(--refinement-highlight),transparent 70%)}
html body .service-directory nav{
 background:linear-gradient(145deg,var(--refinement-highlight),transparent 65%),var(--glass);
 box-shadow:inset 0 1px 0 var(--border-lit),var(--refinement-shadow);
}
html body .service-directory a{outline:1px solid transparent;outline-offset:-1px}
html body .service-directory a:focus-visible{outline:2px solid var(--accent);outline-offset:0}
html body .home-video-collections .album-card{
 background:linear-gradient(155deg,var(--refinement-highlight),transparent 65%),var(--glass);
 box-shadow:inset 0 1px 0 var(--border-lit),var(--refinement-shadow);
}
html body .album-card-image,
html body .home-work-image,
html body .album-video-play{box-shadow:inset 0 0 0 1px var(--refinement-rim),0 10px 28px #0000000b}
html body .album-card-action{border:1px solid transparent;border-radius:15px;font-weight:600}
html body .album-card-count{letter-spacing:.025em;font-variant-numeric:tabular-nums}
html body .home-work-card h3,
html body .album-card-copy h3{text-wrap:balance}
html body .home-video-featured-heading>p:last-child,
html body .home-work-card>p,
html body .album-card-copy>p{text-wrap:pretty}
@media(hover:hover) and (pointer:fine){
 html body .service-directory a:hover{outline-color:var(--line)}
 html body .clarity-action:hover{box-shadow:inset 0 1px 0 #ffffff30,0 8px 24px var(--glow)}
}
@media(max-width:760px){
 html body .home-work-open{margin-top:16px;font-size:12px}
 html body .home-video-collections .album-card{box-shadow:inset 0 1px 0 var(--border-lit),0 5px 18px #00000008}
}
@media(prefers-reduced-motion:reduce){html body .home-work-open{transition:none}}
