    @charset "UTF-8";
    @import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
    @import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

    :root {
        --max-width: 1100px;
        --font-sans: Roboto, Open Sans, Cambria, Calibri, Arial, Verdana, system-ui, sans-serif;
        --font-serif: 'Playfair Display', Georgia, serif;
        --font-min-base-size: 14px;
        --font-max-base-size: 17px;

        --bg-color:#f8f9fa;
		--bg-muted:rgb(247, 247, 247);
		--bg-white:white;
		--bg-accent: #ffb400;
        --border: rgb(232, 232, 232);
		--gold-border: rgba(255, 180, 0, 0.30);
		
        --text-dark: #1a1814;
        --text-mid: #4a4540;
        --text-light: #7a756e;
		
        --text-accent-dark: #d99700;
        --text-accent: #ffb400;
        --text-accent-light: #fffaed;
		
		

        --white:white;
        --navy: #1a2b4a;
        --gold: #ffb400;
        --gold-dark: #d99700;
        --gold-light: #fff3cc;
        --gold-pale: #fffaed;
		--navy-charcoal: #141e29;
		--mov:#ec13f6;
		
		--box-shadow:0 4px 10px rgba(0,0,0,0.1);
        
		

    }


    /*-------------------- Typography -------------------------*/
    /* ---- Font-size ------*/

    html {
        /*font-size de baza intre 14px-17px in functie de marimea ecranului. E baza dupa care se calculeaza rem */
        font-size: clamp(var(--font-min-base-size), 1vw + 8px, var(--font-max-base-size));
        /* previne zoom automat pe iOS la rotire */
        -webkit-text-size-adjust: 100%;
        scroll-behavior: smooth;
    }

    body {
        font-family: var(--font-sans);
        font-weight: 300;
        line-height: 1.5;
    }

    /* Tipografie adaptabilă (Fluid Typography) */
    h1 {
        font-size: 2rem;
        line-height: 1.2;
        letter-spacing: -0.02em;
        margin-bottom: 1.25rem;
    }

    h2 {
        font-size: 1.625rem;
        line-height: 1.2;
        margin-top: 1.5rem;
    }

    h3 {
        font-size: 1.375rem;
    }

    h4 {
        font-size: 1.125rem;
    }

    h5,
    h6 {
        font-size: 1.125rem;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-family: var(--font-serif);
        font-weight: 400;
    }


    em {
	color:var(--text-accent);
	
	}
	
	p em {font-style:normal;}
	.fa {
		color:var(--text-accent);
		padding-right:15px;
	}	


	 /*-------------------- Main Body -------------------------*/
    #sp-main-body {
        padding: 30px 0;
    }

    @media (max-width: 576px) {
        #sp-main-body {
            padding-top: 0px;
        }
        .container,
        .container-sm {
            padding-left: 0px;
            padding-right: 0px;
        }
    }

    /*-------------------- max-width -------------------------*/
	#sp-topbar .row, 	
	#sp-header .row,
    #sp-main-body .row,	
	#sp-articole .row,
	#sp-footer .row {
        max-width: var(--max-width);
        margin: 0px auto;
    }

    /*-------------------- scheme de culoare -------------------------*/
    .schema-gold {
        background-color: var(--gold);
        color: var(--white);
    }

    .schema-gold a {
        color: var(--white);
    }
	
	.schema-dark {
        background-color: var(--navy-charcoal);
        color: var(--white);
    }
     
	.schema-dark h1,.schema-dark h2, .schema-dark h3, .schema-dark h4  {
		color: var(--white); 
	}

    body {
        color: var(--text-mid);
        background-color: var(--bg-color);
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        color: var(--text-dark);
    }


    h1 em,
    h2 em {
        color: var(--text-accent-dark);
        font-style: italic;
    }

    a {
        color: var(--text-mid);
    }

    a:hover,
    a:focus,
    a:active {
        color: var(--text-accent);
    }

    strong {
        color: var(--text-dark);
    }
	
	 /*----Typo Butoane----*/
    .btn-accent-bg {
        color:var(--white);
        background-color: var(--bg-accent);
		box-shadow:var(--box-shadow);		
        border: 1px solid var(--accent-dark);
        border-radius: 6px;
        padding: 8px 15px;
    }

    a.btn-accent-bg {
        text-decoration: none;		
    }

    a.btn-accent-bg:hover,
    a.btn-accent-bg:focus,
	a.btn-accent-bg:active
	{
        color: black;
    }

    .btn-muted {
        color: var(--text);
		background-color:var(--bg-white);
		box-shadow:var(--box-shadow);
        border: 1px solid var(--border);
        border-radius: 6px;
        padding: 8px 15px;
    }

    a.btn-muted {
        text-decoration: none;
    }

    a.btn-muted:hover,a.btn-muted:active,a.btn-muted:focus, {
        color:var(--text-accent-dark);

    }

    /*-------------------- Clase formatare -------------------------*/
    section {margin: 10px;}
    @media (max-width: 576px) {section {margin:0;}}

    .grid2,
    .grid3 {
        display: grid;
        gap: 2rem;
        padding: 15px;
    }

    .grid2 {
        grid-template-columns: repeat(2, 1fr);
    }

    .grid3 {
        grid-template-columns: repeat(3, 1fr);
    }
			
	


    @media (max-width: 768px) {
        .grid2 {
            grid-template-columns: 1fr;
        }

        .grid3 {
            grid-template-columns: 1fr;
        }
    }
	

    /*-------------------- Topbar -------------------------*/
    #sp-topbar {
        margin: 0px;
        padding: 10px 0px;
        font-size: 1rem;
    }

	#sp-topbar .row {
        padding: 0px;
    }
	
    #sp-topbar div {
        height: 100%;
        display: flex;
        align-items: flex-end;
    }

    * #sp-topbar-right {
        justify-content: right;
    }

    .topbar-contact .fas {
        padding-left: 15px;
        padding-right: 10px;
    }

   .topbar-contact .fa-phone {
    animation: glow 2s ease-in-out infinite;
/*	animation: shake 4s infinite;
	animation: pulse 1.5s ease-in-out infinite;
	animation: ring 4s ease-in-out infinite;
	animation: bounce 5s ease-in-out infinite;
*/	
}
@keyframes glow {
    0%, 100% { filter: drop-shadow(0 0 2px currentColor); }
    50%      { filter: drop-shadow(0 0 12px currentColor); }
}
/*
@keyframes shake {
    0%  { transform: rotate(0deg); }
    5%  { transform: rotate(-10deg); }
    10% { transform: rotate(10deg); }
    15% { transform: rotate(-10deg); }
    20% { transform: rotate(10deg); }
    25% { transform: rotate(-10deg); }
    30% { transform: rotate(0deg); }
    100% { transform: rotate(0deg); }
}

@keyframes pulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50%       { transform: scale(1.2); opacity: 1 }
}

@keyframes ring {
    0%        { transform: rotate(0deg); }
    5%        { transform: rotate(25deg); }
    10%       { transform: rotate(-25deg); }
    15%       { transform: rotate(15deg); }
    20%       { transform: rotate(0deg); }
    100%      { transform: rotate(0deg); }
}
@keyframes bounce {
    0%   { transform: translateY(0); }
    10%  { transform: translateY(-6px); }
    20%  { transform: translateY(0); }
    28%  { transform: translateY(-3px); }
    30%  { transform: translateY(0); }

    100% { transform: translateY(0); }
}*/


    .topbar_info {
 
    }

    .topbar_em {
        font-size: 2rem;
        font-style: normal;
        line-height: 1;
        font-weight: 200;
    }

    /*-------------------- Header -------------------------*/	
    .sp-megamenu-parent>li>a,
    .sp-megamenu-parent>li>span {
        font-size: 1rem;
        text-transform: uppercase;
    }

    .burger-icon {
        margin-left: 20px;
    }
    /*-------------------- Breadcrumbs -------------------------*/	
	.breadcrumb {
		background-color: var(--bg-color);
		font-size:0.8rem;
		boredre:1px solid red;
	}
/*-------------------- Footer (e schema-dark)-------------------------*/
    #sp-footer {
		background-color: var(--navy-charcoal);
		}
	
    .footer-card h3 {
        font-family: var(--font-sans);
		color: var(--white); 
        font-size: 1.5em;
        font-weight: 300;
        padding: 5px;
        border-bottom: 1px solid var(--gold);
        text-transform: uppercase;
        padding-bottom: 0.5em;
    }

    .footer-card h3 .fa {
        font-size: 1.5em;
        color: var(--gold);
        padding-right: 0.5em;
    }

    .footer-card a {
        color: var(--gold) !important;
    }

    .footer-card a:hover {
        padding: 3px;
        background-color: var(--gold);
        color: var(--white) !important;
        font-size: 1.2em
    }

    .footer-card .fa {
        font-size: 1.2em;
        padding-right: 1em;
    }

    .footer-card em {
        font-size: 1.3em;
        font-style: normal;
        color: var(--gold)
    }

    .footer-card-content {
        padding: 5px;
    }

    /*--------- Logoul si copyright------*/
    #sp-footer-logo {
        text-align: center;
        margin-top: 50px;
    }

    #sp-footer-logo img {
        width: 150px;
        height: auto;
        margin: 0 auto;
    }

    .sp-copyright {
        display: block;
        font-size: 10px;
        text-align: center;
        padding: 10px;
    }	

/*--------------------Pagina Acasa -------------------------*/


/*-------------------- Pagina Contact-------------------------*/		
    /* ── Map iframe wrapper ── */

	/*
	face harta fluida
    #sp-main-body:has(.cn-map-wrap),#sp-main-body:has(.cn-map-wrap) *{
    margin: 0 !important;
    padding: 0 !important;
	max-width: none!important;
}
*/
   
    /* ── Pg Contact ── */
	.cnt-page section {
		padding:15px 0;
	}
    /* ── Pg Contact - Info ── */
	.cnt-hero h1 {
	   border-bottom: 1px solid var(--border);
	   padding-bottom:20px;
	}
    .cnt-hero {
        text-align: center;
    }
    
	.cnt-btn-programare {
		padding:20px;
        display: inline-grid;
       grid-template-columns: auto auto;
	    gap:30px;
	}
	
    .cnt-info {
        background-color:var(--bg-white);
		display:grid;
        grid-template-columns: repeat(3, 1fr);
		padding-bottom:20px;	
	    box-shadow:var(--box-shadow);
    }

    @media (max-width: 768px) {
        .cnt-info {
            grid-template-columns: 1fr;
        }
    }

    .cnt-info-card {
		font-family:var(--font-sans);
        padding: 15px 15px;
        display: grid;
        grid-template-columns: 40px auto;
        align-items: start;
		gap:0;
    }

    .cnt-info-card:not(:last-child) {
        border-right: 1px solid var(--border);
    }

    @media (max-width: 768px) {
        .cnt-info-card:not(:last-child) {
            border-bottom: 1px solid var(--border);
			border-right:none;
        }
    }

    .cnt-info-icon {
		font-size:1.5rem;
		line-height:1;
		padding-right:15px;
	}
	
    .cnt-info-content h2 {
        font-family:var(--font-sans);
        font-size: 1rem;
		text-transform: uppercase;
		padding-top:0;
		margin-top:0;
    }

    .cnt-info-content a {
		color:var(--text-accent);
		} 
    .cnt-info-secondary {
		font-size:0.87em;
		
	}

    /* ──pgContact - Map iframe wrapper ── */
    .cnt-map-wrap {
        position: relative;
        border-radius: 12px;
        overflow: hidden;
        border: 1px solid var(--border);
        min-height: 320px;
        background: white;
    }

    .cnt-map-wrap iframe {
        width: 100%;
        height: 100%;
        border: 0;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
    }

    .cnt-map-overlay {
        position: absolute;
        bottom: 12px;
        left: 12px;
        right: 12px;
        display: flex;
        gap: .5rem;
        z-index: 5;
    }

    .cnt-map-btn {
        flex: 1;
        background:var(--bg-color);
        border: 1px solid  var(--border);
        border-radius: 6px;
        padding: .55rem .75rem;
        font-size: .82rem;
        font-weight: 400;
        text-decoration: none;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: .35rem;
        transition: all .15s;
        box-shadow: 0 2px 8px rgba(0, 0, 0, .08);
    }

    .cnt-map-btn:hover {
        background:var(--bg-accent);
        color:var(--white);
        text-decoration: none;
        border-color:var(--border);
    }
	
	
    /*---pgContact Orar---*/
    .cnt-schedule h2 {
    }

    
    .cnt-schedule-grid {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
		background-color:var(--bg-white);
		box-shadow:var(--box-shadow);
    }

    @media (max-width: 768px) {
        .cnt-schedule-grid {
            grid-template-columns: repeat(2, 1fr);
        }
    }

    .cnt-day {
        margin: .85rem .65rem;
        text-align: center;
        position: relative;
    }

    .cnt-day:not(:last-child) {
        border-right: 1px solid var(--border);
    }

    @media (max-width: 768px) {
        .cnt-day:nth-child(2n) {
            border-right: none;
        }

        .cnt-day:last-child {
            grid-column: 1 / -1;
        }
    }

    .cnt-day-name {
        font-size: .82rem;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: .06em;
        margin: 0 0 .35rem;
    }

    .cnt-day-hours {
        font-size: .9rem;
        font-weight: 300;
        line-height: 1.4;
    }

    .cnt-day-hours small {
        display: block;
        font-size: .8rem;
        color:#15803d;
        font-weight: 400;
        margin-top: 2px;
    }

    .cnt-day-closed {
        color:green;
        font-weight: 400;
        font-size: .82rem;
    }

    .cnt-day-today {
    }

    .cnt-day-today .cnt-day-name {
        color:var(--text-accent-dark);
    }

    .cnt-schedule-note {
        font-size: .82rem;
        color: gray;
        margin: 1rem 0 0;
        padding: .85rem 1rem;
        border-left: 3px solid red;
        border-radius: 0 5px 5px 0;
    }
	
   /* Status indicator deschis/închis */
    .cnt-status {
        display: inline-flex;
        align-items: center;
        gap: .45rem;
        padding: .35rem 1rem;
        border-radius: 3px;
        font-size: .82rem;
        font-weight: 600;
        margin-bottom: 1.5rem;
    }

    .cnt-status-open {
        background: #e7f8ee;
        color: #15803d;
    }

    .cnt-status-closed {
        background: #f5e8e8;
        color: #991b1b;
    }

    .cnt-status-dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        display: inline-block;
    }

    .cnt-status-open .cn-status-dot {
        background: #16a34a;;
        animation: cnt-pulse 2s ease-in-out infinite;
    }

    .cnt-status-closed .cnt-status-dot {
        background: #dc2626;
    }

    @keyframes cnt-pulse {

        0%,
        100% {
            opacity: 1;
        }

        50% {
            opacity: .5;
        }
    }
	
/*---pgContact Cum ajungi la cabinet---*/
.cnt-directions {
  margin-bottom: 3rem;
}
.cnt-directions h2 {

}
.cnt-directions-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1rem;
}
.cnt-direction-card {
  background: var(--bg-white);
  box-shadow:var(--box-shadow);
  border: 1px solid var(--border);
  padding: 1.25rem 1.35rem;
}
.cnt-direction-card h3 {
  font-family:var(--font-sans);	
  font-size: 1rem;
  font-weight: 400;
  text-transform: uppercase;
  margin: 0 0 .5rem;
  display: flex;
  align-items: center;
  gap: .55rem;
}

.cnt-direction-card {
  font-size: .87rem;
  margin: 0 0 .6rem;
  line-height: 1.55;
}
.cnt-direction-card p:last-child { margin-bottom: 0; }

.cnt-bus-list {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  margin: .35rem 0 0;
}

.cnt-bus-list strong {
	color:var(--text-accent-dark);
	text-transform: uppercase;
	font-weight:300;
}

.cnt-bus-pill {
  background:var(--bg-white);
  color:var(--text-dark);
  border:1px solid var(--border);
  font-size: .78rem;
  font-weight: 500;
  padding: .15rem .55rem;
  border-radius: 999px;
  font-variant-numeric: tabular-nums;
}	

/*--- (pgContact) Formular contact---*/
#cf1 {
	background-color:var(--bg-white);
    padding:15px 30px;
	border:1px solid (--border);

	overflow: hidden;
    box-shadow:var(--box-shadow);
}
/*
.cnt-form-section {
	background-color:var(--bg-white);
    padding:15px 30px;
	border:1px solid var(--border);
	box-shadow:var(--box-shadow);
	border-radius:14px;
}


.cnt-form-section *{
	background-color:var(--bg-white);
	color:red;
	}
	
.convertforms .cf-btn, .convertforms .cf-btn * {background-color:var(--bg-accent);}
*/

/*-------------------- Pagina Servicii Ecografia tiroidiana-------------------------*/
    .art_intro {}
    .art-card {
        background: var(--bg-color);
        border: 1.5px solid var(--border);
        border-radius: 12px;
        padding: 1rem 1.5rem;
        transition: border-color .25s, box-shadow .25s, transform .25s;
        cursor: default;
    }

    .art-card:hover {
        border-color: var(--gold);
        box-shadow: 0 6px 30px rgba(255, 180, 0, 0.12);
        transform: translateY(-3px);
    }

    .art-card p {
        font-size: clamp(var(--font-min-base-size), 1rem, 16px);
    }

    .art_label {
        display: inline-flex;
        align-items: center;
        gap: 10px;
        font-size: .7rem;
        font-weight: 600;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: var(--ink);
        padding: 5px 0px;
        margin-bottom: 1rem;
    }

    .art_label::before {
        content: '';
        width: 28px;
        height: 2px;
        background: var(--gold);
        border-radius: 2px;
    }

    .note-box {
        border: 1px solid var(--border);
        border-radius: 12px;
    }

    .note-info {
        font-size: 0.95rem;
        padding: 15px;
    }

    .note-warn {
        font-size: 0.95rem;
        padding: 15px;
    }



    /* ── STEP FLOW ── */
    .steps {
        display: flex;
        flex-direction: column;
        gap: 0
    }

    .step {
        display: flex;
        gap: 16px;
        align-items: flex-start;
        padding: 14px 0;
        border-bottom: 1px solid #d8eaea;
    }

    .step:last-child {
        border-bottom: none
    }

    .step-num {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background: var(--navy);
        color: white;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 700;
        font-size: .82rem;
        flex-shrink: 0;
        margin-top: 1px;
    }

    .step-content .s-title {
        font-weight: 600;
        color: var(--ink);
        margin-bottom: 3px
    }

    .step-content .s-text {
        color: var(--ink-mid);
        line-height: 1.5
    }


    /* ── FAQ STYLE ── */
    .faq-item {
        border: 1.5px solid #d8eaea;
        border-radius: 10px;
        padding: 14px 18px;
        margin-bottom: 10px;
        background: white;
    }

    .faq-q {
        font-family: 'Cormorant Garamond', serif;
        font-size: 1.05rem;
        font-weight: 600;
        color: var(--navy);
        margin-bottom: 8px;
        display: flex;
        gap: 10px;
        align-items: flex-start;
    }

    .faq-q .icon {
        color: var(--teal);
        flex-shrink: 0
    }

    .faq-a {
        font-size: .9rem;
        color: var(--gray);
        line-height: 1.6;
        padding-left: 26px
    }	
