/* Cameleon website - branding overlay on top of the MorphOS Team theme
   (morphos-theme.css). Keeps the MorphOS look (white wrapper, grey gradient
   backdrop, blue links) and adds Cameleon's chameleon-coloured accents. */

:root{
    --cam-teal:#1fae9c;
    --cam-green:#7bc043;
    --cam-blue:#3a8fd6;
    --cam-ink:#2a2a2a;
    --cam-accent:#128a7d;
}

/* The MorphOS theme forces `#content div { text-align:left }` (0,1,0,1),
   which out-specifies our class rules. Re-centre the pieces that must be
   centred with a matching #content prefix. */
#content #cam-hero,
#content #cam-hero p,
#content .cam-h2,
#content .lede,
#content .cam-shot figcaption,
#content .cam-dl .center{ text-align:center; }

/* --- navigation: logo + language switcher --------------------------------- */
#navigation .cam-brand{
    float:left; display:flex; align-items:center; gap:10px;
    height:60px; padding-left:24px; font-weight:bolder; font-size:20px;
    color:var(--cam-accent);
}
#navigation .cam-brand img{ height:38px; width:auto; mix-blend-mode:multiply; }
#navigation .cam-lang{ float:right; padding-right:16px; line-height:60px; }
#navigation .cam-lang a{
    display:inline-block; padding:2px 7px; margin:0 1px; border-radius:3px;
    font-size:13px; font-weight:bold; color:#666;
}
#navigation .cam-lang a.active{ background:var(--cam-accent); color:#fff; }
#navigation .cam-lang a:hover{ background:rgba(0,0,0,0.06); }

/* --- hero ----------------------------------------------------------------- */
#cam-hero{ text-align:center; margin:26px 0 10px; }
/* The mascot art has a white (non-transparent) background. On the light page we
   dissolve that white with `multiply`, then feather the left/right edges with a
   mask gradient so the picture melts into the page instead of sitting in a box. */
#cam-hero img.cam-logo{ width:250px; max-width:64%; height:auto; margin:0 auto 4px; display:block;
    mix-blend-mode:multiply;
    -webkit-mask-image:linear-gradient(to right, transparent 0%, #000 15%, #000 85%, transparent 100%);
    mask-image:linear-gradient(to right, transparent 0%, #000 15%, #000 85%, transparent 100%); }
#cam-hero h1{
    display:inline-block;  /* hug the text so the gradient spans it, not the whole row */
    font-size:58px; line-height:1.05; margin:2px 0 0; font-weight:bolder;
    text-transform:none;   /* brand is "Cameleon", not the theme's uppercase */
    background:linear-gradient(90deg,var(--cam-teal) 0%,var(--cam-green) 50%,var(--cam-blue) 100%);
    -webkit-background-clip:text; background-clip:text;
    -webkit-text-fill-color:transparent; color:var(--cam-teal);
}
#cam-hero .tagline{ font-size:21px; color:#333; margin:10px 0 4px; font-weight:bold; }
#cam-hero .lede{ max-width:680px; margin:6px auto 20px; color:#555; font-size:16px; line-height:1.6; }
#cam-hero .ver{ display:inline-block; margin-top:16px; color:#777; font-size:13px; letter-spacing:.5px; }

/* buttons */
.cam-btn{
    display:inline-block; margin:6px 6px 0; padding:12px 26px; border-radius:5px;
    font-weight:bold; font-size:15px; color:#fff !important; text-decoration:none;
    background:linear-gradient(180deg,var(--cam-teal),var(--cam-accent));
    box-shadow:0 2px 5px rgba(0,0,0,0.18), inset 0 1px 0 rgba(255,255,255,0.25);
    transition:transform .08s ease, box-shadow .1s ease;
}
.cam-btn:hover{ transform:translateY(-1px); box-shadow:0 4px 10px rgba(0,0,0,0.22); }
.cam-btn.ghost{ background:#fff; color:var(--cam-accent) !important;
    box-shadow:inset 0 0 0 1px rgba(18,138,125,0.5); }

/* --- section headings ----------------------------------------------------- */
.cam-h2{ text-align:center; font-size:30px; color:var(--cam-ink); margin:52px 0 6px; }
.cam-h2 small{ display:block; font-size:15px; color:#888; font-weight:normal; margin-top:6px; }
.cam-sep{ width:64px; height:4px; margin:12px auto 30px; border-radius:2px;
    background:linear-gradient(90deg,var(--cam-teal),var(--cam-green),var(--cam-blue)); }

/* --- feature grid --------------------------------------------------------- */
.cam-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin:10px 0 20px; }
.cam-card{
    background:#fff; border:1px solid rgba(0,0,0,0.09); border-radius:7px; padding:22px 20px;
    box-shadow:0 1px 3px rgba(0,0,0,0.05); transition:box-shadow .12s ease, transform .12s ease;
}
.cam-card:hover{ box-shadow:0 6px 18px rgba(0,0,0,0.10); transform:translateY(-2px); }
.cam-card .ico{ font-size:30px; line-height:1; display:block; margin-bottom:12px; }
.cam-card h3{ margin:0 0 8px; font-size:18px; color:var(--cam-accent); }
.cam-card p{ margin:0; color:#555; font-size:14.5px; line-height:1.55; }

/* --- screenshots ---------------------------------------------------------- */
.cam-shots{ display:flex; flex-direction:column; gap:34px; margin:14px 0 10px; }
.cam-shot figure{ margin:0; }
.cam-shot img{
    width:100%; height:auto; display:block; border-radius:5px;
    border:1px solid rgba(0,0,0,0.35); box-shadow:0 8px 26px rgba(0,0,0,0.18);
}
.cam-shot figcaption{ text-align:center; color:#777; font-size:14px; margin-top:12px; font-style:italic; }

/* --- manual --------------------------------------------------------------- */
.cam-manual{ text-align:left; max-width:900px; margin:6px auto 0; }
.cam-manual .sec{
    background:#fff; border:1px solid rgba(0,0,0,0.08); border-left:4px solid var(--cam-teal);
    border-radius:5px; padding:16px 22px; margin:14px 0;
}
.cam-manual .sec h3{ margin:2px 0 8px; color:var(--cam-accent); font-size:19px; }
.cam-manual .sec p{ margin:6px 0; color:#444; line-height:1.6; font-size:15px; }
.cam-manual .sec ul{ margin:8px 0 4px; padding-left:22px; color:#444; line-height:1.55; }
.cam-manual .sec li{ margin:4px 0; }
.cam-manual .sec b{ color:var(--cam-ink); }

/* --- download ------------------------------------------------------------- */
.cam-dl{ max-width:760px; margin:8px auto 0; text-align:left; }
.cam-dl .panel{ background:#fff; border:1px solid rgba(0,0,0,0.09); border-radius:7px;
    padding:22px 26px; box-shadow:0 1px 3px rgba(0,0,0,0.05); }
.cam-dl h3{ color:var(--cam-accent); margin:0 0 10px; }
.cam-dl ul{ padding-left:20px; line-height:1.7; color:#444; }
.cam-dl .note{ color:#777; font-size:13.5px; margin-top:14px; }
.cam-dl .center{ text-align:center; margin-top:22px; }

/* --- footer --------------------------------------------------------------- */
#cam-footer{ text-align:center; color:#666; font-size:14px; line-height:1.7; padding:30px 20px 10px; }
#cam-footer .ded{ font-style:italic; color:#888; margin-top:10px; }
#cam-footer .brand{ font-weight:bold; color:var(--cam-accent); }

/* --- responsive ----------------------------------------------------------- */
@media (max-width:900px){
    .cam-grid{ grid-template-columns:repeat(2,1fr); }
    #cam-hero h1{ font-size:46px; }
}
@media (max-width:600px){
    .cam-grid{ grid-template-columns:1fr; }
    #cam-hero h1{ font-size:38px; }
    #navigation .cam-brand span{ display:none; }
    #navigation .cam-lang{ float:none; display:block; text-align:center; line-height:2; }
}

/* language visibility helper (JS toggles [lang] on <html>) */
[data-i18n]{}
