/*
Theme Name: AL Shoots
Theme URI: https://www.alshoots.com/
Author: A.L. SHOOTS
Description: Cinematic, responsive photography portfolio for A.L. SHOOTS.
Version: 7.0.0
Requires at least: 6.0
*/
:root{--bg:#101113;--panel:#191b1f;--text:#f5f3ee;--muted:#b7b7b7;--gold:#c8b58a;--line:#343538;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.7 Arial,sans-serif}a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:10;background:#101113f2;border-bottom:1px solid var(--line)}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px}.brand img{width:58px;height:58px;object-fit:cover;border-radius:50%}.brand-name{font:bold 1.2rem Georgia,serif;letter-spacing:.1em}.brand-tag{display:block;color:var(--muted);font-size:.62rem;letter-spacing:.25em}.primary-nav{display:flex;align-items:center;gap:22px}.primary-nav a{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.primary-nav a:hover{color:var(--gold)}.primary-nav .nav-cta,.btn{display:inline-block;background:var(--gold);border:1px solid var(--gold);color:#111;padding:11px 17px;font-size:.78rem;font-weight:bold;letter-spacing:.06em;text-transform:uppercase}.btn.outline{background:transparent;color:var(--text);border-color:#888}.menu-toggle{display:none;background:transparent;color:white;border:1px solid #555;padding:9px 12px}.hero{min-height:590px;display:flex;align-items:center;position:relative;overflow:hidden;background:radial-gradient(ellipse at 80% 30%,#7773,transparent 34%),linear-gradient(120deg,#101113,#25262a 65%,#111)}.hero-content{position:relative;z-index:1;padding:85px 0;max-width:790px}.eyebrow{color:var(--gold);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;font-weight:bold}.hero h1{font:500 clamp(3.2rem,8vw,6.6rem)/.98 Georgia,serif;letter-spacing:-.04em;margin:20px 0}.hero h1 span{color:var(--gold);font-style:italic}.hero p,.lead{color:#d0d0d0;font-size:1.08rem;max-width:720px}.hero-mark{position:absolute;width:min(34vw,360px);right:4%;top:50%;transform:translateY(-50%);opacity:.1;border-radius:50%;filter:grayscale(1)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.section{padding:82px 0}.section.alt{background:#151619}.section h2{font:500 clamp(2.2rem,4vw,3.5rem)/1.1 Georgia,serif;margin:10px 0 18px}.section-head{max-width:760px;margin-bottom:35px}.grid{display:grid;gap:18px}.three{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:repeat(2,1fr)}.service-card,.package,.price-card,.feedback-card{background:var(--panel);border:1px solid var(--line);padding:26px}.number,.package-price{color:var(--gold);font-family:Georgia,serif}.number{font-size:1.4rem}.service-card h3,.package h3,.price-card h3{font:500 1.55rem Georgia,serif;margin:12px 0}.muted,.service-card p,.package p,.price-card p{color:var(--muted)}ul{padding-left:20px}li{margin:7px 0}.package.featured{border-color:var(--gold)}.ribbon{display:inline-block;background:var(--gold);color:#111;padding:4px 8px;font-size:.65rem;font-weight:bold;text-transform:uppercase;letter-spacing:.1em}.package-price{font-size:2.5rem;margin-top:14px;line-height:1.2}.package-price small{font: .8rem Arial;color:var(--muted)}.term{font-size:.85rem;color:var(--muted)}.price-list{list-style:none;padding:0}.price-list li{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.price-list strong{color:var(--gold);white-space:nowrap}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:center}.about-emblem{padding:25px;border:1px solid var(--line);display:grid;place-items:center;background:radial-gradient(circle,#c8b58a22,transparent 70%)}.about-emblem img{width:min(100%,330px);border-radius:50%;filter:grayscale(1)}.social-panel{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:30px;background:#202125;border:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:38px}.contact-item{padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.contact-item small{display:block;color:var(--gold);text-transform:uppercase;letter-spacing:.15em}.contact-form{display:grid;gap:14px}.contact-form label{display:grid;gap:6px}.contact-form input,.contact-form textarea{width:100%;background:#101113;border:1px solid #555;color:white;padding:12px;font:inherit}.contact-form textarea{min-height:120px}.contact-form button{cursor:pointer}.form-note{font-size:.8rem;color:var(--muted)}.site-footer{border-top:1px solid var(--line);background:#0c0d0f;padding:28px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-nav{display:flex;gap:18px;flex-wrap:wrap;font-size:.8rem}.copyright{color:#aaa;font-size:.78rem}.trademark{display:block;color:#777;font-size:.7rem}@media(max-width:900px){.menu-toggle{display:block}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#101113;padding:16px 22px 22px;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--line)}.primary-nav.is-open{display:flex}.primary-nav a{padding:12px 0;border-bottom:1px solid var(--line)}.primary-nav .nav-cta{text-align:center;margin-top:12px}.three{grid-template-columns:1fr}.about-grid,.contact-grid{grid-template-columns:1fr}.hero-mark{right:-5%;width:45vw}.section{padding:65px 0}}@media(max-width:560px){.wrap{width:calc(100% - 30px)}.brand img{width:48px;height:48px}.brand-name{font-size:1rem}.hero h1{font-size:clamp(3rem,14vw,4.4rem)}.hero-mark{width:60vw;right:-18%;opacity:.07}.two{grid-template-columns:1fr}.social-panel{align-items:flex-start;flex-direction:column}.section{padding:55px 0}.service-card,.package,.price-card,.feedback-card{padding:21px}}

/* v3: supplied logo + photography-led layout */
.brand img{object-fit:contain;border-radius:0;border:0;background:transparent;width:76px;height:66px;padding:2px}
.hero{background-image:linear-gradient(90deg,rgba(9,10,12,.94) 0%,rgba(9,10,12,.76) 48%,rgba(9,10,12,.38) 100%),url('assets/gallery/opening-hero.jpg');background-size:cover;background-position:center 42%}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,11,13,.5),transparent 40%);pointer-events:none}
.hero-mark{display:none}
.service-card{padding:0;overflow:hidden}
.service-photo{height:210px;background-size:cover;background-position:center;position:relative}
.service-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,10,10,.4),transparent)}
.service-copy{padding:25px}
.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.gallery-item{position:relative;overflow:hidden;aspect-ratio:4/5;background:#222;display:block}
.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease;filter:saturate(.92)}
.gallery-item:hover img{transform:scale(1.045)}
.gallery-item:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.45));pointer-events:none}
.portfolio-note{color:var(--muted);font-size:.9rem;margin-top:20px}
.about-emblem img{filter:none}
@media(max-width:900px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-photo{height:240px}}
@media(max-width:560px){.brand img{width:58px;height:52px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.service-photo{height:220px}}


/* v4 motion design: subtle cinematic movement, accessible reduced-motion fallback */
.brand img{
  width:78px;height:64px;object-fit:contain;object-position:left center;
  border-radius:0!important;clip-path:none!important;mask:none!important;
  background:transparent;padding:0;border:0;box-shadow:none;
}
.brand{border-radius:0}
.hero{
  background-position:center 42%;
  animation:hero-image-drift 18s ease-in-out infinite alternate;
}
.hero-content{animation:hero-copy-in 1s cubic-bezier(.2,.75,.25,1) both}
.hero .eyebrow{animation:hero-copy-in .8s .08s both}
.hero h1{animation:hero-copy-in .95s .16s both}
.hero p{animation:hero-copy-in 1s .25s both}
.hero .actions{animation:hero-copy-in 1s .35s both}
@keyframes hero-image-drift{
  from{background-size:cover;background-position:50% 42%}
  to{background-size:110% auto;background-position:52% 45%}
}
@keyframes hero-copy-in{
  from{opacity:0;transform:translate3d(0,22px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
.service-card,.package,.price-card,.feedback-card{
  transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;
}
.service-card:hover,.package:hover,.price-card:hover,.feedback-card:hover{
  transform:translateY(-5px);border-color:#8e8063;
  box-shadow:0 14px 32px rgba(0,0,0,.22);
}
.service-photo{overflow:hidden}
.service-photo:before{
  content:"";position:absolute;inset:0;background:inherit;background-size:cover;
  background-position:center;transform:scale(1.01);transition:transform .7s ease;
}
.service-card:hover .service-photo:before{transform:scale(1.08)}
.gallery-item img{transform:scale(1.015)}
.gallery-item:hover img{transform:scale(1.07)}
.btn{transition:transform .2s ease,background-color .2s ease,color .2s ease}
.btn:hover{transform:translateY(-2px);background:#e0d2b2;border-color:#e0d2b2}
@media(max-width:900px){
  .hero{animation:none;background-size:cover!important}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;
  animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* v5: gallery JPEGs include a subtle A.L. SHOOTS logo watermark. */


/* v6: dedicated live Instagram posts and Reels section */
.instagram-live{
  margin-top:30px;padding:clamp(22px,4vw,42px);
  border:1px solid var(--line,rgba(255,255,255,.12));
  border-radius:3px;background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.012));
  position:relative;overflow:hidden
}
.instagram-live:before{
  content:"";position:absolute;left:0;top:0;width:3px;height:100%;
  background:linear-gradient(180deg,#d7c29a,rgba(215,194,154,.05))
}
.instagram-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}
.instagram-heading h3{font:500 clamp(1.8rem,3vw,2.7rem)/1.1 Georgia,serif;margin:8px 0 10px}
.instagram-heading p{max-width:590px;color:var(--muted);margin:0;line-height:1.7}
.instagram-follow{white-space:nowrap}
.instagram-feed-wrap{min-height:180px}
.instagram-feed-setup{
  min-height:230px;padding:30px 22px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;
  border:1px dashed rgba(215,194,154,.32);background:rgba(0,0,0,.18)
}
.instagram-icon{font-size:38px;line-height:1;color:#d7c29a;margin-bottom:12px}
.instagram-feed-setup h4{font:500 1.45rem Georgia,serif;margin:0 0 9px}
.instagram-feed-setup p{max-width:520px;color:var(--muted);line-height:1.65;margin:0 0 20px}
.instagram-feed-setup .btn{margin-top:2px}
.instagram-live .sbi_item{border-radius:2px;overflow:hidden}
.instagram-live #sb_instagram{padding:0!important}
.instagram-live .sbi_photo{transition:transform .55s ease,filter .4s ease!important}
.instagram-live .sbi_item:hover .sbi_photo{transform:scale(1.035);filter:brightness(1.08)}
@media(max-width:640px){
  .instagram-heading{align-items:flex-start;flex-direction:column}
  .instagram-follow{white-space:normal}
  .instagram-live{padding:22px 16px}
}
