/* DJ WHISTLE · Static website v1.1 · No frameworks or external fonts */
:root{--bg:#0d0a0e;--bg2:#171118;--bg3:#241924;--paper:#f8f3f6;--ink:#1b141a;--soft:#b4a8b4;--accent:#f080b4;--brand:#810c47;--brand-strong:#a51657;--brand-hover:#c52b7b;--line:rgba(255,255,255,.13);--page:1180px;--r:22px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--bg);color:white;font:400 16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.07;letter-spacing:-.055em}h1{font-size:clamp(3.7rem,8vw,8.15rem);font-weight:900}h2{font-size:clamp(2.5rem,5.6vw,5.5rem);font-weight:850}h3{font-size:clamp(1.3rem,2vw,1.65rem);font-weight:780}p{max-width:68ch}::selection{background:var(--accent);color:var(--ink)}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}section[id]{scroll-margin-top:100px}.container{width:min(calc(100% - 72px),var(--page));margin-inline:auto}.eyebrow{display:inline-flex;align-items:center;gap:11px;text-transform:uppercase;font-size:.72rem;font-weight:850;letter-spacing:.17em;color:var(--accent)}.eyebrow:before{content:'';width:21px;height:2px;background:currentColor}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.section-top p{max-width:375px;color:var(--soft);font-size:1.05rem}.serif-accent{color:var(--accent)}.text-muted{color:var(--soft)}.on-light .text-muted{color:#55565f}.pill{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:15px 23px;background:var(--brand-strong);color:#fff;border:1px solid var(--brand-strong);font-size:.85rem;font-weight:850;border-radius:100px;white-space:nowrap;transition:transform .2s ease,background .2s ease}.pill:hover{transform:translateY(-3px);background:var(--brand-hover);border-color:var(--brand-hover)}.pill-dark{background:transparent;color:white;border-color:rgba(255,255,255,.35)}.pill-dark:hover{background:white;color:var(--ink)}.pill-arrow{font-size:1.15rem;line-height:1}.link-arrow{display:inline-flex;gap:12px;align-items:center;font-weight:800;font-size:.88rem}.link-arrow span{font-size:1.3rem;color:var(--accent)}.link-arrow:hover{text-decoration:underline;text-underline-offset:6px}.highlight{color:var(--accent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Header */
.site-header{height:86px;position:sticky;top:0;z-index:100;background:rgba(13,10,14,.95);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.08)}.site-header .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:flex;gap:10px;align-items:center;flex:none}.logo-square{height:41px;width:41px;border:2px solid var(--accent);border-radius:9px;display:grid;place-items:center;font-weight:950;font-size:1rem;letter-spacing:-.08em;color:var(--accent);transform:rotate(-7deg)}.logo-words{line-height:1;display:grid;gap:4px}.logo-words strong{font-size:1.12rem;letter-spacing:.08em;font-weight:950}.logo-words small{font-size:.56rem;color:#b2b1b8;letter-spacing:.35em;font-weight:700}.nav{display:flex;align-items:center;gap:27px}.nav a{color:#d2d1d4;font-weight:700;font-size:.83rem;transition:color .2s}.nav a:hover,.nav a[aria-current=page]{color:var(--accent)}.nav .pill{color:#fff;padding:12px 18px;font-size:.78rem}.nav .pill:hover{color:#fff}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);color:white;width:43px;height:43px;border-radius:12px;font-size:1.4rem;align-items:center;justify-content:center}
/* Hero */
.hero{position:relative;isolation:isolate;overflow:hidden;padding:72px 0 84px;min-height:720px;background:radial-gradient(ellipse 70% 88% at 96% 44%,#381627 0%,transparent 63%),var(--bg)}.hero:before{position:absolute;content:'';inset:0;background-image:radial-gradient(rgba(255,255,255,.14) .6px,transparent .6px);background-size:21px 21px;opacity:.15;z-index:-1}.hero-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:44px;align-items:center}.hero .eyebrow{margin-bottom:28px}.hero h1{max-width:850px}.hero h1 .line{display:block}.hero h1 .outline{color:transparent;-webkit-text-stroke:1.6px rgba(255,255,255,.85)}.hero h1 .highlight{display:block}.hero-description{color:#d4d3d9;max-width:455px;font-size:1.09rem;margin-top:28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.hero-foot{margin-top:48px;display:flex;align-items:center;gap:24px;font-size:.72rem;letter-spacing:.1em;color:#b6b5bd;text-transform:uppercase;font-weight:750}.hero-foot span+span{border-left:1px solid #56545c;padding-left:24px}.hero-visual{height:610px;position:relative;padding:0 20px 0 0}.hero-main-photo{position:absolute;inset:0 20px 0 0;border-radius:40% 40% 18px 18px / 27% 27% 18px 18px;overflow:hidden;transform:rotate(2deg)}.hero-main-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 56%;filter:saturate(1.05)}.hero-main-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(16,16,20,.65))}.hero-visual:before{content:'';position:absolute;width:75%;height:65%;border:1px solid rgba(240,128,180,.65);border-radius:50%;top:-28px;right:-15px;transform:rotate(26deg)}.hero-photo-label{position:absolute;bottom:24px;right:-10px;background:var(--brand-strong);color:#fff;padding:13px 17px;border-radius:10px;transform:rotate(-5deg);font-size:.78rem;font-weight:950;text-transform:uppercase;letter-spacing:.09em;box-shadow:0 15px 35px #0006}.hero-roundel{position:absolute;top:45%;left:-57px;width:120px;height:120px;background:#22222a;border:1px solid #55545b;border-radius:50%;display:grid;place-items:center;text-align:center;transform:rotate(-13deg);font-size:.68rem;letter-spacing:.15em;line-height:1.65;font-weight:900}.hero-roundel strong{font-size:1.5rem;display:block;color:var(--accent);line-height:1}.trust-strip{background:#20131d;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-items{padding:19px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.trust-items div{display:flex;align-items:center;gap:16px;font-weight:780;font-size:.8rem;letter-spacing:.025em}.trust-items span{font-size:1.3rem;color:var(--accent)}
/* Sections */
.services{padding:112px 0 116px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{min-height:340px;background:#20151e;border:1px solid rgba(255,255,255,.09);border-radius:var(--r);padding:28px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .25s,border-color .25s,background .25s;position:relative;overflow:hidden}.service-card:after{position:absolute;content:'';width:200px;height:200px;background:radial-gradient(circle,rgba(129,12,71,.3),transparent 66%);right:-90px;bottom:-70px;pointer-events:none}.service-card:hover{transform:translateY(-7px);border-color:var(--accent);background:#321c2c}.service-card .number{font-size:.77rem;color:var(--accent);font-weight:800;letter-spacing:.13em}.service-card .service-symbol{font-size:3.9rem;line-height:1;margin:45px 0 20px;font-weight:200;color:#a27693;letter-spacing:-.1em}.service-card p{color:#b6b5bd;font-size:.92rem;margin:14px 0 27px}.service-card-bottom{display:flex;justify-content:space-between;align-items:center}.service-card-bottom .round-arrow{display:grid;place-items:center;width:42px;height:42px;border:1px solid #777782;border-radius:50%;font-size:1.3rem;color:var(--accent)}.separator-photo{position:relative;min-height:370px;background:#131318;overflow:hidden}.separator-photo img{width:100%;height:370px;object-fit:cover;object-position:center 44%;filter:brightness(.52) saturate(1.05)}.separator-photo .overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:40px}.separator-photo h2{max-width:900px;line-height:1.05;text-transform:uppercase;font-size:clamp(2.4rem,5.4vw,5.7rem)}.separator-photo .eyebrow{margin-bottom:22px}.about{background:var(--paper);color:var(--ink);padding:112px 0}.about-layout{display:grid;grid-template-columns:.83fr 1.17fr;gap:94px;align-items:center}.about-image{height:670px;border-radius:var(--r);overflow:hidden;position:relative;background:#313139}.about-image img{height:100%;width:100%;object-fit:cover;object-position:center 32%}.about-image .photo-badge{position:absolute;bottom:23px;left:23px;padding:12px 18px;background:var(--brand-strong);border-radius:50px;color:#fff;font-size:.74rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.about .eyebrow{color:#8c184e}.about h2{margin:25px 0}.about h2 em{font-style:normal;color:#9c1857}.about p{color:#57565d;font-size:1.06rem;margin-top:20px}.about-bullets{margin:35px 0 31px;padding:0;list-style:none;display:grid;gap:14px}.about-bullets li{display:flex;align-items:center;gap:13px;font-weight:720}.about-bullets li:before{content:'✓';color:white;background:var(--brand-strong);border-radius:50%;font-weight:950;display:grid;place-items:center;width:25px;height:25px;flex:none}.about .pill{background:var(--ink);color:white;border-color:var(--ink)}.about .pill:hover{background:var(--brand-hover)}.value-section{padding:108px 0}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:45px}.value{border-top:1px solid rgba(255,255,255,.35);padding-top:27px}.value i{font-size:2.15rem;font-style:normal;color:var(--accent)}.value h3{margin:16px 0 13px}.value p{color:#aeadb7;font-size:.96rem}.equipment{background:#1c111a;padding:110px 0}.equipment-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.equipment-photo{height:560px;border-radius:var(--r);overflow:hidden;position:relative}.equipment-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 55%}.equipment-photo .glass-note{position:absolute;bottom:18px;left:18px;right:18px;background:rgba(20,20,26,.82);backdrop-filter:blur(10px);padding:18px 21px;border-radius:12px;display:flex;justify-content:space-between;align-items:center;gap:15px;font-weight:750}.equipment-photo .glass-note strong{color:var(--accent);font-size:.9rem}.equipment .eyebrow{margin-bottom:25px}.equipment p{color:#c3c1c9;margin:25px 0}.equipment-tags{display:flex;gap:9px;flex-wrap:wrap;margin:30px 0}.equipment-tags span{border:1px solid #6a6771;border-radius:100px;padding:7px 12px;font-size:.76rem;color:#ecebf2;font-weight:700}.testimonials{background:var(--paper);color:var(--ink);padding:114px 0}.testimonials .eyebrow{color:#8c184e}.testimonials .section-top p{color:#5b5a61}.reviews-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:19px}.review{background:white;border-radius:var(--r);padding:36px;border:1px solid #e8e7e1;display:flex;flex-direction:column;justify-content:space-between;min-height:330px}.review .review-quote{font-weight:720;font-size:clamp(1.12rem,2vw,1.55rem);letter-spacing:-.025em;line-height:1.47}.review .quote-mark{font-size:4.5rem;line-height:.8;color:#9d1554;font-weight:900;margin-bottom:22px}.review-name{display:block;margin-top:32px;font-weight:850;font-size:.93rem}.review-job{display:block;color:#65636c;font-size:.84rem}.social{padding:95px 0;background:var(--bg)}.social-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.social-photo{height:420px;overflow:hidden;border-radius:var(--r)}.social-photo img{height:100%;width:100%;object-fit:cover;object-position:50% 39%}.social .eyebrow{margin-bottom:25px}.social p{color:#bcbac5;margin:24px 0 30px}.faq{background:#181018;padding:90px 0}.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:85px}.faq .eyebrow{margin-bottom:20px}.faq details{border-bottom:1px solid #494950;padding:22px 0}.faq details:first-child{border-top:1px solid #494950}.faq summary{font-weight:780;cursor:pointer;list-style:none;display:flex;gap:25px;justify-content:space-between;font-size:1.02rem}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';color:var(--accent);font-size:1.4rem;line-height:1}.faq details[open] summary:after{content:'−'}.faq details p{color:#b0aeb9;margin-top:18px;font-size:.95rem}.contact{background:linear-gradient(135deg,#810c47 0%,#500d32 58%,#230c1c 100%);color:#fff;padding:110px 0 115px;position:relative;overflow:hidden}.contact:after{content:'';position:absolute;border:1px solid rgba(255,255,255,.2);width:480px;height:480px;border-radius:50%;right:-260px;top:-180px;pointer-events:none}.contact-header{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:45px}.contact-header .eyebrow{color:#ffb4d6}.contact-header h2{max-width:800px;margin-top:24px}.contact-header p{max-width:360px;line-height:1.6;font-weight:550}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:start}.contact-info{padding:20px 0}.contact-info h3{font-size:1.45rem;letter-spacing:-.02em}.mail-big{display:inline-block;margin:24px 0 40px;font-size:clamp(1.13rem,2.3vw,1.57rem);font-weight:850;border-bottom:2px solid var(--ink);overflow-wrap:anywhere}.contact-info p{font-size:.94rem;max-width:360px;color:#f0d4e4}.contact-card{background:#160f18;border-radius:var(--r);padding:38px;color:white;box-shadow:0 28px 40px rgba(27,32,0,.15)}.contact-card h3{margin-bottom:7px;letter-spacing:-.03em}.contact-card .explain{color:#b8b6bf;font-size:.85rem;margin-bottom:24px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:flex;flex-direction:column;gap:6px}.field.wide{grid-column:1/-1}.field label{font-size:.75rem;color:#d4d3da;font-weight:730}.field input,.field select,.field textarea{width:100%;min-height:47px;border:1px solid #55545d;border-radius:9px;background:#25252d;color:white;padding:12px 13px;outline:none}.field textarea{resize:vertical;min-height:93px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(129,12,71,.17)}.field input::placeholder,.field textarea::placeholder{color:#94919d}.form-footer{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:20px}.form-note{color:#afaeb9;font-size:.72rem;max-width:280px}.form-note a{text-decoration:underline}.contact-card button.pill{border:0}.site-footer{background:#0b0b0f;color:white;padding:43px 0 26px}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:start;padding-bottom:35px;border-bottom:1px solid var(--line)}.footer-nav{display:flex;flex-wrap:wrap;gap:22px;font-size:.83rem;font-weight:750;color:#c6c5c9}.footer-nav a:hover{color:var(--accent)}.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding-top:20px;font-size:.76rem;color:#87858f}.footer-bottom a{text-decoration:underline;text-underline-offset:4px}.footer-legal{display:flex;gap:21px}
/* Inner pages */
.inner-hero{padding:92px 0 75px;position:relative;overflow:hidden;background:radial-gradient(circle at 70% 55%,#361627,transparent 48%)}.breadcrumb{font-size:.78rem;color:#a6a5af;margin-bottom:42px}.breadcrumb a:hover{color:var(--accent)}.inner-hero-grid{display:grid;grid-template-columns:1fr .82fr;gap:65px;align-items:center}.inner-hero h1{font-size:clamp(3.25rem,6.5vw,6.2rem);line-height:1.03;margin:24px 0}.inner-hero p{max-width:520px;color:#ceccd3;font-size:1.1rem;margin-bottom:32px}.inner-hero-photo{height:495px;border-radius:var(--r);overflow:hidden}.inner-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 46%}.inside{padding:90px 0;background:var(--paper);color:var(--ink)}.inside .eyebrow{color:#8c184e}.inside-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.inside h2{font-size:clamp(2.2rem,4.5vw,4.15rem);margin:20px 0 25px}.inside p{color:#585660;margin:0 0 17px}.inside-list{padding:0;margin:0;list-style:none}.inside-list li{padding:20px 0;border-bottom:1px solid #d5d4d0;font-size:1rem;display:flex;align-items:flex-start;gap:15px}.inside-list li:before{content:'↗';color:#8c184e;font-size:1.2rem;font-weight:850}.inside-dark{padding:96px 0;background:#1b1119;color:white}.inside-dark .section-top p{color:#b5b2bd}.inside-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.inside-step{border:1px solid var(--line);padding:28px;border-radius:var(--r);min-height:205px}.inside-step b{display:block;color:var(--accent);font-size:.8rem;margin-bottom:35px}.inside-step h3{margin-bottom:13px}.inside-step p{font-size:.9rem;color:#b9b7c0}.inner-cta{background:var(--brand);color:#fff;padding:70px 0}.inner-cta .container{display:flex;align-items:center;justify-content:space-between;gap:26px}.inner-cta h2{max-width:720px;font-size:clamp(2.2rem,4vw,4rem)}.inner-cta .pill{background:#fff;border-color:#fff;color:var(--brand)}.tech-details{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:45px}.tech-panel{border-radius:var(--r);background:white;padding:32px;border:1px solid #e7e6e1}.tech-panel h3{margin-bottom:20px}.tech-panel ul{margin:0;padding-left:20px;line-height:2;color:#55535c}.legal-page{padding:70px 0 110px;background:var(--paper);color:var(--ink);min-height:68vh}.legal-page .container{max-width:850px}.legal-page h1{font-size:clamp(2.8rem,5vw,4.8rem);margin:15px 0 35px}.legal-page h2{font-size:1.6rem;letter-spacing:-.025em;margin:34px 0 13px}.legal-page p,.legal-page li{color:#4a4951;margin:12px 0;line-height:1.8}.legal-page a{color:#8c184e;text-decoration:underline}.legal-warning{border-left:5px solid #af8217;background:#fff3d5;padding:18px 22px;font-weight:720}.legal-todo{background:#e9e8e5;border:1px dashed #b6afb1;padding:20px;border-radius:8px;line-height:2;white-space:pre-wrap}
@media(max-width:1100px){.nav{gap:17px}.nav>a{font-size:.78rem}.hero-layout{gap:20px}.hero h1{font-size:clamp(3.3rem,7.5vw,6.7rem)}.hero-visual{height:570px}.about-layout{gap:52px}.equipment-layout{gap:45px}}
@media(max-width:850px){.container{width:min(calc(100% - 42px),var(--page))}.site-header{height:74px}.menu-toggle{display:flex}.nav{position:absolute;top:74px;left:0;right:0;padding:20px 23px 27px;background:#1b1119;border-bottom:1px solid #4c3847;display:none;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 25px 30px #0007}.nav.open{display:flex}.nav>a{padding:12px 0;font-size:.98rem}.nav .pill{margin-top:10px;text-align:center}.hero{min-height:auto;padding:60px 0 70px}.hero-layout{grid-template-columns:1fr 1fr;gap:15px}.hero-visual{height:510px}.hero-roundel{left:-42px;top:50%;width:96px;height:96px;font-size:.57rem}.hero h1{font-size:clamp(3.2rem,7vw,5rem)}.hero-description{font-size:1rem}.hero-foot{gap:10px;flex-direction:column;align-items:flex-start}.hero-foot span+span{border:0;padding:0}.service-grid{grid-template-columns:1fr 1fr}.service-card:last-child{grid-column:1/-1;min-height:260px}.about-layout{grid-template-columns:1fr 1fr;gap:35px}.about-image{height:550px}.equipment-layout,.social-layout{gap:35px}.equipment-photo{height:490px}.faq-layout{gap:35px}.contact-grid{gap:25px}.inner-hero-grid{gap:30px}.inner-hero-photo{height:470px}.inside-grid{gap:40px}.footer-top{align-items:flex-start}}
@media(max-width:650px){.container{width:min(calc(100% - 36px),var(--page))}.hero{padding:38px 0 55px}.hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:32px}.hero h1{font-size:clamp(3.2rem,14vw,5.9rem)}.hero .eyebrow{margin-bottom:21px}.hero-description{font-size:1.02rem}.hero-actions{margin-top:26px}.hero-foot{margin-top:26px;flex-direction:row;flex-wrap:wrap}.hero-foot span+span{border-left:1px solid #595962;padding-left:16px}.hero-visual{height:500px;padding:0 30px 0 33px}.hero-main-photo{inset:0 30px 0 33px}.hero-visual:before{right:0}.hero-roundel{left:0;top:34%}.hero-photo-label{right:15px;bottom:18px}.trust-items{grid-template-columns:1fr;gap:13px;padding:18px 0}.trust-items div{font-size:.78rem}.trust-items span{font-size:1.1rem}.section-top{display:block;margin-bottom:25px}.section-top h2{margin:19px 0 17px}.section-top p{font-size:.96rem}.services,.value-section,.about,.equipment,.testimonials,.social,.faq{padding:72px 0}.service-grid,.values-grid,.about-layout,.equipment-layout,.reviews-grid,.social-layout,.faq-layout,.contact-grid,.inside-grid,.inside-steps,.tech-details{grid-template-columns:1fr}.service-card,.service-card:last-child{grid-column:auto;min-height:280px}.service-card .service-symbol{margin:26px 0 10px}.separator-photo,.separator-photo img{height:300px;min-height:300px}.about-layout{gap:36px}.about-image{height:490px}.about h2{margin:20px 0}.values-grid{gap:20px;margin-top:35px}.value{padding-top:17px}.equipment-layout{gap:37px}.equipment-photo{height:480px}.testimonials .review{min-height:0;padding:30px}.social-layout{gap:32px}.social-photo{height:340px}.faq-layout{gap:24px}.contact{padding:75px 0}.contact-header{display:block}.contact-header h2{margin-bottom:20px}.contact-grid{gap:18px}.contact-info{padding:0 0 15px}.mail-big{margin:14px 0}.contact-card{padding:24px 20px}.fields{grid-template-columns:1fr}.field.wide{grid-column:auto}.footer-top{flex-direction:column}.footer-nav{gap:15px}.inner-hero{padding:45px 0 52px}.inner-hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:28px}.inner-hero h1{font-size:clamp(3.1rem,12vw,5rem)}.inner-hero-photo{height:390px}.breadcrumb{margin-bottom:29px}.inside,.inside-dark{padding:70px 0}.inside-grid{gap:26px}.inner-cta{padding:58px 0}.inner-cta .container{display:block}.inner-cta h2{margin-bottom:28px}.legal-page{padding:50px 0 90px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.faq details a{text-decoration:underline;text-underline-offset:3px}


/* v1.1 · ORIGINAL DJ WHISTLE BRAND · bordeaux #810C47, anthracite, white */
.logo { display: inline-flex; align-items: center; line-height: 1; width: 105px; min-width: 105px; }
.logo .logo-image { display: block; width: 100%; height: auto; max-height: 76px; object-fit: contain; object-position: left center; }
.site-header { height: 94px; }
.site-header .container { gap: 22px; }
.site-footer .logo { width: 135px; min-width: 135px; }
.site-footer .logo .logo-image { max-height: 102px; }
.about-finish { display: flex; align-items: center; flex-wrap: wrap; gap: 20px 26px; margin-top: 6px; }
.about-signature { width: 136px; height: auto; object-fit: contain; flex: none; }
.about .eyebrow, .testimonials .eyebrow, .inside .eyebrow { color:var(--brand); }
.about h2 em { color:var(--brand); }
.about .pill, .contact-card .pill, .inner-cta .pill { flex-shrink: 0; }
.about-bullets li:before { color: #fff; background:var(--brand-strong); }
.contact-header h2 u { text-decoration-color: #ff8ec6; text-decoration-thickness: .07em; text-underline-offset: .1em; }
.contact-header p { color: #f5d7e8; }
.contact .mail-big { color:#fff; text-decoration-color:rgba(255,255,255,.5); overflow-wrap:anywhere; }
.contact-card { border: 1px solid rgba(255,255,255,.12); box-shadow: 0 28px 40px rgba(12,2,8,.25); }
.contact .pill { background:#bb256d; border-color:#bb256d; color:white; }
.contact .pill:hover { background:#db408c; border-color:#db408c; }
.inner-cta .pill:hover { background:#fce3ee; border-color:#fce3ee; color:var(--brand); }
.hero { background:radial-gradient(ellipse 73% 88% at 98% 39%,rgba(129,12,71,.33) 0%,transparent 63%),var(--bg); }
.hero-visual:before { border-color:rgba(240,128,180,.72); }
.hero-roundel { background:#291a26; border-color:#654059; }
.hero h1 .outline { -webkit-text-stroke:1.6px rgba(255,235,246,.87); }
.service-card:after { background:radial-gradient(circle,rgba(151,24,88,.26),transparent 66%); }
::selection { background:#a51657; color:#fff; }
@media(max-width:850px) { .site-header{height:82px} .nav{top:82px} .logo { width:88px;min-width:88px; } .logo .logo-image{max-height:66px} }
@media(max-width:650px) { .site-header{height:78px} .nav{top:78px} .logo {width:82px;min-width:82px} .logo .logo-image{max-height:61px} .about-signature {width:118px} .site-footer .logo{width:132px;min-width:132px} }

.legal-page .legal-date{margin-top:34px;color:#78717a;font-size:.88rem}
.legal-page p{max-width:76ch}
.legal-page a:hover{text-decoration-thickness:2px}


/* v1.4 · Photographic event service cards and matching service landing pages */
.service-card--photo{min-height:440px;padding:28px;isolation:isolate;background:#241924;border-color:rgba(255,255,255,.15);}
.service-card--photo .service-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;z-index:0;transition:transform .45s ease;filter:saturate(.96);}
.service-card--photo::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(11,7,12,.63) 0%,rgba(11,7,12,.10) 35%,rgba(11,7,12,.77) 69%,rgba(11,7,12,.98) 100%);pointer-events:none;}
.service-card--photo::after{z-index:1;}
.service-card--photo>.number,.service-card--photo>div,.service-card--photo>.service-card-bottom{position:relative;z-index:2;}
.service-card--photo>.number{color:#fff;background:rgba(21,7,17,.52);padding:7px 12px;border:1px solid rgba(255,255,255,.21);border-radius:100px;align-self:flex-start;}
.service-card--photo h3{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.30);}
.service-card--photo p{color:#f2e7ee;margin-bottom:24px;}
.service-card--photo .round-arrow{border-color:rgba(255,255,255,.6);color:#fff;}
.service-card--photo:hover .service-bg{transform:scale(1.055);}
.service-card--photo:hover{background:#241924;}
.service-card--photo .ai-photo-label{position:absolute;right:17px;top:24px;z-index:2;font-size:.61rem;line-height:1.15;font-weight:600;letter-spacing:.02em;text-align:right;color:rgba(255,255,255,.85);text-shadow:0 1px 5px #000;max-width:140px;}
.inner-hero-photo{position:relative;}
.inner-hero-photo .ai-hero-caption{position:absolute;bottom:12px;right:14px;padding:5px 9px;border-radius:100px;background:rgba(13,10,14,.63);color:#f4eaf0;font-size:.65rem;line-height:1.4;font-weight:600;}
@media(max-width:850px){.service-card--photo:last-child{min-height:440px;}}
@media(max-width:650px){.service-card--photo,.service-card--photo:last-child{min-height:390px;}.service-card--photo .ai-photo-label{font-size:.56rem;right:14px;top:25px;max-width:126px;}}

/* v1.5: Clickable equipment image and call-to-action */
.equipment-photo{display:block;color:inherit;text-decoration:none;cursor:pointer}
.equipment-photo:hover .glass-note strong,.equipment-photo:focus-visible .glass-note strong{text-decoration:underline;text-underline-offset:3px}
.equipment-photo:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
