/* HPB Custom Icons - Premium thin-line SVG icons for photography */

[class^="hpb-icon-"],
[class*=" hpb-icon-"] {
    display: inline-block;
    width: 1em;
    height: 1em;
    vertical-align: -0.125em;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Camera - Elegant thin-line camera */
.hpb-icon-camera {
    background: none;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 14a3 3 0 0 1 3-3h5.5l3-4h17l3 4H41a3 3 0 0 1 3 3v22a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3V14z'/%3E%3Ccircle cx='24' cy='24' r='8'/%3E%3Ccircle cx='24' cy='24' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 14a3 3 0 0 1 3-3h5.5l3-4h17l3 4H41a3 3 0 0 1 3 3v22a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3V14z'/%3E%3Ccircle cx='24' cy='24' r='8'/%3E%3Ccircle cx='24' cy='24' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Camera Retro - Vintage camera with detail */
.hpb-icon-camera-retro {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='12' width='40' height='28' rx='3'/%3E%3Cpath d='M16 12V8h16v4'/%3E%3Ccircle cx='24' cy='26' r='9'/%3E%3Ccircle cx='24' cy='26' r='5'/%3E%3Ccircle cx='24' cy='26' r='1.5'/%3E%3Ccircle cx='37' cy='18' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='12' width='40' height='28' rx='3'/%3E%3Cpath d='M16 12V8h16v4'/%3E%3Ccircle cx='24' cy='26' r='9'/%3E%3Ccircle cx='24' cy='26' r='5'/%3E%3Ccircle cx='24' cy='26' r='1.5'/%3E%3Ccircle cx='37' cy='18' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Aperture - Camera lens aperture */
.hpb-icon-aperture {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Cpath d='M28.5 7.8L20 24'/%3E%3Cpath d='M41.6 16L21 18'/%3E%3Cpath d='M37.2 36.2L25 18'/%3E%3Cpath d='M19.5 40.2L28 24'/%3E%3Cpath d='M6.4 32L27 30'/%3E%3Cpath d='M10.8 11.8L23 30'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Cpath d='M28.5 7.8L20 24'/%3E%3Cpath d='M41.6 16L21 18'/%3E%3Cpath d='M37.2 36.2L25 18'/%3E%3Cpath d='M19.5 40.2L28 24'/%3E%3Cpath d='M6.4 32L27 30'/%3E%3Cpath d='M10.8 11.8L23 30'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Eye - Elegant eye for "attention to detail" */
.hpb-icon-eye {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 24s7-14 20-14 20 14 20 14-7 14-20 14S4 24 4 24z'/%3E%3Ccircle cx='24' cy='24' r='6'/%3E%3Ccircle cx='24' cy='24' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 24s7-14 20-14 20 14 20 14-7 14-20 14S4 24 4 24z'/%3E%3Ccircle cx='24' cy='24' r='6'/%3E%3Ccircle cx='24' cy='24' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Clock - Elegant timepiece */
.hpb-icon-clock {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Cpath d='M24 12v12l8 5'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Cpath d='M24 12v12l8 5'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Champagne - Elegant celebration */
.hpb-icon-champagne {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4l-2 20a8 8 0 0 0 8 8h0a8 8 0 0 0 8-8L24 4'/%3E%3Cpath d='M18 32v12'/%3E%3Cpath d='M12 44h12'/%3E%3Cpath d='M10 14h16'/%3E%3Cpath d='M30 4l4 14a6 6 0 0 0 6 6'/%3E%3Cpath d='M33 8l-2 1'/%3E%3Cpath d='M36 5l-1 2'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4l-2 20a8 8 0 0 0 8 8h0a8 8 0 0 0 8-8L24 4'/%3E%3Cpath d='M18 32v12'/%3E%3Cpath d='M12 44h12'/%3E%3Cpath d='M10 14h16'/%3E%3Cpath d='M30 4l4 14a6 6 0 0 0 6 6'/%3E%3Cpath d='M33 8l-2 1'/%3E%3Cpath d='M36 5l-1 2'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Rings - Wedding rings */
.hpb-icon-rings {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='26' r='12'/%3E%3Ccircle cx='30' cy='26' r='12'/%3E%3Cpath d='M18 8l-2-4h4l-2 4'/%3E%3Cpath d='M30 8l-2-4h4l-2 4'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='26' r='12'/%3E%3Ccircle cx='30' cy='26' r='12'/%3E%3Cpath d='M18 8l-2-4h4l-2 4'/%3E%3Cpath d='M30 8l-2-4h4l-2 4'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Portrait - Person frame */
.hpb-icon-portrait {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='4' width='36' height='40' rx='2'/%3E%3Ccircle cx='24' cy='20' r='7'/%3E%3Cpath d='M13 40c0-6 5-10 11-10s11 4 11 10'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='4' width='36' height='40' rx='2'/%3E%3Ccircle cx='24' cy='20' r='7'/%3E%3Cpath d='M13 40c0-6 5-10 11-10s11 4 11 10'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Briefcase - Professional/LinkedIn */
.hpb-icon-briefcase {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='14' width='40' height='26' rx='3'/%3E%3Cpath d='M16 14V10a4 4 0 0 1 4-4h8a4 4 0 0 1 4 4v4'/%3E%3Cpath d='M4 26h40'/%3E%3Cpath d='M20 26v4h8v-4'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='14' width='40' height='26' rx='3'/%3E%3Cpath d='M16 14V10a4 4 0 0 1 4-4h8a4 4 0 0 1 4 4v4'/%3E%3Cpath d='M4 26h40'/%3E%3Cpath d='M20 26v4h8v-4'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Family - People group */
.hpb-icon-family {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='12' r='5'/%3E%3Cpath d='M16 40v-8a8 8 0 0 1 16 0v8'/%3E%3Ccircle cx='10' cy='16' r='4'/%3E%3Cpath d='M4 40v-6a6 6 0 0 1 8-5.6'/%3E%3Ccircle cx='38' cy='16' r='4'/%3E%3Cpath d='M44 40v-6a6 6 0 0 0-8-5.6'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='12' r='5'/%3E%3Cpath d='M16 40v-8a8 8 0 0 1 16 0v8'/%3E%3Ccircle cx='10' cy='16' r='4'/%3E%3Cpath d='M4 40v-6a6 6 0 0 1 8-5.6'/%3E%3Ccircle cx='38' cy='16' r='4'/%3E%3Cpath d='M44 40v-6a6 6 0 0 0-8-5.6'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Building - Corporate/firm */
.hpb-icon-building {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='6' width='20' height='38' rx='1'/%3E%3Cpath d='M28 20h12v24H28'/%3E%3Cpath d='M14 12h8M14 18h8M14 24h8M14 30h8'/%3E%3Cpath d='M33 26h4M33 32h4'/%3E%3Cpath d='M18 38v6h-4v-6'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='6' width='20' height='38' rx='1'/%3E%3Cpath d='M28 20h12v24H28'/%3E%3Cpath d='M14 12h8M14 18h8M14 24h8M14 30h8'/%3E%3Cpath d='M33 26h4M33 32h4'/%3E%3Cpath d='M18 38v6h-4v-6'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Images/Gallery - Photo stack */
.hpb-icon-images {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='10' width='32' height='28' rx='2'/%3E%3Cpath d='M42 14v22a2 2 0 0 1-2 2H14'/%3E%3Ccircle cx='16' cy='20' r='3'/%3E%3Cpath d='M6 32l8-8 6 6 6-6 12 8'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='10' width='32' height='28' rx='2'/%3E%3Cpath d='M42 14v22a2 2 0 0 1-2 2H14'/%3E%3Ccircle cx='16' cy='20' r='3'/%3E%3Cpath d='M6 32l8-8 6 6 6-6 12 8'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Smile/Happy - Happy client */
.hpb-icon-smile {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Cpath d='M16 28s3 6 8 6 8-6 8-6'/%3E%3Ccircle cx='17' cy='19' r='1.5' fill='currentColor' stroke='none'/%3E%3Ccircle cx='31' cy='19' r='1.5' fill='currentColor' stroke='none'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Cpath d='M16 28s3 6 8 6 8-6 8-6'/%3E%3Ccircle cx='17' cy='19' r='1.5' fill='currentColor' stroke='none'/%3E%3Ccircle cx='31' cy='19' r='1.5' fill='currentColor' stroke='none'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}

/* Heart - Love/weddings */
.hpb-icon-heart {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 42S4 28 4 17a10 10 0 0 1 20-1 10 10 0 0 1 20 1c0 11-20 25-20 25z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='currentColor' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 42S4 28 4 17a10 10 0 0 1 20-1 10 10 0 0 1 20 1c0 11-20 25-20 25z'/%3E%3C/svg%3E") center/contain no-repeat;
    background-color: currentColor;
}


/* =========================================================
   ELEMENTOR SVG ICON OVERRIDES
   Replace generic FA solid SVGs with premium thin-line icons.
   Elementor renders icons as inline SVGs with class pattern:
   <svg class="e-font-icon-svg e-fas-camera-retro">
   We hide the SVG and show our icon via ::after on the parent.
   ========================================================= */

/* --- Hide original SVGs inside replaced icon containers --- */
.elementor-icon:has(.e-fas-camera-retro) > svg,
.elementor-icon:has(.e-fas-eye) > svg,
.elementor-icon:has(.e-fas-clock) > svg,
.elementor-icon:has(.e-fas-glass-cheers) > svg,
.elementor-icon:has(.e-fas-ring) > svg,
.elementor-icon:has(.e-fas-portrait) > svg,
.elementor-icon:has(.e-fab-linkedin) > svg,
.elementor-icon:has(.e-fas-users) > svg,
.elementor-icon:has(.e-fas-building) > svg,
.elementor-icon:has(.e-fas-camera) > svg,
.elementor-icon:has(.e-fas-images) > svg,
.elementor-icon:has(.e-fas-smile) > svg,
.elementor-icon:has(.e-fas-heart) > svg {
    display: none !important;
}

/* --- Shared ::after properties for replacement icons --- */
.elementor-icon:has(.e-fas-camera-retro)::after,
.elementor-icon:has(.e-fas-eye)::after,
.elementor-icon:has(.e-fas-clock)::after,
.elementor-icon:has(.e-fas-glass-cheers)::after,
.elementor-icon:has(.e-fas-ring)::after,
.elementor-icon:has(.e-fas-portrait)::after,
.elementor-icon:has(.e-fab-linkedin)::after,
.elementor-icon:has(.e-fas-users)::after,
.elementor-icon:has(.e-fas-building)::after,
.elementor-icon:has(.e-fas-camera)::after,
.elementor-icon:has(.e-fas-images)::after,
.elementor-icon:has(.e-fas-smile)::after,
.elementor-icon:has(.e-fas-heart)::after {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1em;
    background-color: currentColor;
}

/* --- Individual icon masks --- */

/* Camera Retro → Professionelt udstyr */
.elementor-icon:has(.e-fas-camera-retro)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='12' width='40' height='28' rx='3'/%3E%3Cpath d='M16 12V8h16v4'/%3E%3Ccircle cx='24' cy='26' r='9'/%3E%3Ccircle cx='24' cy='26' r='5'/%3E%3Ccircle cx='24' cy='26' r='1.5'/%3E%3Ccircle cx='37' cy='18' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='12' width='40' height='28' rx='3'/%3E%3Cpath d='M16 12V8h16v4'/%3E%3Ccircle cx='24' cy='26' r='9'/%3E%3Ccircle cx='24' cy='26' r='5'/%3E%3Ccircle cx='24' cy='26' r='1.5'/%3E%3Ccircle cx='37' cy='18' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Eye → Skarpt oje for detaljen */
.elementor-icon:has(.e-fas-eye)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 24s7-14 20-14 20 14 20 14-7 14-20 14S4 24 4 24z'/%3E%3Ccircle cx='24' cy='24' r='6'/%3E%3Ccircle cx='24' cy='24' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 24s7-14 20-14 20 14 20 14-7 14-20 14S4 24 4 24z'/%3E%3Ccircle cx='24' cy='24' r='6'/%3E%3Ccircle cx='24' cy='24' r='2'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Clock → Over 20 aars erfaring */
.elementor-icon:has(.e-fas-clock)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Cpath d='M24 12v12l8 5'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Cpath d='M24 12v12l8 5'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Glass Cheers → Event fotografering */
.elementor-icon:has(.e-fas-glass-cheers)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4l-2 20a8 8 0 0 0 8 8h0a8 8 0 0 0 8-8L24 4'/%3E%3Cpath d='M18 32v12'/%3E%3Cpath d='M12 44h12'/%3E%3Cpath d='M10 14h16'/%3E%3Cpath d='M30 4l4 14a6 6 0 0 0 6 6'/%3E%3Cpath d='M33 8l-2 1'/%3E%3Cpath d='M36 5l-1 2'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 4l-2 20a8 8 0 0 0 8 8h0a8 8 0 0 0 8-8L24 4'/%3E%3Cpath d='M18 32v12'/%3E%3Cpath d='M12 44h12'/%3E%3Cpath d='M10 14h16'/%3E%3Cpath d='M30 4l4 14a6 6 0 0 0 6 6'/%3E%3Cpath d='M33 8l-2 1'/%3E%3Cpath d='M36 5l-1 2'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Ring → Bryllupsfotografering */
.elementor-icon:has(.e-fas-ring)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='26' r='12'/%3E%3Ccircle cx='30' cy='26' r='12'/%3E%3Cpath d='M18 8l-2-4h4l-2 4'/%3E%3Cpath d='M30 8l-2-4h4l-2 4'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='18' cy='26' r='12'/%3E%3Ccircle cx='30' cy='26' r='12'/%3E%3Cpath d='M18 8l-2-4h4l-2 4'/%3E%3Cpath d='M30 8l-2-4h4l-2 4'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Portrait → Portraetfotografi */
.elementor-icon:has(.e-fas-portrait)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='4' width='36' height='40' rx='2'/%3E%3Ccircle cx='24' cy='20' r='7'/%3E%3Cpath d='M13 40c0-6 5-10 11-10s11 4 11 10'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='4' width='36' height='40' rx='2'/%3E%3Ccircle cx='24' cy='20' r='7'/%3E%3Cpath d='M13 40c0-6 5-10 11-10s11 4 11 10'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* LinkedIn → LinkedIn Portraetter (briefcase) */
.elementor-icon:has(.e-fab-linkedin)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='14' width='40' height='26' rx='3'/%3E%3Cpath d='M16 14V10a4 4 0 0 1 4-4h8a4 4 0 0 1 4 4v4'/%3E%3Cpath d='M4 26h40'/%3E%3Cpath d='M20 26v4h8v-4'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='14' width='40' height='26' rx='3'/%3E%3Cpath d='M16 14V10a4 4 0 0 1 4-4h8a4 4 0 0 1 4 4v4'/%3E%3Cpath d='M4 26h40'/%3E%3Cpath d='M20 26v4h8v-4'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Users → Familieportraetter */
.elementor-icon:has(.e-fas-users)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='12' r='5'/%3E%3Cpath d='M16 40v-8a8 8 0 0 1 16 0v8'/%3E%3Ccircle cx='10' cy='16' r='4'/%3E%3Cpath d='M4 40v-6a6 6 0 0 1 8-5.6'/%3E%3Ccircle cx='38' cy='16' r='4'/%3E%3Cpath d='M44 40v-6a6 6 0 0 0-8-5.6'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='12' r='5'/%3E%3Cpath d='M16 40v-8a8 8 0 0 1 16 0v8'/%3E%3Ccircle cx='10' cy='16' r='4'/%3E%3Cpath d='M4 40v-6a6 6 0 0 1 8-5.6'/%3E%3Ccircle cx='38' cy='16' r='4'/%3E%3Cpath d='M44 40v-6a6 6 0 0 0-8-5.6'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Building → Firmafotografering */
.elementor-icon:has(.e-fas-building)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='6' width='20' height='38' rx='1'/%3E%3Cpath d='M28 20h12v24H28'/%3E%3Cpath d='M14 12h8M14 18h8M14 24h8M14 30h8'/%3E%3Cpath d='M33 26h4M33 32h4'/%3E%3Cpath d='M18 38v6h-4v-6'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='6' width='20' height='38' rx='1'/%3E%3Cpath d='M28 20h12v24H28'/%3E%3Cpath d='M14 12h8M14 18h8M14 24h8M14 30h8'/%3E%3Cpath d='M33 26h4M33 32h4'/%3E%3Cpath d='M18 38v6h-4v-6'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Camera → Aars erfaring counter */
.elementor-icon:has(.e-fas-camera)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 14a3 3 0 0 1 3-3h5.5l3-4h17l3 4H41a3 3 0 0 1 3 3v22a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3V14z'/%3E%3Ccircle cx='24' cy='24' r='8'/%3E%3Ccircle cx='24' cy='24' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 14a3 3 0 0 1 3-3h5.5l3-4h17l3 4H41a3 3 0 0 1 3 3v22a3 3 0 0 1-3 3H7a3 3 0 0 1-3-3V14z'/%3E%3Ccircle cx='24' cy='24' r='8'/%3E%3Ccircle cx='24' cy='24' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Images → Fotosessions counter */
.elementor-icon:has(.e-fas-images)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='10' width='32' height='28' rx='2'/%3E%3Cpath d='M42 14v22a2 2 0 0 1-2 2H14'/%3E%3Ccircle cx='16' cy='20' r='3'/%3E%3Cpath d='M6 32l8-8 6 6 6-6 12 8'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='10' width='32' height='28' rx='2'/%3E%3Cpath d='M42 14v22a2 2 0 0 1-2 2H14'/%3E%3Ccircle cx='16' cy='20' r='3'/%3E%3Cpath d='M6 32l8-8 6 6 6-6 12 8'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Smile → Tilfredse kunder counter */
.elementor-icon:has(.e-fas-smile)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Cpath d='M16 28s3 6 8 6 8-6 8-6'/%3E%3Ccircle cx='17' cy='19' r='1.5' fill='%23000' stroke='none'/%3E%3Ccircle cx='31' cy='19' r='1.5' fill='%23000' stroke='none'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='24' cy='24' r='20'/%3E%3Cpath d='M16 28s3 6 8 6 8-6 8-6'/%3E%3Ccircle cx='17' cy='19' r='1.5' fill='%23000' stroke='none'/%3E%3Ccircle cx='31' cy='19' r='1.5' fill='%23000' stroke='none'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* Heart → Bryllupper counter */
.elementor-icon:has(.e-fas-heart)::after {
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 42S4 28 4 17a10 10 0 0 1 20-1 10 10 0 0 1 20 1c0 11-20 25-20 25z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 42S4 28 4 17a10 10 0 0 1 20-1 10 10 0 0 1 20 1c0 11-20 25-20 25z'/%3E%3C/svg%3E") center/contain no-repeat;
}
