/* ==========================================================
   GGR REVIEW V2
   Premium Review UI
   Works with existing HTML
   ========================================================== */

:root{

--ggr-primary:#2563eb;
--ggr-secondary:#0f172a;
--ggr-orange:#ff6b00;
--ggr-success:#16a34a;

--ggr-bg:#ffffff;
--ggr-bg2:#f8fafc;

--ggr-border:#e5e7eb;

--ggr-text:#1f2937;
--ggr-text-light:#6b7280;

--ggr-radius:18px;

--ggr-shadow:
0 10px 40px rgba(15,23,42,.06);

--ggr-shadow-hover:
0 20px 55px rgba(37,99,235,.15);

}


/* ==========================================================
SECTION
========================================================== */

.ggr-review-section,
.ggr-review-summary,
.ggr-review-hero{

margin:70px 0;

}

.ggr-review-section{

position:relative;

}


/* ==========================================================
HEADINGS
========================================================== */


.ggr-review-section h2,
.ggr-review-summary h2

{

font-size:34px;

font-weight:800;

line-height:1.25;

margin-bottom:20px;

color:#0f172a !important;

position:relative;

padding-left:22px;

}

.ggr-review-transition h2{
   font-size:34px;

   font-weight:800;

   line-height:1.25;

   margin-bottom:20px;

   color:#0f172a !important;

   position:relative;

   color:#fff !important;
}

.ggr-review-section p{

font-size:18px;

line-height:1.9;

color:#475569;

margin-bottom:30px;

}


/* ==========================================================
HERO
========================================================== */

.ggr-review-hero{

background:#fff;

border-radius:24px;

padding:50px;

box-shadow:var(--ggr-shadow);

border:1px solid #eef2f7;

position:relative;

overflow:hidden;

}

.ggr-review-hero:before{

content:"";

position:absolute;

right:-120px;
top:-120px;

width:280px;
height:280px;

border-radius:50%;

background:rgba(37,99,235,.05);

}

.ggr-review-badge{

display:inline-flex;

align-items:center;

gap:10px;

padding:12px 20px;

background:#eff6ff;

border:1px solid #bfdbfe;

border-radius:100px;

font-size:14px;

font-weight:700;

color:#2563eb;

margin-bottom:30px;

animation:floatBadge 3s ease-in-out infinite;

}

@keyframes floatBadge{

50%{

transform:translateY(-4px);

}

}

.ggr-review-hero h1{

line-height:1.15;

font-weight:900;

margin-bottom:25px;

color:#0f172a;

letter-spacing:-1px;

}

.ggr-review-subtitle{

font-size:22px;

line-height:1.8;

color:#475569;

max-width:900px;

margin-bottom:40px;

}


/* ==========================================================
META
========================================================== */

.ggr-review-meta{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:18px;

}

.ggr-meta-item{

background:#fff;

border:1px solid #e5e7eb;

border-radius:16px;

padding:18px 22px;

transition:.35s;

}

.ggr-meta-item:hover{

transform:translateY(-6px);

box-shadow:var(--ggr-shadow-hover);

}

.ggr-meta-item span{

display:inline-block;

width:150px;

font-weight:600;

color:#64748b;

}

.ggr-meta-item strong{

font-size:17px;

color:#0f172a;

}


/* ==========================================================
SUMMARY
========================================================== */

.ggr-summary-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:22px;

margin-top:30px;

}

.ggr-summary-card{

background:#fff;

padding:24px;

border-radius:18px;

border:1px solid #e5e7eb;

box-shadow:0 8px 25px rgba(0,0,0,.04);

transition:.35s;

position:relative;

overflow:hidden;

}

.ggr-summary-card:before{

content:"";

position:absolute;

left:0;
top:0;

width:5px;
height:100%;

background:#2563eb;

}

.ggr-summary-card:hover{

transform:translateY(-8px);

box-shadow:var(--ggr-shadow-hover);

}

.ggr-summary-card span{

display:inline-block;

width:170px;

font-weight:600;

color:#64748b;

}

.ggr-summary-card strong{

font-size:18px;

font-weight:800;

color:#0f172a;

}


/* ==========================================================
SPEC GRID
========================================================== */

.ggr-spec-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:22px;

margin-top:35px;

}

.ggr-spec-card{

background:#fff;

padding:24px;

border-radius:18px;

border:1px solid #e5e7eb;

box-shadow:0 8px 25px rgba(0,0,0,.04);

transition:.35s;

position:relative;

overflow:hidden;

}

.ggr-spec-card:before{

content:"";

position:absolute;

left:0;

top:0;

height:100%;

width:5px;

background:#ff6b00;

}

.ggr-spec-card:hover{

transform:translateY(-8px);

box-shadow:var(--ggr-shadow-hover);

}

.ggr-spec-card span{

display:inline-block;

width:180px;

font-weight:600;

color:#64748b;

}

.ggr-spec-card strong{

font-size:18px;

font-weight:800;

color:#0f172a;

}


/* ==========================================================
CHECKLIST
========================================================== */

.ggr-review-section ul{

background:#fff;

padding:35px 45px;

border-radius:22px;

border:1px solid #e5e7eb;

box-shadow:var(--ggr-shadow);

list-style:none;

}

.ggr-review-section ul li{

position:relative;

padding-left:42px;

margin:18px 0;

font-size:18px;

color:#334155;

transition:.25s;

}

.ggr-review-section ul li:hover{

transform:translateX(8px);

color:#0f172a;

}

.ggr-review-section ul li:before{

content:"✔";

position:absolute;

left:0;

top:1px;

width:26px;
height:26px;

display:flex;

align-items:center;
justify-content:center;

border-radius:50%;

background:#16a34a;

color:#fff;

font-size:13px;

font-weight:700;

}


/* ==========================================================
IMAGE
========================================================== */

.ggr-review-image{

margin:55px 0;

text-align:center;

}

.ggr-review-image img{

width:100%;

border-radius:20px;

box-shadow:

0 25px 70px rgba(0,0,0,.12);

transition:.45s;

}

.ggr-review-image img:hover{

transform:translateY(-8px) scale(1.01);

}

.ggr-review-image figcaption{

margin-top:18px;

font-size:16px;

color:#64748b;

font-style:italic;

}


/* ==========================================================
ANIMATION
========================================================== */

.ggr-review-hero,
.ggr-summary-card,
.ggr-spec-card,
.ggr-review-image img{

animation:fadeUp .8s ease both;

}

@keyframes fadeUp{

from{

opacity:0;

transform:translateY(40px);

}

to{

opacity:1;

transform:none;

}

}


/* ==========================================================
RESPONSIVE
========================================================== */

@media(max-width:992px){

.ggr-review-hero{

padding:35px;

}

.ggr-review-hero h1{

font-size:40px;

}

.ggr-review-subtitle{

font-size:19px;

}

.ggr-summary-grid,
.ggr-spec-grid,
.ggr-review-meta{

grid-template-columns:1fr;

}

.ggr-summary-card span,
.ggr-spec-card span,
.ggr-meta-item span{

display:block;

width:auto;

margin-bottom:8px;

}

}


@media(max-width:768px){

.ggr-review-hero{

padding:25px;

border-radius:16px;

}

.ggr-review-hero h1{

font-size:32px;

}

.ggr-review-subtitle{

font-size:18px;

line-height:1.7;

}

.ggr-review-section h2,
.ggr-review-summary h2{

font-size:28px;

}

.ggr-review-section ul{

padding:25px;

}

.ggr-review-section ul li{

font-size:16px;

}

.ggr-summary-card,
.ggr-spec-card{

padding:20px;

}

}

/* ==========================================================
   GGR REVIEW CONTENT SECTION
========================================================== */

.ggr-review-section{
    position:relative;
    margin:48px 0;
    padding:42px 48px;
    background:#ffffff;
    border:1px solid #e8edf5;
    border-radius:22px;
    box-shadow:
        0 1px 3px rgba(16,24,40,.04),
        0 18px 50px rgba(16,24,40,.06);
    transition:all .35s ease;
}

.ggr-review-section:hover{
    transform:translateY(-3px);
    box-shadow:
        0 8px 24px rgba(15,23,42,.08),
        0 30px 70px rgba(15,23,42,.10);
}


/* Left Accent */

.ggr-review-section::before{
    content:"";
    position:absolute;
    left:0;
    top:32px;
    bottom:32px;
    width:5px;
    border-radius:20px;
    background:linear-gradient(
        180deg,
        #0ea5e9,
        #2563eb
    );
}


/* ==========================================================
   HEADINGS
========================================================== */

.ggr-review-section h2{
    margin:0 0 26px;
    font-size:2rem;
    line-height:1.25;
    font-weight:800;
    color:#0f172a;
    letter-spacing:-0.03em;
}

.ggr-review-section h3{
    margin:0 0 16px;
    font-size:1.2rem;
    font-weight:700;
    color:#111827;
}


/* ==========================================================
   PARAGRAPHS
========================================================== */

.ggr-review-section p{
    margin:0 0 22px;
    color:#475569;
    font-size:1.08rem;
    line-height:1.95;
    text-align:justify;
}

.ggr-review-section p:last-child{
    margin-bottom:0;
}


/* ==========================================================
   BOLD TEXT
========================================================== */

.ggr-review-section strong{
    color:#0f172a;
    font-weight:700;
}


/* ==========================================================
   HIGHLIGHT BOX
========================================================== */

.ggr-review-highlight{

    margin-top:40px;

    padding:28px 32px;

    background:linear-gradient(
        135deg,
        #eff8ff,
        #f8fbff
    );

    border:1px solid #cfe7ff;

    border-left:6px solid #0ea5e9;

    border-radius:18px;

    box-shadow:
        0 8px 20px rgba(14,165,233,.08);

}

.ggr-review-highlight h3{

    display:flex;
    align-items:center;
    gap:10px;

    margin-bottom:14px;

    color:#0369a1;

    font-size:1.15rem;

}

.ggr-review-highlight p{

    margin:0;

    color:#334155;

    font-size:1.02rem;

    line-height:1.9;

}


/* ==========================================================
   TRANSITION SECTION
========================================================== */

.ggr-review-transition{

    margin:60px 0;

    padding:38px 42px;

    text-align:center;

    border-radius:22px;

    background:
        linear-gradient(
            135deg,
            #0f172a,
            #1e293b
        );

    color:#fff;

    overflow:hidden;

    position:relative;

}

.ggr-review-transition::before{

    content:"";

    position:absolute;

    width:240px;
    height:240px;

    right:-80px;
    top:-80px;

    border-radius:50%;

    background:rgba(255,255,255,.05);

}

.ggr-review-transition::after{

    content:"";

    position:absolute;

    width:160px;
    height:160px;

    left:-50px;
    bottom:-50px;

    border-radius:50%;

    background:rgba(255,255,255,.04);

}

.ggr-review-transition h2{

    color:#fff;

    margin-bottom:18px;

    font-size:1.9rem;

}

.ggr-review-transition p{

    max-width:850px;

    margin:0 auto;

    color:rgba(255,255,255,.88);

    font-size:1.06rem;

    line-height:1.9;

}


/* ==========================================================
   RESPONSIVE
========================================================== */

@media (max-width:768px){

.ggr-review-section{

    padding:28px 24px;

    margin:32px 0;

    border-radius:18px;

}

.ggr-review-section h2{

    font-size:1.55rem;

}

.ggr-review-section p{

    font-size:1rem;

    text-align:left;

    line-height:1.8;

}

.ggr-review-highlight{

    padding:22px;

}

.ggr-review-transition{

    padding:32px 24px;

}

.ggr-review-transition h2{

    font-size:1.5rem;

}

}
/* ==========================================================
   Laravel Deployment Section
========================================================== */

.ggr-deployment-section{

    position:relative;

    overflow:hidden;

    background:linear-gradient(
        180deg,
        #ffffff 0%,
        #fbfdff 100%
    );

    border:1px solid #e6eef8;

}

/* Top Accent */

.ggr-deployment-section::before{

    content:"";

    position:absolute;

    left:0;

    top:0;

    width:100%;

    height:4px;

    background:linear-gradient(
        90deg,
        #ef4444,
        #f97316,
        #2563eb
    );

}

/* Background Glow */

.ggr-deployment-section::after{

    content:"";

    position:absolute;

    width:380px;

    height:380px;

    right:-180px;

    top:-160px;

    border-radius:50%;

    background:radial-gradient(
        rgba(239,68,68,.07),
        transparent 70%
    );

    pointer-events:none;

}

/* ==========================================================
   Heading
========================================================== */

.ggr-deployment-section h2{

    margin-bottom:18px;

    font-size:2.15rem;

    line-height:1.2;

    font-weight:800;

    letter-spacing:-.03em;

}

/* ==========================================================
   Framework Badge
========================================================== */

.ggr-framework-badge{

    display:inline-flex;

    align-items:center;

    gap:8px;

    flex-wrap:wrap;

    margin-bottom:28px;

    padding:12px 20px;

    border-radius:999px;

    background:#fff7ed;

    border:1px solid #fed7aa;

    color:#9a3412;

    font-size:.92rem;

    font-weight:700;

    box-shadow:
        0 10px 30px rgba(249,115,22,.08);

    transition:.35s ease;

}

.ggr-framework-badge:hover{

    transform:translateY(-3px);

    box-shadow:
        0 18px 45px rgba(249,115,22,.16);

}

.ggr-framework-badge a{

    color:#dc2626;

    font-weight:800;

    text-decoration:none;

    transition:.25s;

}

.ggr-framework-badge a:hover{

    color:#b91c1c;

    text-decoration:underline;

}

/* ==========================================================
   Paragraphs
========================================================== */

.ggr-deployment-section p{

    color:#475569;

    line-height:1.95;

    font-size:1.06rem;

    text-align:justify;

}

.ggr-deployment-section strong{

    color:#111827;

}

/* ==========================================================
   Honest Observation
========================================================== */

.ggr-deployment-highlight{

    margin-top:40px;

    position:relative;

    overflow:hidden;

    background:linear-gradient(
        135deg,
        #fff7ed,
        #ffffff
    );

    border:1px solid #fed7aa;

    border-left:6px solid #f97316;

    border-radius:18px;

    padding:30px;

    box-shadow:
        0 15px 40px rgba(249,115,22,.08);

    transition:.35s;

}

.ggr-deployment-highlight:hover{

    transform:translateY(-4px);

    box-shadow:
        0 25px 55px rgba(249,115,22,.14);

}

.ggr-deployment-highlight::before{

    content:"💡";

    position:absolute;

    right:22px;

    top:18px;

    font-size:2rem;

    opacity:.08;

}

.ggr-deployment-highlight h3{

    margin-bottom:16px;

    color:#c2410c;

    font-size:1.18rem;

}

/* ==========================================================
   Reading Progress Accent
========================================================== */

.ggr-deployment-section{

    transition:.35s ease;

}

.ggr-deployment-section:hover{

    transform:translateY(-4px);

    box-shadow:
        0 22px 55px rgba(15,23,42,.08);

}

/* ==========================================================
   Links
========================================================== */

.ggr-deployment-section a{

    transition:.25s;

}

.ggr-deployment-section a:hover{

    opacity:.9;

}

/* ==========================================================
   Transition Block
========================================================== */

.ggr-review-transition{

    position:relative;

    overflow:hidden;

}

.ggr-review-transition::after{

    content:"";

    position:absolute;

    left:50%;

    top:-100px;

    width:220px;

    height:220px;

    transform:translateX(-50%);

    border-radius:50%;

    background:radial-gradient(
        rgba(255,255,255,.08),
        transparent 70%
    );

}

/* ==========================================================
   Responsive
========================================================== */

@media (max-width:992px){

.ggr-deployment-section h2{

    font-size:1.8rem;

}

.ggr-framework-badge{

    font-size:.88rem;

}

}

@media (max-width:768px){

.ggr-deployment-section{

    padding:28px 22px;

}

.ggr-deployment-section h2{

    font-size:1.55rem;

}

.ggr-framework-badge{

    display:flex;

    width:100%;

    justify-content:center;

    text-align:center;

    line-height:1.7;

    padding:14px 16px;

}

.ggr-deployment-section p{

    text-align:left;

    font-size:1rem;

}

.ggr-deployment-highlight{

    padding:24px;

}

}

@media (max-width:480px){

.ggr-framework-badge{

    font-size:.82rem;

}

.ggr-deployment-section h2{

    font-size:1.35rem;

}

.ggr-deployment-highlight h3{

    font-size:1.05rem;

}

}
/* ==========================================================
   GGR PERFORMANCE / PROS-CONS / VERDICT
   ==========================================================*/

.ggr-review-section{
    position:relative;
}

/*----------------------------------
Performance Summary
----------------------------------*/

.ggr-review-highlight{
    position:relative;
    margin:35px 0;
    padding:30px;
    border-radius:18px;
    background:#fbfcfe;
    border:1px solid #e7edf5;
    overflow:hidden;
    transition:.35s ease;
}

.ggr-review-highlight::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:5px;
    height:100%;
    background:linear-gradient(180deg,#2563eb,#60a5fa);
}

.ggr-review-highlight:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 40px rgba(15,23,42,.08);
}

.ggr-review-highlight h3{
    margin:0 0 18px;
    font-size:1.2rem;
    color:#0f172a;
}

.ggr-review-highlight ul{
    margin:0;
    padding-left:22px;
}

.ggr-review-highlight li{
    margin-bottom:12px;
    color:#475569;
    line-height:1.8;
}

/*----------------------------------
Pros & Cons
----------------------------------*/

.ggr-pros-cons{

    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:28px;
    margin:45px 0;

}

.ggr-pros,
.ggr-cons{

    background:#fff;
    border:1px solid #e8eef5;
    border-radius:20px;
    padding:28px;
    transition:.35s ease;
    position:relative;
    overflow:hidden;

}

.ggr-pros:hover,
.ggr-cons:hover{

    transform:translateY(-5px);
    box-shadow:0 22px 50px rgba(15,23,42,.08);

}

.ggr-pros::before{

    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:#22c55e;

}

.ggr-cons::before{

    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    background:#ef4444;

}

.ggr-pros h3,
.ggr-cons h3{

    margin-bottom:18px;
    font-size:1.15rem;
    color:#111827;

}

.ggr-pros ul,
.ggr-cons ul{

    padding-left:22px;
    margin:0;

}

.ggr-pros li,
.ggr-cons li{

    margin-bottom:13px;
    line-height:1.8;
    color:#475569;

}

/*----------------------------------
Affiliate Button
----------------------------------*/

.ggr-affiliate-btn{

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    padding:15px 34px;

    border-radius:999px;

    background:linear-gradient(135deg,#2563eb,#3b82f6);

    color:#fff!important;

    font-weight:700;

    text-decoration:none;

    transition:.35s ease;

    box-shadow:0 12px 35px rgba(37,99,235,.25);

}

.ggr-affiliate-btn:hover{

    transform:translateY(-3px);

    box-shadow:0 20px 45px rgba(37,99,235,.35);

    color:#fff!important;

}

/*----------------------------------
Verdict Section
----------------------------------*/

.ggr-review-section h2{

    scroll-margin-top:90px;

}

.ggr-review-section p{

    color:#475569;
    line-height:1.9;

}

/*----------------------------------
Responsive
----------------------------------*/

@media(max-width:768px){

.ggr-pros-cons{

grid-template-columns:1fr;

}

.ggr-review-highlight{

padding:22px;

}

.ggr-pros,
.ggr-cons{

padding:22px;

}

.ggr-affiliate-btn{

width:100%;
padding:16px;

}

}