
:root{
  --bg:#030609;
  --panel:#090d12;
  --panel2:#10161d;
  --blue:#16adf5;
  --blue2:#5bd5ff;
  --white:#ffffff;
  --muted:#b8c0ca;
  --line:#24313d;
  --red:#f04d55;
  --gold:#e9bd54;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--white);
  font-family:Montserrat,Arial,sans-serif;
  font-size:18px;
  line-height:1.55;
}
img{max-width:100%;display:block}
a{color:inherit}
.announcement{
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  padding:10px 22px;
  background:linear-gradient(90deg,#07214a,#0a72b8,#07214a);
  font-size:15px;
  letter-spacing:.05em;
  text-align:center;
}
.site-header{
  height:112px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  padding:0 clamp(22px,4.5vw,72px);
  background:rgba(3,6,9,.96);
  border-bottom:1px solid #111b24;
  position:sticky;
  top:0;
  z-index:50;
  backdrop-filter:blur(12px);
}
.brand{
  width:310px;
  height:95px;
  overflow:hidden;
  display:flex;
  align-items:center;
}
.brand img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.main-nav{
  display:flex;
  align-items:center;
  gap:34px;
}
.main-nav a{
  text-decoration:none;
  text-transform:uppercase;
  font-size:15px;
  font-weight:800;
  letter-spacing:.04em;
  padding:12px 0;
  border-bottom:3px solid transparent;
}
.main-nav a:hover{
  color:var(--blue2);
  border-color:var(--blue);
}
.menu-btn{
  display:none;
  font-size:30px;
  border:0;
  background:none;
  color:white;
}
.hero{
  min-height:760px;
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:50px;
  align-items:center;
  padding:75px clamp(24px,5vw,82px);
  background:
    radial-gradient(circle at 78% 30%,rgba(0,157,255,.16),transparent 26%),
    linear-gradient(115deg,#020406 0%,#060c12 60%,#02101a 100%);
  overflow:hidden;
}
.hero-copy{max-width:760px}
.hero-kicker,.eyebrow{
  color:var(--blue);
  font-weight:900;
  letter-spacing:.16em;
  font-size:16px;
}
.hero h1{
  margin:18px 0 20px;
  font-family:Oswald,Montserrat,sans-serif;
  font-size:clamp(68px,7.6vw,120px);
  line-height:.92;
  letter-spacing:-.025em;
  text-transform:uppercase;
}
.hero h1 span,
.section-heading h2 span,
.unique-copy h2 span{
  color:var(--blue);
}
.hero-lead{
  max-width:700px;
  margin:0 0 28px;
  color:#d9e1e9;
  font-size:21px;
  font-weight:600;
  line-height:1.55;
}
.hero-proof{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin:25px 0 28px;
}
.hero-proof div{
  display:flex;
  align-items:center;
  gap:9px;
  padding:12px 14px;
  background:#080e14;
  border:1px solid var(--line);
  border-radius:10px;
  font-size:15px;
  font-weight:800;
}
.hero-proof b{color:var(--blue);font-size:20px}
.hero-actions{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom:24px;
}
.btn{
  min-height:52px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:13px 22px;
  border-radius:8px;
  text-decoration:none;
  font-size:16px;
  font-weight:900;
  letter-spacing:.03em;
  border:2px solid transparent;
  text-align:center;
}
.btn-blue{
  background:var(--blue);
  color:#02111a;
}
.btn-outline{
  border-color:#2ab6f6;
  color:white;
  background:#071019;
}
.btn-red{
  background:#c92f39;
  color:white;
}
.email-box{
  max-width:650px;
  display:flex;
  gap:16px;
  align-items:center;
  padding:16px 18px;
  border:2px solid var(--blue);
  border-radius:10px;
  background:#060b10;
  text-decoration:none;
}
.email-icon{
  font-size:30px;
  color:var(--blue2);
}
.email-box strong{
  display:block;
  font-size:17px;
}
.email-box small{
  display:block;
  color:#cdd7e1;
  font-size:16px;
  margin-top:2px;
}
.hero-visual{
  position:relative;
  display:grid;
  place-items:center;
}
.hero-visual:before{
  content:"";
  position:absolute;
  width:95%;
  aspect-ratio:1;
  border-radius:50%;
  background:radial-gradient(circle,rgba(21,172,244,.18),transparent 65%);
  filter:blur(18px);
}
.hero-visual img{
  width:min(690px,100%);
  max-height:610px;
  object-fit:cover;
  border:1px solid #26394a;
  box-shadow:0 30px 90px rgba(0,0,0,.6),0 0 50px rgba(0,162,255,.12);
  position:relative;
  z-index:1;
}
.price-bubble{
  position:absolute;
  z-index:3;
  right:-5px;
  bottom:-20px;
  width:210px;
  aspect-ratio:1;
  border-radius:50%;
  background:#101922;
  border:4px solid var(--blue);
  box-shadow:0 15px 50px rgba(0,0,0,.55);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:18px;
}
.price-bubble span,
.price-bubble small,
.price-bubble em{display:block;font-style:normal}
.price-bubble span{font-size:13px;font-weight:900}
.price-bubble small{font-size:14px;font-weight:800}
.price-bubble strong{
  font-family:Oswald,sans-serif;
  font-size:52px;
  line-height:1;
  color:var(--blue2);
  margin:6px 0;
}
.price-bubble em{
  font-size:11px;
  font-weight:800;
  line-height:1.25;
}
.headline-strip{
  min-height:70px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  flex-wrap:wrap;
  padding:12px 20px;
  background:linear-gradient(90deg,#06152e,#0c71b6,#06152e);
  font-family:Oswald,sans-serif;
  font-size:28px;
  letter-spacing:.04em;
}
.headline-strip span{color:#8bdfff}
.section{padding:95px clamp(22px,4.8vw,78px)}
.section-heading{
  max-width:980px;
  margin-bottom:48px;
}
.section-heading.center{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.section-heading h2,
.unique-copy h2,
.contact-section h2{
  font-family:Oswald,Montserrat,sans-serif;
  font-size:clamp(48px,5.3vw,82px);
  line-height:.98;
  margin:10px 0 16px;
  text-transform:uppercase;
  letter-spacing:-.02em;
}
.section-heading p{
  color:var(--muted);
  font-size:20px;
  max-width:840px;
  margin:0 auto;
}
.gallery-section{
  background:#05080b;
}
.gallery-grid{
  max-width:1420px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.art-card{
  margin:0;
  background:#0b1015;
  border:1px solid #28343f;
  overflow:hidden;
  position:relative;
  min-height:410px;
  box-shadow:0 15px 40px rgba(0,0,0,.35);
}
.art-card img{
  width:100%;
  height:100%;
  position:absolute;
  inset:0;
  object-fit:cover;
}
.art-card:after{
  content:"";
  position:absolute;
  inset:55% 0 0;
  background:linear-gradient(transparent,rgba(0,0,0,.92));
}
.art-card figcaption{
  position:absolute;
  left:22px;
  right:22px;
  bottom:18px;
  z-index:2;
}
.art-card figcaption strong{
  display:block;
  font-family:Oswald,sans-serif;
  font-size:34px;
  letter-spacing:.03em;
}
.art-card figcaption span{
  display:block;
  color:#b9c6d1;
  font-size:16px;
  font-weight:700;
}
.price-section{
  background:#070b0f;
  border-top:1px solid #14202a;
}
.price-callout{
  max-width:1100px;
  margin:0 auto 40px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:32px;
  padding:22px 28px;
  background:linear-gradient(90deg,#071b30,#0a4e7c,#071b30);
  border:1px solid #15547b;
}
.price-callout>div{
  display:flex;
  align-items:baseline;
  gap:14px;
}
.price-callout span{font-weight:900;font-size:18px}
.price-callout strong{
  font-family:Oswald,sans-serif;
  font-size:62px;
  color:var(--blue2);
}
.price-callout p{
  margin:0;
  font-size:20px;
  font-weight:700;
}
.price-cards{
  max-width:1500px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.price-tile{
  background:#0c1117;
  border:1px solid #2a3540;
  padding:16px;
  text-align:center;
  position:relative;
  overflow:hidden;
}
.price-tile h3{
  font-family:Oswald,sans-serif;
  font-size:34px;
  margin:3px 0 13px;
}
.price-tile img{
  width:100%;
  height:205px;
  object-fit:cover;
  border:1px solid #28343e;
  margin-bottom:12px;
}
.size-price{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:9px 2px;
  border-bottom:1px solid #26313b;
}
.size-price span{
  font-size:18px;
  font-weight:900;
}
.size-price b{
  font-family:Oswald,sans-serif;
  font-size:34px;
  color:var(--blue2);
}
.price-tile p{
  margin:12px 0 2px;
  color:#dce4eb;
  font-size:14px;
  font-weight:900;
  letter-spacing:.04em;
}
.included-strip{
  max-width:1400px;
  margin:24px auto 0;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:1px solid #32404c;
}
.included-strip div{
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:15px;
  border-right:1px solid #32404c;
  text-align:center;
}
.included-strip div:last-child{border-right:0}
.included-strip strong{
  color:var(--blue);
  font-size:30px;
}
.included-strip span{
  font-size:16px;
  font-weight:900;
}
.locations-section{
  background:#030609;
}
.location-grid{
  max-width:1450px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
}
.location-card{
  min-height:520px;
  padding:42px;
  border:1px solid #2f3a44;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.location-card:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.18;
  background:
    radial-gradient(circle at 85% 70%,#0ab4ff,transparent 38%),
    linear-gradient(135deg,#0e2840,#07111b);
}
.location-card.christmas:before{
  background:
    radial-gradient(circle at 85% 70%,#f04646,transparent 40%),
    linear-gradient(135deg,#3b1619,#101010);
}
.location-card>*{position:relative;z-index:1}
.location-tag{
  display:inline-flex;
  align-self:flex-start;
  background:#0f83bf;
  padding:8px 12px;
  font-weight:900;
  font-size:15px;
  letter-spacing:.08em;
}
.location-tag.red{background:#b92d35}
.location-card h3{
  font-family:Oswald,sans-serif;
  font-size:clamp(48px,4.5vw,72px);
  line-height:1;
  margin:18px 0 4px;
}
.location-card.christmas h3{color:#ff5a61}
.location-card h4{
  font-size:20px;
  margin:0 0 20px;
  color:var(--blue2);
}
.location-card.christmas h4{color:#f2c9c9}
.location-card p{
  max-width:660px;
  font-size:19px;
  color:#eef3f7;
}
.location-card .notice{
  font-weight:900;
  color:white;
}
.location-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:12px;
}
.unique-section{
  max-width:1500px;
  margin:auto;
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:46px;
  align-items:center;
  background:#080c10;
  border:1px solid #27333d;
}
.unique-image{
  overflow:hidden;
}
.unique-image img{
  width:100%;
  height:390px;
  object-fit:cover;
}
.unique-copy p{
  font-size:20px;
  color:#c5d0da;
  max-width:760px;
}
.contact-section{
  margin:0;
  padding:70px clamp(22px,5vw,82px);
  background:linear-gradient(90deg,#07162b,#0a5790,#07162b);
  display:grid;
  grid-template-columns:1fr auto;
  gap:35px;
  align-items:center;
}
.contact-section>div>span{
  font-size:16px;
  font-weight:900;
  color:#8fe2ff;
  letter-spacing:.13em;
}
.contact-section h2{
  margin:5px 0 8px;
  font-size:clamp(46px,5vw,76px);
}
.contact-section p{
  margin:0;
  font-size:19px;
}
.contact-email{
  text-decoration:none;
  background:white;
  color:#071525;
  padding:18px 24px;
  border-radius:8px;
  font-size:18px;
  font-weight:900;
  white-space:nowrap;
}
footer{
  padding:55px clamp(22px,5vw,82px) 28px;
  background:#010203;
  text-align:center;
  border-top:1px solid #1a242d;
}
.footer-logo{
  width:330px;
  max-width:85vw;
  margin:0 auto 28px;
}
.footer-links,
.social-links{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:20px 30px;
  margin:18px 0;
}
.footer-links a,
.social-links a{
  font-size:16px;
  font-weight:800;
  text-decoration:none;
}
.footer-links a:hover,
.social-links a:hover{color:var(--blue2)}
.footer-price{
  color:var(--blue2);
  font-weight:900;
  font-size:18px;
  margin:28px 0 15px;
}
footer small{
  color:#84919d;
  font-size:14px;
}

@media(max-width:1120px){
  .main-nav{gap:19px}
  .main-nav a{font-size:13px}
  .brand{width:250px}
  .hero{grid-template-columns:1fr}
  .hero-copy{text-align:center;margin:auto}
  .hero-proof,.hero-actions{justify-content:center}
  .email-box{margin-left:auto;margin-right:auto;text-align:left}
  .hero-visual{max-width:760px;margin:auto}
  .price-cards{grid-template-columns:repeat(2,1fr)}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
  body{font-size:17px}
  .site-header{height:92px}
  .brand{width:215px;height:78px}
  .menu-btn{display:block}
  .main-nav{
    display:none;
    position:absolute;
    left:0;right:0;top:92px;
    background:#05080b;
    padding:25px;
    flex-direction:column;
    align-items:flex-start;
    border-bottom:1px solid #24303a;
  }
  .main-nav.open{display:flex}
  .main-nav a{font-size:17px;width:100%}
  .hero{padding-top:58px}
  .hero h1{font-size:clamp(62px,14vw,90px)}
  .hero-lead{font-size:19px}
  .price-bubble{width:170px;right:0}
  .price-bubble strong{font-size:43px}
  .location-grid,.unique-section,.contact-section{grid-template-columns:1fr}
  .included-strip{grid-template-columns:repeat(2,1fr)}
  .included-strip div:nth-child(2){border-right:0}
  .included-strip div:nth-child(-n+2){border-bottom:1px solid #32404c}
  .contact-section{text-align:center}
  .contact-email{white-space:normal}
}
@media(max-width:580px){
  .announcement{font-size:12px;gap:8px}
  .site-header{padding:0 14px}
  .brand{width:170px}
  .hero{padding:45px 17px 70px}
  .hero-kicker,.eyebrow{font-size:13px}
  .hero h1{font-size:56px}
  .hero-lead{font-size:18px}
  .hero-proof{display:grid}
  .hero-proof div{font-size:14px}
  .hero-actions{display:grid}
  .btn{width:100%;font-size:15px}
  .email-box{padding:14px}
  .email-box strong{font-size:14px}
  .email-box small{font-size:13px;word-break:break-all}
  .hero-visual img{min-height:330px}
  .price-bubble{
    width:145px;
    right:4px;
    bottom:-35px;
  }
  .price-bubble strong{font-size:36px}
  .price-bubble span,.price-bubble small{font-size:11px}
  .price-bubble em{font-size:9px}
  .headline-strip{font-size:22px}
  .section{padding:72px 16px}
  .section-heading h2,.unique-copy h2{font-size:48px}
  .section-heading p{font-size:18px}
  .gallery-grid,.price-cards{grid-template-columns:1fr}
  .art-card{min-height:365px}
  .price-callout{display:block;text-align:center;padding:20px}
  .price-callout>div{justify-content:center}
  .price-callout p{font-size:17px}
  .price-tile img{height:245px}
  .included-strip{grid-template-columns:1fr}
  .included-strip div{
    border-right:0!important;
    border-bottom:1px solid #32404c;
  }
  .included-strip div:last-child{border-bottom:0}
  .location-card{padding:30px 22px;min-height:500px}
  .location-card h3{font-size:48px}
  .location-card p{font-size:17px}
  .unique-section{padding:0}
  .unique-copy{padding:28px 22px 36px}
  .unique-image img{height:300px}
  .contact-section{padding:55px 18px}
  .contact-section h2{font-size:48px}
  .contact-email{font-size:14px;padding:16px}
}


/* Professional trust section */
.trust-section{
  background:#05080b;
  border-top:1px solid #16212b;
  border-bottom:1px solid #16212b;
  padding:24px clamp(18px,4vw,60px);
}
.trust-grid{
  max-width:1400px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:1px solid #293641;
  background:#0a0f14;
}
.trust-item{
  min-height:130px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:4px;
  padding:20px;
  border-right:1px solid #293641;
}
.trust-item:last-child{border-right:0}
.trust-item strong{
  font-family:Oswald,sans-serif;
  font-size:48px;
  line-height:1;
  color:#54d0ff;
}
.trust-item span{
  font-size:16px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.03em;
}
@media(max-width:820px){
  .trust-grid{grid-template-columns:repeat(2,1fr)}
  .trust-item:nth-child(2){border-right:0}
  .trust-item:nth-child(-n+2){border-bottom:1px solid #293641}
}
@media(max-width:520px){
  .trust-grid{grid-template-columns:1fr}
  .trust-item{border-right:0;border-bottom:1px solid #293641}
  .trust-item:last-child{border-bottom:0}
  .trust-item strong{font-size:42px}
}


/* V10 gallery cleanup + splatter treatment */
.splatter-gallery{
  grid-template-columns:repeat(4,1fr);
}
.splatter-card{
  min-height:420px;
  background:
    radial-gradient(circle at 12% 18%,rgba(255,255,255,.10) 0 2px,transparent 3px),
    radial-gradient(circle at 20% 26%,rgba(255,255,255,.08) 0 4px,transparent 5px),
    radial-gradient(circle at 82% 22%,rgba(88,206,255,.13) 0 3px,transparent 4px),
    radial-gradient(circle at 87% 68%,rgba(255,255,255,.08) 0 5px,transparent 6px),
    radial-gradient(circle at 10% 74%,rgba(88,206,255,.11) 0 3px,transparent 4px),
    linear-gradient(145deg,#05080b,#0a1016);
  overflow:hidden;
}
.splatter-card::before,
.splatter-card::after{
  content:"";
  position:absolute;
  z-index:0;
  border-radius:50%;
  filter:blur(.2px);
  opacity:.28;
  pointer-events:none;
}
.splatter-card::before{
  width:220px;
  height:120px;
  left:-50px;
  top:55px;
  background:
    radial-gradient(ellipse at center,rgba(255,255,255,.65),rgba(255,255,255,.15) 42%,transparent 68%);
  transform:rotate(-16deg);
}
.splatter-card::after{
  width:180px;
  height:100px;
  right:-40px;
  bottom:55px;
  background:
    radial-gradient(ellipse at center,rgba(74,198,255,.55),rgba(255,255,255,.12) 45%,transparent 70%);
  transform:rotate(22deg);
}
.splatter-card img{
  z-index:1;
  object-fit:contain;
  padding:14px;
  background:transparent;
  filter:drop-shadow(0 14px 20px rgba(0,0,0,.55));
}
.splatter-card figcaption{z-index:3}
.price-tile img{
  object-fit:contain;
  background:
    radial-gradient(circle at 20% 30%,rgba(255,255,255,.08) 0 3px,transparent 4px),
    radial-gradient(circle at 80% 65%,rgba(46,185,244,.10) 0 4px,transparent 5px),
    #070b0f;
  padding:8px;
}
@media(max-width:1150px){
  .splatter-gallery{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:580px){
  .splatter-gallery{grid-template-columns:1fr}
  .splatter-card{min-height:390px}
}


/* V11: framed artwork floats directly on the website — no photo background box */
.hero-visual img,
.art-card img,
.splatter-card img,
.price-tile img{
  background:transparent !important;
}
.hero-visual{
  background:transparent !important;
}
.hero-visual img{
  object-fit:contain !important;
  border:0 !important;
  box-shadow:none !important;
  filter:drop-shadow(0 24px 35px rgba(0,0,0,.7));
}
.art-card,
.splatter-card{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.splatter-card img{
  object-fit:contain !important;
  padding:8px !important;
}
.price-tile img{
  object-fit:contain !important;
  border:0 !important;
  padding:6px !important;
}


/* V12 — frame-only artwork. The source photos are cropped to the black frame edge,
   so there is no studio/white background left to display. */
.hero-visual img,
.gallery-grid img,
.price-tile img{
  background:transparent !important;
  object-fit:contain !important;
  padding:0 !important;
  border:0 !important;
  outline:0 !important;
}
.hero-visual img{
  width:min(690px,100%) !important;
  filter:drop-shadow(0 22px 32px rgba(0,0,0,.65));
}
.splatter-card{
  overflow:visible !important;
}


/* V14 real camera eye hero + raw eye section */
.hero-eye-visual{
  min-height:620px;
  position:relative;
  display:grid;
  place-items:center;
  overflow:visible;
}
.hero-eye-visual img{
  width:min(700px,100%) !important;
  height:auto !important;
  max-height:650px !important;
  object-fit:cover !important;
  border-radius:50% !important;
  aspect-ratio:1 !important;
  clip-path:circle(46% at 50% 50%);
  filter:
    saturate(1.06)
    contrast(1.04)
    drop-shadow(0 0 18px rgba(55,193,255,.22))
    drop-shadow(0 28px 50px rgba(0,0,0,.72)) !important;
  position:relative;
  z-index:2;
}
.eye-halo{
  position:absolute;
  width:min(760px,110%);
  aspect-ratio:1;
  border-radius:50%;
  background:
    radial-gradient(circle,
      rgba(41,181,245,.26) 0 42%,
      rgba(41,181,245,.11) 52%,
      transparent 70%);
  filter:blur(18px);
  z-index:1;
}
.hero-eye-visual:before{
  content:"";
  position:absolute;
  width:90%;
  height:90%;
  background:
    radial-gradient(circle at 20% 25%,rgba(255,255,255,.12) 0 2px,transparent 3px),
    radial-gradient(circle at 82% 30%,rgba(49,187,245,.18) 0 3px,transparent 4px),
    radial-gradient(circle at 87% 70%,rgba(255,255,255,.09) 0 4px,transparent 5px),
    radial-gradient(circle at 16% 72%,rgba(49,187,245,.13) 0 3px,transparent 4px);
  z-index:0;
}
.hero-eye-visual .price-bubble{
  z-index:4;
  right:0;
  bottom:20px;
}
.camera-section{
  background:#05080b;
  border-top:1px solid #16212b;
  border-bottom:1px solid #16212b;
}
.camera-eye-grid{
  max-width:1300px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}
.camera-eye-card{
  background:#0a0f14;
  border:1px solid #26343f;
  overflow:hidden;
}
.camera-eye-card img{
  width:100%;
  height:430px;
  object-fit:cover;
  display:block;
}
.camera-eye-copy{
  padding:18px 20px 22px;
}
.camera-eye-copy strong{
  display:block;
  font-family:Oswald,Montserrat,sans-serif;
  color:#55d2ff;
  font-size:28px;
  letter-spacing:.03em;
}
.camera-eye-copy span{
  display:block;
  color:#c8d2dc;
  font-size:17px;
  font-weight:700;
  margin-top:4px;
}
@media(max-width:900px){
  .hero-eye-visual{min-height:520px}
  .hero-eye-visual img{max-width:560px}
  .camera-eye-grid{grid-template-columns:1fr}
}
@media(max-width:580px){
  .hero-eye-visual{min-height:400px}
  .hero-eye-visual img{max-width:390px}
  .camera-eye-card img{height:310px}
  .camera-eye-copy strong{font-size:24px}
  .camera-eye-copy span{font-size:15px}
}


/* V15: Correct 4-eye artwork = portrait frame, entire image visible, no crop */
.gallery-grid img[src*="frame-4-PORTRAIT"],
.price-tile img[src*="frame-4-PORTRAIT"]{
  object-fit:contain !important;
  width:100% !important;
  height:100% !important;
  max-height:100% !important;
  padding:0 !important;
  background:transparent !important;
}

/* Give portrait framed artwork enough vertical room everywhere */
.art-card:has(img[src*="frame-4-PORTRAIT"]){
  min-height:540px !important;
}
.price-tile:has(img[src*="frame-4-PORTRAIT"]) img{
  height:300px !important;
}

/* Real blue eye explosion hero — CSS only, no generated image */
.hero-eye-visual{
  position:relative;
  isolation:isolate;
}
.hero-eye-visual::after{
  content:"";
  position:absolute;
  z-index:1;
  width:min(760px,112%);
  aspect-ratio:1;
  background:
    radial-gradient(circle at 50% 50%, transparent 0 42%, rgba(44,194,255,.2) 43% 47%, transparent 48%),
    repeating-conic-gradient(
      from 0deg,
      rgba(90,215,255,.75) 0deg 1.2deg,
      transparent 1.2deg 4.2deg,
      rgba(255,255,255,.34) 4.2deg 4.8deg,
      transparent 4.8deg 8deg
    );
  -webkit-mask:radial-gradient(circle, transparent 0 43%, #000 44% 58%, transparent 72%);
  mask:radial-gradient(circle, transparent 0 43%, #000 44% 58%, transparent 72%);
  filter:blur(.6px) drop-shadow(0 0 20px rgba(20,175,245,.55));
  opacity:.8;
  transform:scale(1.08);
  pointer-events:none;
}
.hero-eye-visual img{
  z-index:2 !important;
  width:min(680px,100%) !important;
  aspect-ratio:1 !important;
  object-fit:cover !important;
  border-radius:50% !important;
  clip-path:circle(43% at 50% 50%) !important;
  filter:
    saturate(1.12)
    contrast(1.08)
    drop-shadow(0 0 24px rgba(59,205,255,.4))
    drop-shadow(0 28px 55px rgba(0,0,0,.8)) !important;
}
.hero-eye-visual .price-bubble{
  z-index:4 !important;
}

@media(max-width:580px){
  .art-card:has(img[src*="frame-4-PORTRAIT"]){
    min-height:500px !important;
  }
  .price-tile:has(img[src*="frame-4-PORTRAIT"]) img{
    height:360px !important;
  }
}


/* V16: top blue explosion eye is explicitly FRAMELESS */
.hero-eye-visual img{
  border:none !important;
  outline:none !important;
  box-shadow:none !important;
  background:transparent !important;
  padding:0 !important;
  border-radius:50% !important;
  clip-path:circle(43% at 50% 50%) !important;
}
.hero-eye-visual{
  border:none !important;
  outline:none !important;
  background:transparent !important;
  box-shadow:none !important;
}


/* V17 — REWORKED HERO SPLASH
   Real eye photo stays. No blue background. No radial sunburst lines.
   Irregular splash effect only around the eye. */

.hero-eye-visual{
  background:transparent !important;
  overflow:visible !important;
  isolation:isolate;
}

/* Kill the previous sunburst */
.hero-eye-visual::after{
  content:"" !important;
  position:absolute !important;
  inset:auto !important;
  width:min(760px,112%) !important;
  aspect-ratio:1 !important;
  z-index:1 !important;
  border-radius:50% !important;

  /* irregular splash body and droplets only */
  background:
    radial-gradient(circle at 8% 48%, rgba(255,255,255,.95) 0 2.2%, transparent 2.5%),
    radial-gradient(circle at 14% 29%, rgba(95,210,255,.95) 0 1.6%, transparent 2%),
    radial-gradient(circle at 18% 73%, rgba(255,255,255,.85) 0 1.3%, transparent 1.7%),
    radial-gradient(circle at 24% 12%, rgba(255,255,255,.9) 0 1.1%, transparent 1.5%),
    radial-gradient(circle at 29% 86%, rgba(89,201,255,.95) 0 1.5%, transparent 1.9%),
    radial-gradient(circle at 39% 4%, rgba(255,255,255,.82) 0 1.2%, transparent 1.6%),
    radial-gradient(circle at 47% 92%, rgba(255,255,255,.9) 0 1.7%, transparent 2.1%),
    radial-gradient(circle at 61% 5%, rgba(90,207,255,.95) 0 1.3%, transparent 1.7%),
    radial-gradient(circle at 70% 88%, rgba(255,255,255,.9) 0 1.4%, transparent 1.8%),
    radial-gradient(circle at 80% 15%, rgba(255,255,255,.88) 0 1.8%, transparent 2.2%),
    radial-gradient(circle at 88% 37%, rgba(85,199,255,.95) 0 1.4%, transparent 1.8%),
    radial-gradient(circle at 93% 61%, rgba(255,255,255,.9) 0 2%, transparent 2.4%),
    radial-gradient(circle at 84% 78%, rgba(255,255,255,.82) 0 1.1%, transparent 1.5%),

    /* larger splash lobes around the iris */
    radial-gradient(ellipse at 50% 6%, rgba(255,255,255,.92) 0 3%, rgba(80,196,255,.75) 4%, transparent 10%),
    radial-gradient(ellipse at 94% 48%, rgba(255,255,255,.9) 0 3%, rgba(63,184,245,.7) 4%, transparent 11%),
    radial-gradient(ellipse at 54% 96%, rgba(255,255,255,.9) 0 3%, rgba(76,193,250,.72) 4%, transparent 10%),
    radial-gradient(ellipse at 5% 54%, rgba(255,255,255,.9) 0 3%, rgba(72,190,249,.72) 4%, transparent 11%),

    /* broken splash ring */
    conic-gradient(
      from -8deg,
      transparent 0 7deg,
      rgba(255,255,255,.92) 7deg 10deg,
      transparent 10deg 22deg,
      rgba(65,186,247,.9) 22deg 26deg,
      transparent 26deg 41deg,
      rgba(255,255,255,.86) 41deg 44deg,
      transparent 44deg 62deg,
      rgba(88,207,255,.9) 62deg 66deg,
      transparent 66deg 82deg,
      rgba(255,255,255,.92) 82deg 86deg,
      transparent 86deg 103deg,
      rgba(72,195,251,.88) 103deg 107deg,
      transparent 107deg 127deg,
      rgba(255,255,255,.9) 127deg 130deg,
      transparent 130deg 149deg,
      rgba(76,197,252,.88) 149deg 153deg,
      transparent 153deg 174deg,
      rgba(255,255,255,.9) 174deg 178deg,
      transparent 178deg 199deg,
      rgba(66,187,246,.9) 199deg 203deg,
      transparent 203deg 224deg,
      rgba(255,255,255,.88) 224deg 228deg,
      transparent 228deg 251deg,
      rgba(82,201,255,.88) 251deg 255deg,
      transparent 255deg 280deg,
      rgba(255,255,255,.9) 280deg 284deg,
      transparent 284deg 309deg,
      rgba(74,194,251,.9) 309deg 313deg,
      transparent 313deg 337deg,
      rgba(255,255,255,.88) 337deg 341deg,
      transparent 341deg 360deg
    ) !important;

  -webkit-mask:
    radial-gradient(circle at 50% 50%, transparent 0 43%, #000 44% 51%, transparent 68%) !important;
  mask:
    radial-gradient(circle at 50% 50%, transparent 0 43%, #000 44% 51%, transparent 68%) !important;

  filter:
    blur(.25px)
    drop-shadow(0 0 8px rgba(255,255,255,.25))
    drop-shadow(0 0 12px rgba(37,180,245,.45)) !important;

  opacity:1 !important;
  transform:scale(1.13) rotate(-3deg) !important;
  pointer-events:none;
}

/* separate scattered droplets further outside */
.hero-eye-visual::before{
  content:"" !important;
  position:absolute !important;
  width:min(820px,118%) !important;
  aspect-ratio:1 !important;
  z-index:0 !important;
  border-radius:50% !important;
  background:
    radial-gradient(circle at 7% 23%, rgba(255,255,255,.85) 0 4px, transparent 5px),
    radial-gradient(circle at 3% 61%, rgba(67,191,249,.9) 0 6px, transparent 7px),
    radial-gradient(circle at 14% 88%, rgba(255,255,255,.75) 0 4px, transparent 5px),
    radial-gradient(circle at 28% 3%, rgba(73,196,251,.88) 0 5px, transparent 6px),
    radial-gradient(circle at 49% 0%, rgba(255,255,255,.8) 0 3px, transparent 4px),
    radial-gradient(circle at 73% 4%, rgba(68,190,247,.88) 0 5px, transparent 6px),
    radial-gradient(circle at 91% 19%, rgba(255,255,255,.82) 0 4px, transparent 5px),
    radial-gradient(circle at 98% 53%, rgba(62,185,245,.9) 0 6px, transparent 7px),
    radial-gradient(circle at 91% 83%, rgba(255,255,255,.8) 0 4px, transparent 5px),
    radial-gradient(circle at 69% 98%, rgba(73,196,250,.88) 0 5px, transparent 6px),
    radial-gradient(circle at 38% 97%, rgba(255,255,255,.82) 0 4px, transparent 5px),
    radial-gradient(circle at 17% 75%, rgba(74,195,248,.9) 0 3px, transparent 4px) !important;
  filter:drop-shadow(0 0 7px rgba(60,190,250,.45)) !important;
  opacity:.95 !important;
  pointer-events:none;
}

/* Keep only the circular eye itself — no white skin rectangle */
.hero-eye-visual img{
  width:min(680px,100%) !important;
  aspect-ratio:1 !important;
  object-fit:cover !important;
  object-position:center center !important;
  clip-path:circle(39% at 50% 50%) !important;
  border-radius:50% !important;
  border:0 !important;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  z-index:2 !important;
  filter:
    saturate(1.08)
    contrast(1.06)
    drop-shadow(0 0 14px rgba(70,199,255,.35))
    drop-shadow(0 24px 48px rgba(0,0,0,.78)) !important;
}

@media(max-width:580px){
  .hero-eye-visual::after{transform:scale(1.08) rotate(-3deg) !important;}
  .hero-eye-visual::before{width:108% !important;}
}


/* V18 — use the supplied internet splash image itself. No CSS-created rays/splash. */
.hero-eye-visual::before,
.hero-eye-visual::after,
.hero-eye-visual .eye-halo{
  display:none !important;
  content:none !important;
}
.hero-eye-visual{
  background:transparent !important;
  overflow:visible !important;
}
.hero-eye-visual img{
  width:min(720px,100%) !important;
  height:auto !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  clip-path:none !important;
  border-radius:0 !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  padding:0 !important;
  filter:drop-shadow(0 24px 48px rgba(0,0,0,.72)) !important;
}

/* V19 — exact supplied explosion image, huge top hero */
.hero{
  grid-template-columns:.86fr 1.14fr !important;
  min-height:850px !important;
  padding-right:0 !important;
}
.hero-eye-visual{
  min-height:800px !important;
  width:100% !important;
  overflow:hidden !important;
  background:#030609 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
}
.hero-eye-visual::before,
.hero-eye-visual::after,
.hero-eye-visual .eye-halo{
  display:none !important;
  content:none !important;
}
.hero-eye-visual img{
  width:100% !important;
  max-width:980px !important;
  height:800px !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center !important;
  clip-path:none !important;
  border-radius:0 !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:#000 !important;
  padding:0 !important;
  filter:none !important;
  z-index:2 !important;
}
.hero-eye-visual .price-bubble{
  right:4% !important;
  bottom:6% !important;
  z-index:4 !important;
}
@media(max-width:1120px){
  .hero{grid-template-columns:1fr !important;padding-right:24px !important}
  .hero-eye-visual{min-height:650px !important;justify-content:center !important}
  .hero-eye-visual img{height:auto !important;width:100% !important}
}
@media(max-width:580px){
  .hero-eye-visual{min-height:430px !important}
  .hero-eye-visual img{width:125% !important;max-width:125% !important}
}
